test/tools/javac/lambda/MethodReference20.java

Mon, 08 Apr 2013 15:57:10 +0100

author
mcimadamore
date
Mon, 08 Apr 2013 15:57:10 +0100
changeset 1677
94a202228ec2
parent 0
959103a6100f
permissions
-rw-r--r--

8009131: Overload: javac should discard methods that lead to errors in lambdas with implicit parameter types
Summary: Lambdas that have errors in their bodies should make enclosing overload resolution fail
Reviewed-by: jjg

     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