[11] RFR(S): 8202848: -XX:+ExecuteInternalVMTests asserts with "assert(cd.valid() == true) failed: failed on a valid DirectivesParser string"

Tobias Hartmann tobias.hartmann at oracle.com
Fri May 18 10:54:01 UTC 2018


Hi,

please review the following patch:
https://bugs.openjdk.java.net/browse/JDK-8202848
http://cr.openjdk.java.net/~thartmann/8202848/webrev.00/

The problem is that with some locale settings (for example, LC_NUMERIC = de_DE.UTF-8), sscanf in
JSON::parse_json_number() treats "," as the decimal separator instead of ".". As a result, the value
of "VectorizeDebug: 1," in one of the DirectivesParser tests is read as "1," and we skip the comma
at the end of the line.

This only affects VM internal tests, directive files specified via -XX:CompilerDirectivesFile= are
parsed before the locale is set to the systems default. We should therefore explicitly set the "C"
locale for the VM internal DirectivesParser tests.

Thanks,
Tobias


More information about the hotspot-dev mailing list