On Mon, 8 Jun 2026 17:05:46 GMT, Alan Bateman <[email protected]> wrote:
> The specification of JVMTI GetClassModifiers needs some TLC. The spec was > carried over from the equivalent function in JVMDI but doesn't really specify > that it works like Class::getModifiers and returns Java language modifiers > and not necessarily the access flags from the class file. The change in > behavior to only set ACC_IDENTITY when the class is an identity class or > array makes it a good time to re-write the spec to align with existing and > future behavior. > > A new test is added to test this function with value classes. The tests are > added to the "newer" serviceability/jvmti tree. There are some older tests > for GetClassModifiers in vmTestbase/nsk suite so there is a bit of an overlap. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). src/hotspot/share/prims/jvmti.xml line 7396: > 7394: When preview features are disabled, the <code>ACC_SUPER</code> > access flag may > 7395: be set if <code>klass</code> is not a primitive type or void. > The flag has no > 7396: effective meaning. I think we can be more assertive, like: "the ACC_IDENTITY access flag is set if and only if klass is an identity class or an array class" "the ACC_SUPER access flag is set if and only if klass is not a primitive type or void" ------------- PR Review Comment: https://git.openjdk.org/valhalla/pull/2526#discussion_r3375531251
