Stack map generation problem

Chen Liang liangchenblue at gmail.com
Sat Dec 14 03:01:48 UTC 2024


Indeed - now primitive class descs are singletons. The whole constant API
implementations have been significantly changed during the optimizations
for the ClassFile API.

While backports are a good way to adapt, as you see, backporting new
features to old release tails has extra maintenance costs. That's why
OpenJDK now promotes minimal critical fixes and no new fearures to tail
release trains.

The goal of ClassFile API is to allow users to read newer class files than
the ones known at compile time. Hopefully by the next LTS 25, programs
compiled with release 25 parsing class files can handle future classes
easily so there will be no more gradle or asm upgrade hassles - users can
actually run their programs smoothly on newer JDK versions.

Chen


On Sat, Dec 14, 2024, 6:32 AM David Lloyd <david.lloyd at redhat.com> wrote:

> I found the problem, and it is not specific to the backport per se: there
> are several places where `==` is used to compare `ClassDesc`
> instances, particularly in the stack map generator. This usually works on
> JDK 24 or later, but fails on 23 or earlier. The critical clue was when I
> accidentally ran the backport version of the test on JDK 24 and it passed -
> telling me that the problem was a JDK behavioral difference.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/classfile-api-dev/attachments/20241213/3fd6d2be/attachment.htm>


More information about the classfile-api-dev mailing list