/* * @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 -> { } }); } }