/* * @test /nodynamiccopyright/ * @bug 8003280 * @summary Add lambda tests * check that break/continue is disallowed in lambda expressions * @author Maurizio Cimadamore * @compile/fail/ref=BadBreakContinue.out -XDrawDiagnostics BadBreakContinue.java */ class BadBreakContinue { static interface SAM { void m(); } SAM s1 = ()-> { break; }; SAM s2 = ()-> { continue; }; SAM s3 = ()-> { SAM s3_1 = ()-> { break; }; SAM s3_2 = ()-> { continue; }; }; void testLabelled() { loop: while (true) { SAM s1 = ()-> { break loop; }; SAM s2 = ()-> { continue loop; }; SAM s3 = ()-> { SAM s3_1 = ()-> { break loop; }; SAM s3_2 = ()-> { continue loop; }; }; } } void testNonLabelled() { while (true) { SAM s1 = ()-> { break; }; SAM s2 = ()-> { continue; }; SAM s3 = ()-> { SAM s3_1 = ()-> { break; }; SAM s3_2 = ()-> { continue; }; }; } } }