Lworld requires concrete classes to have either ACC_IDENTITY(0x20) or ACC_VALUE (0x40) to be set in the modifiers.
The ClassAccessFlagsRawTest was written prior to Valhalla and expects the ACC_SUPER (0x20) to be set.
The jdoc file for SUPERnotset does not set either bit and so a ClassFormatError is thrown.
The class file version number for SUPERnotset is 64.
There is no way to distinguish between main-line behavior and Lworld behavior.
java.lang.ClassFormatError: Illegal class modifiers in class SUPERnotset: 0x1
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:149)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:412)
at java.base/java.lang.Class.forName(Class.java:403)
at ClassAccessFlagsRawTest.testIt(ClassAccessFlagsRawTest.java:41)
at ClassAccessFlagsRawTest.main(ClassAccessFlagsRawTest.java:55)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:579)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
at java.base/java.lang.Thread.run(Thread.java:1589)