Thu, 21 Feb 2013 15:27:05 +0000
8008444: Inherited generic functional descriptors are merged incorrectly
Summary: Missing call to Types.createMethodWithThrownTypes
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 | } |