On Thu, 20 Aug 2026 01:29:13 GMT, Guanqiang Han <[email protected]> wrote:

>> Please review this change, thanks!
>> 
>> **Description:**
>> 
>> Some VM long options only accept arguments in the `--option=value` form, 
>> even though the launcher help states that long-option arguments may also be 
>> separated by whitespace. As a result, options such as 
>> `--illegal-final-field-mutation debug`, `--illegal-native-access warn`  are 
>> not parsed correctly.
>> 
>> **Solution:**
>> 
>> Add `IsNonModuleVMWhiteSpaceOption()` to identify VM long options that 
>> accept whitespace-separated arguments and convert them to the 
>> `--option=value` form before passing them to the VM. Add 
>> `--enable-final-field-mutation` to the existing module-option handling. 
>> Normalize missing arguments for other VM long options to `--option=` so that 
>> they can be handled by the existing option validation logic.
>> 
>> **Test:**
>> 
>> GHA
>> 
>> ---------
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> Guanqiang Han has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Adjust code structure and add comments

Changes requested by bchristi (Reviewer).

test/jdk/java/lang/Object/FinalizationOption.java line 162:

> 160:                     "expected one or two arguments");
> 161:         }
> 162:     }

Perhaps a nit, but can we keep the main() as the first method, before 
`launch()` and `test()`? That way you understand the flow of the test as you're 
reading through the file, and already know what `launch()` and `test()` are for 
once you get to them.

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

PR Review: https://git.openjdk.org/jdk/pull/31928#pullrequestreview-4986711315
PR Review Comment: https://git.openjdk.org/jdk/pull/31928#discussion_r3824798674

Reply via email to