Fri, 24 Apr 2020 03:58:51 +0100
Merge
1 /* @test /nodynamiccopyright/
2 * @bug 7192246
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 }