test/tools/javac/lambda/MethodReference20.java

Fri, 05 Jul 2013 11:02:17 +0100

author
mcimadamore
date
Fri, 05 Jul 2013 11:02:17 +0100
changeset 1888
70b37cdb19d5
parent 0
959103a6100f
permissions
-rw-r--r--

8019480: Javac crashes when method is called on a type-variable receiver from lambda expression
Summary: Logic for shortcircuiting speculative attribution doesn't handle type-variable receivers
Reviewed-by: jjg, vromero

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 8003280
     4  * @summary Add lambda tests
     5  *  basic test for constructor references and generic classes
     6  * @author  Maurizio Cimadamore
     7  * @compile/fail/ref=MethodReference20.out -XDrawDiagnostics MethodReference20.java
     8  */
    10 class MethodReference20<X> {
    12     MethodReference20(X x) { }
    14     interface SAM<Z> {
    15         MethodReference20<Z> m(Z z);
    16     }
    18     static void test(SAM<Integer> s) {   }
    20     public static void main(String[] args) {
    21         SAM<Integer> s = MethodReference20<String>::new;
    22         test(MethodReference20<String>::new);
    23     }
    24 }

mercurial