| /* |
| * @test /nodynamiccopyright/ |
| * @bug 8003280 |
| * @summary Add lambda tests |
| * speculative cache mismatches between Resolve.access and Attr.checkId leads to compiler crashes |
| * @compile/fail/ref=ErroneousArg.out -XDrawDiagnostics ErroneousArg.java |
| */ |
| class ErroneousArg { |
| |
| private static class Foo { |
| static int j() { return 1; } |
| } |
| |
| static Foo foo = new Foo(); |
| |
| static void m(String s) { } |
| static void m(Integer i) { } |
| |
| static int f(String s) { return 1; } |
| |
| static int g(String s) { return 1; } |
| static int g(Double s) { return 1; } |
| |
| int h() { return 1; } |
| } |
| |
| class TestErroneousArg extends ErroneousArg { |
| static void test() { |
| m(unknown()); //method not found |
| m(f(1)); //inapplicable method |
| m(g(1)); //inapplicable methods |
| m(g(null)); //ambiguous |
| m(h()); //static error |
| m(foo.j()); //inaccessible method |
| } |
| } |