Fri, 24 Apr 2020 03:58:51 +0100
Merge
jfranck@2020 | 1 | /* @test /nodynamiccopyright/ |
jfranck@2020 | 2 | * @bug 7192246 |
mcimadamore@1393 | 3 | * @summary check that abstract methods are compatible with inherited defaults |
mcimadamore@1415 | 4 | * @compile/fail/ref=Neg05.out -XDrawDiagnostics Neg05.java |
mcimadamore@1393 | 5 | */ |
mcimadamore@1393 | 6 | |
mcimadamore@1393 | 7 | class Neg05 { |
mcimadamore@1393 | 8 | interface IA1 { default Number m() { return Neg05.m1(this); } } |
mcimadamore@1393 | 9 | interface IA2 extends IA1 { default Integer m() { return Neg05.m2(this); } } |
mcimadamore@1393 | 10 | interface IA3 extends IA2 { Number m(); } //error |
mcimadamore@1393 | 11 | |
mcimadamore@1393 | 12 | static class C implements IA3{} |
mcimadamore@1393 | 13 | |
mcimadamore@1393 | 14 | static int m1(IA1 a) { return 0; } |
mcimadamore@1393 | 15 | static int m2(IA2 b) { return 0; } |
mcimadamore@1393 | 16 | } |