hg: lambda/lambda/langtools: Overhaul of lambda vs. method reference compatibility check

maurizio.cimadamore at oracle.com maurizio.cimadamore at oracle.com
Thu Apr 12 09:21:53 PDT 2012


Changeset: d9b285fb8213
Author:    mcimadamore
Date:      2012-04-12 17:21 +0100
URL:       http://hg.openjdk.java.net/lambda/lambda/langtools/rev/d9b285fb8213

Overhaul of lambda vs. method reference compatibility check
*) thrown types in lambda body should not affect set of applicable methods during overload resolution
*) allow return-type of method reference to be ignored if target descriptor is void
*) only void-compatible lambda should be compatible with void descriptors

! src/share/classes/com/sun/tools/javac/code/Type.java
! src/share/classes/com/sun/tools/javac/comp/Attr.java
! src/share/classes/com/sun/tools/javac/comp/Check.java
! src/share/classes/com/sun/tools/javac/comp/Infer.java
! src/share/classes/com/sun/tools/javac/comp/Resolve.java
! src/share/classes/com/sun/tools/javac/resources/compiler.properties
! test/tools/javac/diags/examples.not-yet.txt
+ test/tools/javac/lambda/BadExpressionLambda.java
+ test/tools/javac/lambda/BadExpressionLambda.out
! test/tools/javac/lambda/LambdaCapture05.java
! test/tools/javac/lambda/LambdaConv21.java
+ test/tools/javac/lambda/LambdaConv21.out
! test/tools/javac/lambda/LambdaExpr10.java
! test/tools/javac/lambda/TargetType16.java
+ test/tools/javac/lambda/TargetType16.out
! test/tools/javac/lambda/TargetType21.out
! test/tools/javac/lambda/TargetType30.java
! test/tools/javac/lambda/TargetType31.java
+ test/tools/javac/lambda/VoidCompatibility.java
+ test/tools/javac/lambda/VoidCompatibility.out
! test/tools/javac/lambda/mostSpecific/StructuralMostSpecificTest.java
! test/tools/javac/lambda/sqe/SAM_types/LambdaTest1.java
! test/tools/javac/lambda/sqe/lambdaExpression/SamConversionComboTest.java
! test/tools/javac/lambda/sqe/methodReference/SamConversionComboTest.java



More information about the lambda-dev mailing list