Sun, 04 Nov 2012 10:59:42 +0000
7192246: Add type-checking support for default methods
Summary: Add type-checking support for default methods as per Featherweight-Defender document
Reviewed-by: jjg, dlsmith
mcimadamore@1393 | 1 | /* |
mcimadamore@1393 | 2 | * @test /nodynamiccopyright/ |
mcimadamore@1393 | 3 | * @summary check that default method must have most specific return type |
mcimadamore@1393 | 4 | * @compile/fail/ref=Neg04.out -XDallowDefaultMethods -XDrawDiagnostics Neg04.java |
mcimadamore@1393 | 5 | */ |
mcimadamore@1393 | 6 | |
mcimadamore@1393 | 7 | class Neg04 { |
mcimadamore@1393 | 8 | interface IA1 { Integer m(); } |
mcimadamore@1393 | 9 | interface IA2 extends IA1 { default Number m() { return Neg04.m(this); } } //error |
mcimadamore@1393 | 10 | |
mcimadamore@1393 | 11 | abstract class C implements IA1, IA2 {} |
mcimadamore@1393 | 12 | |
mcimadamore@1393 | 13 | static int m(IA2 a) { return 0; } |
mcimadamore@1393 | 14 | } |