hg: lambda/lambda/langtools: Disallow SAM conversion where target-type is an abstract class.
maurizio.cimadamore at oracle.com
maurizio.cimadamore at oracle.com
Fri Feb 25 10:08:06 PST 2011
Changeset: 1b56e8c66272
Author: mcimadamore
Date: 2011-02-25 18:07 +0000
URL: http://hg.openjdk.java.net/lambda/lambda/langtools/rev/1b56e8c66272
Disallow SAM conversion where target-type is an abstract class.
This patch brings the compiler in line with what has been discussed by the lambda EG.
Old semantics is still allowed (mostly for the purposes of running existing regression tests) using the hidden flag -XDabstractSAM.
! src/share/classes/com/sun/tools/javac/code/Types.java
! src/share/classes/com/sun/tools/javac/resources/compiler.properties
! test/tools/javac/defender/Pos01.java
! test/tools/javac/lambda/BadAccess.java
! test/tools/javac/lambda/BadAccess02.java
! test/tools/javac/lambda/BadBreakContinue.java
! test/tools/javac/lambda/BadReturn.java
! test/tools/javac/lambda/Defender01.java
! test/tools/javac/lambda/ExceptionTransparency01.java
! test/tools/javac/lambda/ExceptionTransparency02.java
! test/tools/javac/lambda/ExceptionTransparency03.java
! test/tools/javac/lambda/LambdaCapture01.java
! test/tools/javac/lambda/LambdaCapture02.java
! test/tools/javac/lambda/LambdaCapture03.java
! test/tools/javac/lambda/LambdaCapture04.java
! test/tools/javac/lambda/LambdaCapture05.java
! test/tools/javac/lambda/LambdaConv01.java
! test/tools/javac/lambda/LambdaConv03.java
! test/tools/javac/lambda/LambdaConv05.java
! test/tools/javac/lambda/LambdaConv06.java
! test/tools/javac/lambda/LambdaConv08.java
! test/tools/javac/lambda/LambdaConv09.java
! test/tools/javac/lambda/LambdaConv10.java
! test/tools/javac/lambda/LambdaConv13.java
! test/tools/javac/lambda/LambdaConversionTest.java
! test/tools/javac/lambda/LambdaExpr01.java
! test/tools/javac/lambda/LambdaExpr02.java
! test/tools/javac/lambda/LambdaExpr04.java
! test/tools/javac/lambda/LambdaExpr05.java
! test/tools/javac/lambda/LambdaExprNotVoid.java
! test/tools/javac/lambda/LambdaScope01.java
! test/tools/javac/lambda/LambdaScope03.java
! test/tools/javac/lambda/LocalBreakAndContinue.java
! test/tools/javac/lambda/MethodReference01.java
! test/tools/javac/lambda/MethodReference02.java
! test/tools/javac/lambda/MethodReference03.java
! test/tools/javac/lambda/MethodReference05.java
! test/tools/javac/lambda/MethodReference07.java
! test/tools/javac/lambda/MethodReference08.java
! test/tools/javac/lambda/MethodReference09.java
! test/tools/javac/lambda/MethodReference10.java
! test/tools/javac/lambda/MethodReference11.java
! test/tools/javac/lambda/MethodReference12.java
! test/tools/javac/lambda/MethodReference13.java
! test/tools/javac/lambda/MethodReference14.java
! test/tools/javac/lambda/MethodReference15.java
! test/tools/javac/lambda/MethodReference16.java
! test/tools/javac/lambda/MethodReference17.java
! test/tools/javac/lambda/MethodReference18.java
! test/tools/javac/lambda/MethodReference19.java
! test/tools/javac/lambda/MethodReference20.java
! test/tools/javac/lambda/NakedThis.java
! test/tools/javac/lambda/TargetType01.java
! test/tools/javac/lambda/TargetType03.java
! test/tools/javac/lambda/TargetType04.java
! test/tools/javac/lambda/TargetType05.java
! test/tools/javac/lambda/TargetType06.java
! test/tools/javac/lambda/TargetType07.java
! test/tools/javac/lambda/TargetType08.java
! test/tools/javac/lambda/TargetType10.java
! test/tools/javac/lambda/TargetType11.java
! test/tools/javac/lambda/TargetType12.java
! test/tools/javac/lambda/TargetType13.java
! test/tools/javac/lambda/TargetType14.java
! test/tools/javac/lambda/TargetType15.java
! test/tools/javac/lambda/TargetType16.java
! test/tools/javac/lambda/badMemberRefBytecode/TestBadMemberRefBytecode.java
! test/tools/javac/meth/InvokeDynTrans.java
More information about the lambda-dev
mailing list