<div dir="auto"><div>Indeed - now primitive class descs are singletons. The whole constant API implementations have been significantly changed during the optimizations for the ClassFile API.<div dir="auto"><br></div><div dir="auto">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.</div><div dir="auto"><br></div><div dir="auto">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.</div><div dir="auto"><br></div><div dir="auto">Chen</div><br><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Sat, Dec 14, 2024, 6:32 AM David Lloyd <<a href="mailto:david.lloyd@redhat.com">david.lloyd@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">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.</div></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr"></div></div>
</blockquote></div></div></div>