32 lines
699 B
Java
32 lines
699 B
Java
|
/*
|
||
|
* @test /nodynamiccopyright/
|
||
|
* @bug 8003280
|
||
|
* @summary Add lambda tests
|
||
|
* check that lambda is only allowed in argument/cast/assignment context
|
||
|
* @author Maurizio Cimadamore
|
||
|
* @compile/fail/ref=BadLambdaPos.out -XDrawDiagnostics BadLambdaPos.java
|
||
|
*/
|
||
|
|
||
|
interface SAM {
|
||
|
void m(Integer x);
|
||
|
}
|
||
|
|
||
|
class Test {
|
||
|
void test(Object x) {}
|
||
|
|
||
|
void test1() {
|
||
|
test((int x)-> { } + (int x)-> { } );
|
||
|
test((int x)-> { } instanceof Object );
|
||
|
}
|
||
|
|
||
|
void test2() {
|
||
|
int i2 = (int x)-> { } + (int x)-> { };
|
||
|
boolean b = (int x)-> { } instanceof Object;
|
||
|
}
|
||
|
|
||
|
void test3() {
|
||
|
test((Object)(int x)-> { });
|
||
|
Object o = (Object)(int x)-> { };
|
||
|
}
|
||
|
}
|