Mon, 24 Oct 2011 13:00:30 +0100
7098660: Write better overload resolution/inference tests
Summary: Add overload/inference debug diagnostics - added test harness using annotations to check outcome of overload resolution/inference
Reviewed-by: jjg
mcimadamore@970 | 1 | /* |
mcimadamore@970 | 2 | * @test /nodynamiccopyright/ |
mcimadamore@996 | 3 | * @ignore backing out 7034511, see 7040883 |
mcimadamore@996 | 4 | * @bug 7034511 7040883 |
mcimadamore@970 | 5 | * @summary Loophole in typesafety |
mcimadamore@970 | 6 | * @compile/fail/ref=T7034511a.out -XDrawDiagnostics T7034511a.java |
mcimadamore@970 | 7 | */ |
mcimadamore@970 | 8 | |
mcimadamore@970 | 9 | class T7034511a { |
mcimadamore@970 | 10 | |
mcimadamore@970 | 11 | interface A<T> { |
mcimadamore@970 | 12 | void foo(T x); |
mcimadamore@970 | 13 | } |
mcimadamore@970 | 14 | |
mcimadamore@970 | 15 | interface B<T> extends A<T[]> { } |
mcimadamore@970 | 16 | |
mcimadamore@970 | 17 | static abstract class C implements B<Integer> { |
mcimadamore@970 | 18 | <T extends B<?>> void test(T x, String[] ss) { |
mcimadamore@970 | 19 | x.foo(ss); |
mcimadamore@970 | 20 | } |
mcimadamore@970 | 21 | } |
mcimadamore@970 | 22 | } |