test/tools/javac/lambda/funcInterfaces/LambdaTest1_neg3.java

Fri, 22 Mar 2013 12:43:09 +0000

author
mcimadamore
date
Fri, 22 Mar 2013 12:43:09 +0000
changeset 1655
c6728c9addff
parent 0
959103a6100f
permissions
-rw-r--r--

8010303: Graph inference: missing incorporation step causes spurious inference error
Summary: Multiple equality constraints on inference vars are not used to generate new inference constraints
Reviewed-by: jjg

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @bug 8003280
     4  * @summary Add lambda tests
     5  *   This test is to verify mis-use of capturing local variable within lambda expression
     6  * @compile/fail/ref=LambdaTest1_neg3.out -XDrawDiagnostics LambdaTest1_neg3.java
     7  */
     9 public class LambdaTest1_neg3 {
    10     void method() {
    11         int n = 2; //effectively final variable
    12         ((Runnable)
    13             ()-> {
    14                 int n2 = n; //inside lambda accessing effectively final variable;
    15             }
    16         ).run();
    17         n++; //compile error if n is modified
    18     }
    19 }

mercurial