blob: c976a3bbf839e3c1628ccaaf28dfc15f63adf563 [file] [log] [blame]
/*
* @test /nodynamiccopyright/
* @bug 8003280
* @summary Add lambda tests
* check that return type is inferred from target type when cyclic inference found
* @author Maurizio Cimadamore
* @compile/fail/ref=TargetType14.out -XDrawDiagnostics TargetType14.java
*/
class TargetType14 {
interface SAM<X> {
X m(int i, int j);
}
static void test() {
SAM<Integer> s1 = (i, j) -> i + j;
m((i, j) -> i + j);
SAM<Integer> s2 = m2((i, j) -> i + j); //ok
SAM<Integer> s3 = m2((i, j) -> "" + i + j); //no
}
static void m(SAM<Integer> s) { }
static <X> SAM<X> m2(SAM<X> s) { return null; }
}