hg: jdk9/dev/langtools: 8129740: Incorrect class file created when passing lambda in inner class constructor

srikanth.adayapalam at oracle.com srikanth.adayapalam at oracle.com
Mon Nov 9 00:15:36 UTC 2015


Changeset: ed4c306ec942
Author:    sadayapalam
Date:      2015-11-09 05:45 +0530
URL:       http://hg.openjdk.java.net/jdk9/dev/langtools/rev/ed4c306ec942

8129740: Incorrect class file created when passing lambda in inner class constructor
Summary: Lambda implementation method must be static when lambda is an argument to an explicit constructor call.
Reviewed-by: mcimadamore, jlahoda

! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeMaker.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java
+ test/tools/javac/lambda/T8129740/AllowEnclosingVarCaptureTest.java
+ test/tools/javac/lambda/T8129740/CaptureInCtorChainingTest.java
+ test/tools/javac/lambda/T8129740/QualifiedThisAccessTest.java
+ test/tools/javac/lambda/T8129740/SourceForTranslation.java
+ test/tools/javac/lambda/T8129740/SourceToSourceTranslationTest.java
+ test/tools/javac/lambda/T8129740/Universe.java.out



More information about the jdk9-dev-changes mailing list