Sat, 04 Aug 2018 12:55:17 +0100
Merge
1 /*
2 * @test /nodynamiccopyright/
3 * @bug 8019521
4 * @summary Check that enhanced rethrow/effectivelly final works correctly inside lambdas
5 * @compile EffectivelyFinalThrows.java
6 */
8 class EffectivelyFinalThrows {
9 interface SAM<E extends Throwable> {
10 public void t() throws E;
11 }
12 <E extends Throwable> void test(SAM<E> s) throws E {
13 s.t();
14 }
15 void test2(SAM<Checked> s) throws Checked {
16 test(() -> {
17 try {
18 s.t();
19 } catch (Throwable t) {
20 throw t;
21 }
22 });
23 }
24 static class Checked extends Exception {}
25 }