/** * @test /nodynamiccopyright/ * @bug 7062745 7157798 * @summary Negative test of conflicting same-name methods inherited from multiple interfaces when return type not compatible * @compile/fail/ref=Test3.out -Werror -Xlint:unchecked -XDrawDiagnostics Test3.java */ import java.util.List; import java.io.Serializable; interface A { int m(); } interface B { Integer m(); } interface AB extends A, B {} //error interface C { List m(); } interface D { List m(); } interface CD extends C, D {} //error interface E { T m(); } interface F { T m(); } interface G { Serializable m(); } interface BE extends B, E {} //ok, covariant return interface BE2 extends B, E {} //error interface EF extends E, F {} //ok interface EF2 extends E, F {} //ok, covariant return interface EF3 extends E, F {} //error interface EG extends E, G {} //ok interface EFG extends E, F, G {} //error