3789983e89
Reviewed-by: darcy, ihse
54 lines
1.1 KiB
Java
54 lines
1.1 KiB
Java
/*
|
|
* @test /nodynamiccopyright/
|
|
* @bug 8003280
|
|
* @summary Add lambda tests
|
|
* check that inner scopes are left after a lambda check exception has been thrown
|
|
* @compile/fail/ref=LambdaExpr19.out -XDrawDiagnostics LambdaExpr19.java
|
|
*/
|
|
class LambdaExpr19 {
|
|
|
|
interface SAM {
|
|
String m();
|
|
}
|
|
|
|
void m(SAM s) { }
|
|
|
|
void testTry() {
|
|
m(() -> {
|
|
try { return 1; }
|
|
catch (Exception e) { }
|
|
});
|
|
}
|
|
|
|
void testTryWithResources() {
|
|
m(() -> {
|
|
try (AutoCloseable c = null) { return 1; }
|
|
catch (Exception e) { }
|
|
});
|
|
}
|
|
|
|
void testSwitch() {
|
|
m(() -> {
|
|
switch (1) {
|
|
default: return 1;
|
|
}
|
|
});
|
|
}
|
|
|
|
void testFor() {
|
|
m(() -> {
|
|
for (;;) {
|
|
return 1;
|
|
}
|
|
});
|
|
}
|
|
|
|
void testForeach() {
|
|
m(() -> {
|
|
for (Object o : new Object[] { null , null }) {
|
|
return 1;
|
|
}
|
|
});
|
|
}
|
|
}
|