test/tools/javac/lambda/BadAccess.java

changeset 0
959103a6100f
equal deleted inserted replaced
-1:000000000000 0:959103a6100f
1 /*
2 * @test /nodynamiccopyright/
3 * @bug 8003280
4 * @summary Add lambda tests
5 * check that non-static variables are not accessible from static lambdas
6 * @author Maurizio Cimadamore
7 * @compile/fail/ref=BadAccess.out -XDrawDiagnostics BadAccess.java
8 */
9
10 public class BadAccess {
11
12 int i;
13 static int I;
14
15 interface SAM {
16 int m();
17 }
18
19 static void test1() {
20 int l = 0; //effectively final
21 final int L = 0;
22 SAM s = ()-> i + I + l + L;
23 }
24
25 void test2() {
26 int l = 0; //effectively final
27 final int L = 0;
28 SAM s = ()-> i + I + l + L;
29 }
30 }

mercurial