test/tools/javac/defaultMethods/Neg12.java

Thu, 21 Feb 2013 15:26:46 +0000

author
mcimadamore
date
Thu, 21 Feb 2013 15:26:46 +0000
changeset 1599
9f0ec00514b6
parent 1415
01c9d4161882
child 2020
bb7271e64ef6
permissions
-rw-r--r--

8007461: Regression: bad overload resolution when inner class and outer class have method with same name
Summary: Fix regression in varargs method resolution introduced by bad refactoring
Reviewed-by: jjg

     1 /*
     2  * @test /nodynamiccopyright/
     3  * @summary check that abstract methods are discarded in overload resolution diags
     4  * @compile/fail/ref=Neg12.out -XDrawDiagnostics Neg12.java
     5  */
     6 class Neg12 {
     8     interface I1 {
     9         default void m(String s) {};
    10     }
    12     interface I2 {
    13         void m(String s);
    14     }
    16     static class B {
    17         void m(Integer i) { }
    18     }
    20     static class C extends B implements I1 { }
    21     static class D extends B implements I2 { }
    23     void test(C c, D d) {
    24         c.m();
    25         d.m();
    26     }
    27 }

mercurial