RFR: 8291360: Create entry points to expose low-level class file information

Joe Darcy darcy at openjdk.org
Fri Jul 29 18:15:15 UTC 2022


On Fri, 29 Jul 2022 18:02:46 GMT, Harold Seigel <hseigel at openjdk.org> wrote:

> Please review this change to fix JDK-8291360.  This fix adds entry points getClassFileVersion() and getClassAccessFlagsRaw() to class java.lang.Class.  The new entry points return the current class's class file version and its raw access flags.
> 
> The fix was tested by running Mach5 tiers 1-2 on Linux, Mac OS, and Windows, and Mach5 tiers 1-3 on Linux x64.  Additionally, the JCK lang, vm, and api tests and new regression tests were run locally on Linux x64.
> 
> Thanks, Harold

src/java.base/share/classes/java/lang/Class.java line 4700:

> 4698:      * returned.  If the class is a primitive then ACC_ABSTRACT | ACC_FINAL | ACC_PUBLIC.
> 4699:      */
> 4700:     private int getClassAccessFlagsRaw() {

For a "raw" method, it might be better to return the flags on the array class object itself rather than loop down to the component type.

-------------

PR: https://git.openjdk.org/jdk/pull/9688



More information about the build-dev mailing list