Wed, 27 Apr 2016 01:34:52 +0800
Initial load
http://hg.openjdk.java.net/jdk8u/jdk8u/langtools/
changeset: 2573:53ca196be1ae
tag: jdk8u25-b17
aoqi@0 | 1 | /* |
aoqi@0 | 2 | * @test /nodynamiccopyright/ |
aoqi@0 | 3 | * @bug 8019521 |
aoqi@0 | 4 | * @summary Check that enhanced rethrow/effectivelly final works correctly inside lambdas |
aoqi@0 | 5 | * @compile EffectivelyFinalThrows.java |
aoqi@0 | 6 | */ |
aoqi@0 | 7 | |
aoqi@0 | 8 | class EffectivelyFinalThrows { |
aoqi@0 | 9 | interface SAM<E extends Throwable> { |
aoqi@0 | 10 | public void t() throws E; |
aoqi@0 | 11 | } |
aoqi@0 | 12 | <E extends Throwable> void test(SAM<E> s) throws E { |
aoqi@0 | 13 | s.t(); |
aoqi@0 | 14 | } |
aoqi@0 | 15 | void test2(SAM<Checked> s) throws Checked { |
aoqi@0 | 16 | test(() -> { |
aoqi@0 | 17 | try { |
aoqi@0 | 18 | s.t(); |
aoqi@0 | 19 | } catch (Throwable t) { |
aoqi@0 | 20 | throw t; |
aoqi@0 | 21 | } |
aoqi@0 | 22 | }); |
aoqi@0 | 23 | } |
aoqi@0 | 24 | static class Checked extends Exception {} |
aoqi@0 | 25 | } |