|
1 /* |
|
2 * @test /nodynamiccopyright/ |
|
3 * @bug 8003280 |
|
4 * @summary Add lambda tests |
|
5 * speculative cache mismatches between Resolve.access and Attr.checkId leads to compiler crashes |
|
6 * @compile/fail/ref=ErroneousArg.out -XDrawDiagnostics ErroneousArg.java |
|
7 */ |
|
8 class ErroneousArg { |
|
9 |
|
10 private static class Foo { |
|
11 static int j() { return 1; } |
|
12 } |
|
13 |
|
14 static Foo foo = new Foo(); |
|
15 |
|
16 static void m(String s) { } |
|
17 static void m(Integer i) { } |
|
18 |
|
19 static int f(String s) { return 1; } |
|
20 |
|
21 static int g(String s) { return 1; } |
|
22 static int g(Double s) { return 1; } |
|
23 |
|
24 int h() { return 1; } |
|
25 } |
|
26 |
|
27 class TestErroneousArg extends ErroneousArg { |
|
28 static void test() { |
|
29 m(unknown()); //method not found |
|
30 m(f(1)); //inapplicable method |
|
31 m(g(1)); //inapplicable methods |
|
32 m(g(null)); //ambiguous |
|
33 m(h()); //static error |
|
34 m(foo.j()); //inaccessible method |
|
35 } |
|
36 } |