[lworld] RFR: 8281463: [lworld] VALUE / PRIMITIVE modifiers should be supported by reflection [v5]

Mandy Chung mchung at openjdk.java.net
Wed Jun 8 21:12:51 UTC 2022


On Wed, 8 Jun 2022 18:46:43 GMT, Roger Riggs <rriggs at openjdk.org> wrote:

>> Add support to java.lang.reflect.AccessFlag ACC_IDENTITY, ACC_VALUE, and ACC_PRIMITIVE.
>> Added corresponding flags to j.l.reflect.Modifier so the "source" of the AccessFlag is the Modifer mask.
>> Remove PERMITS_VALUE; moving the definition used by HotSpot to HotSpot code.
>> 
>> Add comments to java.l.reflect.Modifier suggesting use of AccessFlag instead and limitations.
>
> Roger Riggs has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Revert changes and simplify
>   Update GenericStringTest to work with value and primitive classes.

Thanks for the update.   I agree that the `Modifier` class spec needs update.   PR 7445 should finalize that.

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

> 205:     private static final int SYNTHETIC  = 0x00001000;
> 206:     private static final int VALUE_CLASS     = 0x00000040;
> 207:     private static final int PRIMITIVE_CLASS = 0x00000800;

`VALUE_CLASS` and `PRIMITIVE_CLASS` can be removed now and replaced with `AccessFlag::mask`.

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

Marked as reviewed by mchung (Committer).

PR: https://git.openjdk.java.net/valhalla/pull/698



More information about the valhalla-dev mailing list