RFR: 8357798: ReverseOrderListView uses Boolean boxes after JDK-8356080 [v2]
Chen Liang
liach at openjdk.org
Mon Jun 2 17:34:53 UTC 2025
On Mon, 2 Jun 2025 13:26:36 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> SonarCloud complains that since [JDK-8356080](https://bugs.openjdk.org/browse/JDK-8356080) we are using `Boolean` boxes in `ReverseOrderListView`. This change `boolean` -> `Boolean` was made in [JDK-8356080](https://bugs.openjdk.org/browse/JDK-8356080) to allow `@Stable` folding of boolean field. But it is very awkward to trade in the existence of the boxed object to allow optional constant folding.
>>
>> We can flatten this field to `byte` and check the specific non-zero values. The field is final, so it is never actually in `0` state.
>>
>> Additional testing:
>> - [x] Linux x86_64 server fastdebug, `java/util`
>
> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
>
> - Just drop back to boolean
> - Merge branch 'master' into JDK-8357798-reverse-order-list-boxes
> - A bit better comment
> - Better fix
> - Fix
We might look into strict final fields for trusted boolean fields later.
-------------
Marked as reviewed by liach (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/25456#pullrequestreview-2889358264
More information about the core-libs-dev
mailing list