- 
    Bug 
- 
    Resolution: Fixed
- 
     P3 P3
- 
    11.0.12
- 
        b01
- 
        generic
- 
        generic
                    The implementation of JavaType.toJavaName() in JVMCI returns the wrong Java name for a lambda class. Example:
Supplier<Runnable> lambda = () -> () -> System.out.println("run");
ResolvedJavaType lambdaType = metaAccess.lookupJavaType(lambda.getClass());
lambdaType.toJavaName(); // returns wrong name here
This has been fixed in later JDKs with a JVMCI update viaJDK-8225810 (JDK 14) which seems a lot more risky to backport than just the changes to MetaUtil.java which are only used internal to JVMCI.
Thus, I'm proposing to only backport MetaUtil.java changes fromJDK-8225810 to OpenJDK 11u as it fixes a debuginfo generation issue in GraalVM/Mandrel.
            
Supplier<Runnable> lambda = () -> () -> System.out.println("run");
ResolvedJavaType lambdaType = metaAccess.lookupJavaType(lambda.getClass());
lambdaType.toJavaName(); // returns wrong name here
This has been fixed in later JDKs with a JVMCI update via
Thus, I'm proposing to only backport MetaUtil.java changes from
- relates to
- 
                    JDK-8270184 [TESTBUG] Add coverage for jvmci ResolvedJavaType.toJavaName() for lambdas -           
- Resolved
 
-         
- 
                    JDK-8225810 Update JVMCI -           
- Resolved
 
-         
 
        