Details
-
Type:
Sub-task
-
Status: Resolved
-
Priority:
P2
-
Resolution: Fixed
-
Affects Version/s: 15
-
Fix Version/s: repo-valhalla
-
Component/s: core-libs
-
Labels:None
-
Subcomponent:
Description
The current implementation of LambdaMetaFactory creates VM-anonymous class which does not conform to the standard access control rules.
This issue tracks the conversion of LambdaMetaFactory from using VM-anonymous class to hidden class.
A hidden class is subject to standard access control rules.
One non-standard access that VM-anonymous class has is that
a VM-anonymous class can always access protected members of a superclass in a different package, which is not allowed by the rules of JVMS 5.4.4.
This issue tracks the conversion of LambdaMetaFactory from using VM-anonymous class to hidden class.
A hidden class is subject to standard access control rules.
One non-standard access that VM-anonymous class has is that
a VM-anonymous class can always access protected members of a superclass in a different package, which is not allowed by the rules of JVMS 5.4.4.
Attachments
Issue Links
- relates to
-
JDK-8234729 Javac should eagerly change code generation for method references to avert IllegalAccessError in future.
-
- Resolved
-
-
JDK-8222411 JCK lang/LMBD tests fail in Valhalla nestmates repo
-
- Resolved
-