RFR: 8377895: Create sizeof_auto to reduce narrowing conversions [v8]

Leo Korinth lkorinth at openjdk.org
Wed Feb 25 12:55:44 UTC 2026


On Tue, 24 Feb 2026 13:29:44 GMT, Leo Korinth <lkorinth at openjdk.org> wrote:

>> `sizeof_auto` is created so that we can reduce the amount of casting and thus make the code more type safe. The normal `sizeof` will return a `size_t` although the size of most stuff can be represented in a `uint8_t`. `sizeof_auto` will return the size in an as small unsigned type as is possible. The result is that expressions that uses `sizeof_auto` can convert to most integral types, and no explicit narrowing cast will be needed.
>> 
>> The change in `cpCache.hpp` is an example where we would get an implicit narrowing warning (if we had those enabled) using normal `sizeof`, but where `sizeof_auto` will not make the expression a `size_t` .
>
> Leo Korinth has updated the pull request incrementally with one additional commit since the last revision:
> 
>   improvements from Albert and Axel

@dean-long, @theRealAph and @kimbarrett, are you okay with the current naming for integration? I would like to integrate the change, and I am okay with you later changing the name of `sizeof_auto` and/or its "impl" template if you find a better name.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/29716#issuecomment-3959067566


More information about the hotspot-dev mailing list