RFR: 7904028: jcstress: Address s.m.Unsafe use warnings which fail build on JDK 23+

Jiří Vaněk jvanek at openjdk.org
Mon Jun 9 13:25:15 UTC 2025


On Sun, 8 Jun 2025 22:22:37 GMT, Pavel Rappo <prappo at openjdk.org> wrote:

> Here I propose a simple, symptomatic solution to fix build failures on JDK 23+ caused by treating "deprecated for removal" warnings as errors.
> 
> In the patch, I tried to keep the scope of `@SuppressWarnings` to a minimum. However, in a few cases I had to broaden it. This is because this annotation cannot be applied to a static initializer or an assignment within it.
> 
> Instead of extracting code into methods for the sake of annotating those, I annotated the smallest annotatable outer element, which was the top-level class. For example, see: `UnsafeBusyLoopTest`, `UnsafeAddLong1`, `UnsafeAddLong42`. 
> 
> I note that in JBS @shipilev suggested another approach to address the warnings. Namely, to move from `Unsafe` to `VarHandle`. However, such an approach is beyond my competence. And if chosen, it should be done by someone else. Thanks.

Is the   `@SuppressWarnings("removal")` 's  "removal"  really good enough description? Maybe "replace by VarHandle" is better?  Or link sone jdk jira issue? `"removal: CODETOOLS-..."` As for me, better to do this now, as yuo have it, and later fix it properly, as the issues in jdk 23+ are multiplying. Thanx!

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

PR Comment: https://git.openjdk.org/jcstress/pull/165#issuecomment-2955781345


More information about the jcstress-dev mailing list