test/tools/javac/lambda/EffectivelyFinalThrows.java

Fri, 27 Sep 2013 10:24:56 +0100

author
vromero
date
Fri, 27 Sep 2013 10:24:56 +0100
changeset 2069
16194509e483
parent 0
959103a6100f
permissions
-rw-r--r--

8024497: crash returning this-referencing lambda from default method
Reviewed-by: jjg, rfield

     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 }

mercurial