| /* | |
| * @test /nodynamiccopyright/ | |
| * @bug 8003280 | |
| * @summary Add lambda tests | |
| * check that lambda in array initializers (with wrong type) are correctly rejected | |
| * @compile/fail/ref=LambdaExpr10.out -XDrawDiagnostics LambdaExpr10.java | |
| */ | |
| class LambdaExpr10 { | |
| interface Block<T> { | |
| void m(T t); | |
| } | |
| void apply(Object[] obj_arr) { } | |
| void test1() { | |
| Object[] arr1 = { t -> { } }; | |
| Object[][] arr2 = { { t -> { } } }; | |
| } | |
| void test2() { | |
| Object[] arr1 = new Object[]{ t -> { } }; | |
| Object[][] arr2 = new Object[][]{ { t -> { } } }; | |
| } | |
| void test3() { | |
| apply(new Object[]{ t -> { } }); | |
| apply(new Object[][]{ { t -> { } } }); | |
| } | |
| void test4() { | |
| Block<?>[] arr1 = { t -> t }; | |
| Block<?>[] arr2 = new Block<?>[]{ t -> t }; | |
| apply(new Block<?>[]{ t -> { }, t -> { } }); | |
| } | |
| } |