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
1 /*
2 * @test /nodynamiccopyright/
3 * @summary check that abstract methods are compatible with inherited defaults
4 * @compile/fail/ref=Neg05.out -XDrawDiagnostics Neg05.java
5 */
7 class Neg05 {
8 interface IA1 { default Number m() { return Neg05.m1(this); } }
9 interface IA2 extends IA1 { default Integer m() { return Neg05.m2(this); } }
10 interface IA3 extends IA2 { Number m(); } //error
12 static class C implements IA3{}
14 static int m1(IA1 a) { return 0; }
15 static int m2(IA2 b) { return 0; }
16 }