test/tools/javac/defaultMethods/Neg09.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

mcimadamore@1393 1 /*
mcimadamore@1393 2 * @test /nodynamiccopyright/
mcimadamore@1393 3 * @summary check that default overrides are properly type-checked
mcimadamore@1415 4 * @compile/fail/ref=Neg09.out -Werror -Xlint:unchecked -XDrawDiagnostics Neg09.java
mcimadamore@1393 5 */
mcimadamore@1393 6 import java.util.List;
mcimadamore@1393 7
mcimadamore@1393 8 class Neg09 {
mcimadamore@1393 9 interface I {
mcimadamore@1393 10 default List<String> m() { return null; }
mcimadamore@1393 11 }
mcimadamore@1393 12
mcimadamore@1393 13 static class C1 {
mcimadamore@1393 14 public List m() { return null; } //unchecked (return) override
mcimadamore@1393 15 }
mcimadamore@1393 16
mcimadamore@1393 17 static class C2 extends C1 implements I { }
mcimadamore@1393 18
mcimadamore@1393 19 static class C3 implements I {
mcimadamore@1393 20 public List m() { return null; } //unchecked (return) override
mcimadamore@1393 21 }
mcimadamore@1393 22 }

mercurial