test/tools/javac/lambda/LambdaConv18.java

Tue, 29 Mar 2016 10:48:49 +0000

author
dbuck
date
Tue, 29 Mar 2016 10:48:49 +0000
changeset 3102
e74dd6df4d4c
parent 0
959103a6100f
permissions
-rw-r--r--

8143647: Javac compiles method reference that allows results in an IllegalAccessError
Summary: Lambda implementation method synthesized by javac should not mention inaccessible types.
Reviewed-by: mcimadamore

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 8003280
     4  * @summary Add lambda tests
     5  *  simple test for lambda candidate check
     6  * @compile/fail/ref=LambdaConv18.out -XDrawDiagnostics -XDidentifyLambdaCandidate=true LambdaConv18.java
     7  */
     9 class LambdaConv18 {
    11     interface SAM {
    12         void m();
    13     }
    15     interface NonSAM {
    16         void m1();
    17         void m2();
    18     }
    20     SAM s1 = new SAM() { public void m() {} };
    21     NonSAM s2 = new NonSAM() { public void m1() {}
    22                               public void m2() {} };
    23     NonExistent s3 = new NonExistent() { public void m() {} };
    24 }

mercurial