|
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 } |