RFR: 8353835: Implement JEP 500: Prepare to Make Final Mean Final [v4]

Alan Bateman alanb at openjdk.org
Mon Oct 6 14:10:34 UTC 2025


On Mon, 29 Sep 2025 10:19:48 GMT, Volkan Yazici <vyazici at openjdk.org> wrote:

>> Alan Bateman has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   RemoveFields(duration) and filter internal frames
>
> test/jdk/java/lang/reflect/Field/mutateFinals/jar/ExecutableJarTest.java line 100:
> 
>> 98:         testExecutableJar(jarFile, "testUnreflectSetter")
>> 99:                 .shouldNotContain(WARNING_LINE1)
>> 100:                 .shouldNotContain(WARNING_UNREFLECTED)
> 
> We test
> 
> * `manifest={mutation=allow}` & `cliOpts={}`, and
> * `manifest={mutation=allow}` & `cliOpts={mutation=deny}`.
> 
> Shall we also add a test with `manifest={}` & `cliOpts={mutation=allow}`? That is, in the absence of a manifest entry, do command line arguments still apply?

The test is to check that `Enable-Final-Field-Mutation: ALL-UNNAMED` works like -`-enable-final-field-mutation=ALL-UNNAMED`.  cli/CommandLineTest.java will test the CLI option. So I think we have reasonable coverage here.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25115#discussion_r2406550210


More information about the hotspot-dev mailing list