[Nestmates] RFR: 8191114: [Nestmates] Update access control exception handling and other features per final JVMS proposal
David Holmes
david.holmes at oracle.com
Fri Dec 15 07:48:49 UTC 2017
Updated webrev:
http://cr.openjdk.java.net/~dholmes/8191114/webrev.v1/
Only difference is classFileParser.cpp. The nestmate attributes should
only be processed in a Java 10 (for now) version classfile.
Thanks,
David
On 13/12/2017 5:31 PM, David Holmes wrote:
> Bug: https://bugs.openjdk.java.net/browse/JDK-8191114
> webrev: http://cr.openjdk.java.net/~dholmes/8191114/webrev/
>
> The final proposed changes to the JVMS have been discussed by the EG and
> it is time to bring everything into line with the proposed spec.
>
> The main changes are:
> - Process for determining the nest-host has changed, specifically:
> - same package check is done first**
> - IncompatibleClassChangeError is thrown instead of IllegalAccessError
> - A self-reference is permitted in the NestMembers array
> - A self-reference is not permitted in the NestHost attribute
> - Duplicate entries are permitted in the NestMembers array
> - Invokeinterface use for private interface methods is permitted
> regardless of classfile version (so no exception saying "you should use
> invokespecial").
>
> ** This had a disruptive impact on the tests as using Object and
> Object[] as "bad hosts" now hit the "not in same package" error instead
> of the intended error - so these had to be replaced with a new class
> defined in the same (unnamed) package.
>
> All tests were updated to match the changes, and new tests added where
> needed. In particular:
> - nest membership tests had to add the bad "SelfHost" case
> - reflection API getNestMembers() had to allow for and test,
> self-reference and duplicate entries [the spec is being clarified under
> JDK-8193408]
>
> Some minor cleanups:
> - src/hotspot/share/classfile/stackMapFrame.hpp
> - reverted leftover copyright year change (file is not modified from
> mainline version)
> - src/hotspot/share/classfile/verifier.cpp
> - reverted leftover layout and whitespace changes (file is not
> modified from mainline version)
>
> Thanks,
> David
More information about the valhalla-dev
mailing list