RFR: JDK-8245544: com/sun/tools/javac/platform/JDKPlatformProvider.java does not support ct.sym with platform versions 16+
Jan Lahoda
jan.lahoda at oracle.com
Thu May 21 14:54:43 UTC 2020
Hi,
Release versions are encoded as single characters inside the ct.sym. To
encode versions >= 16, the radix 36 (Character.MAX_RADIX) is used while
encoding the version. But, inside JDKPlatformProvider, the code that
parses the versions uses radix 16, and so cannot work with ct.sym that
contains data of JDK >=16.
The proposal is to fix JDKPlatformProvider to parse the versions
correctly, by using Character.MAX_RADIX.
I was looking at possibilities to test this, and it would be possible -
but difficult. And once we have support for JDK 16 in ct.sym, the
existing tests will be verifying that the ct.sym handling works
correctly. So I incline to not have specific tests for this (with
noreg-hard).
Webrev: http://cr.openjdk.java.net/~jlahoda/8245544/webrev.00/
JBS: https://bugs.openjdk.java.net/browse/JDK-8245544
What do you think?
Thanks,
Jan
More information about the compiler-dev
mailing list