test/tools/javac/lambda/8020843/T8020843b.java

Thu, 26 Mar 2015 11:34:50 +0100

author
jlahoda
date
Thu, 26 Mar 2015 11:34:50 +0100
changeset 2734
ba758e1ffa69
parent 0
959103a6100f
permissions
-rw-r--r--

8054220: Debugger doesn't show variables *outside* lambda
8058227: Debugger has no access to outer variables inside Lambda
Summary: Put local variables captured by lambda into the lambda method's LocalVariableTable.
Reviewed-by: mcimadamore, rfield

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 8020843
     4  * @summary javac crashes on accessibility check with method reference with typevar receiver
     5  * @compile/fail/ref=T8020843b.out -XDrawDiagnostics T8020843b.java
     6  */
     8 class T8020843b {
     9     interface Function<X, Y> {
    10         Y m(X x);
    11     }
    13     interface BiFunction<X, Y, Z> {
    14         Z m(X x, Y y);
    15     }
    17     Object m(int i) { return null; }
    18     static Object m(String t) { return null; }
    20     Object m2(int i) { return null; }
    21     static Object m2(long t) { return null; }
    23     static void test() {
    24         Function<T8020843b, Object> f1 = T8020843b::m; //show bound case diag
    25         BiFunction<T8020843b, String, Object> f2 = T8020843b::m2; //show unbound case diag
    26     }
    27 }

mercurial