[lworld] RFR: 8293253: [lw4] Code fixing access flags in old class files is incorrect and incomplete
Tobias Hartmann
thartmann at openjdk.org
Fri Sep 2 09:56:17 UTC 2022
On Thu, 1 Sep 2022 20:11:52 GMT, Frederic Parain <fparain at openjdk.org> wrote:
> Please review this code fixing the code that adds the missing ACC_SUPER/ACC_IDENTITY flag in old class files.
> Those changes fix both JDK-8291719 and JDK-8293169.
>
> Tested with Mach5, tier1-3.
>
> But those changes also trigger new failures that should be addressed in additional CR:
>
> java/lang/invoke/defineHiddenClass/BasicTest.java:
> - assertion failure because test doesn't expect ACC_IDENTITY to be present
> not sure about the fix if non-Valhalla configurations are run
> BTW, the test already uses ACC_IDENTITY in some places
>
> java/lang/reflect/AccessFlag/ClassAccessFlagTest.java:
> - another Java test surprised by the presence of ACC_IDENTITY
>
> serviceability/jvmti/RedefineClasses/RedefineObject.java:
> - changes in access flags leads to the class redefinition code to reject
> an attempt to redefine a class because it sees a mismatch in access flags
> (forbidden by class redefinition rules)
>
> tools/javac/preview/PreviewTest.java
> - not sure about this one, need input from a javac expert
>
> Still some failures in JCK test, vm/classfmt/cpl and vm/instr/invokespecial
> but they will be addressed in another patch.
>
> Thank you,
>
> Fred
Looks good.
src/hotspot/share/classfile/classFileParser.cpp line 3342:
> 3340:
> 3341: if (EnableValhalla) {
> 3342: if(!supports_inline_types()) {
Suggestion:
if (!supports_inline_types()) {
-------------
Marked as reviewed by thartmann (Committer).
PR: https://git.openjdk.org/valhalla/pull/739
More information about the valhalla-dev
mailing list