test/tools/javac/defaultMethods/Neg01.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 negative test for ambiguous defaults
mcimadamore@1415 4 * @compile/fail/ref=Neg01.out -XDrawDiagnostics Neg01.java
mcimadamore@1393 5 */
mcimadamore@1393 6
mcimadamore@1393 7 class Neg01 {
mcimadamore@1393 8 interface IA { default int m() { return Neg01.m1(this); } }
mcimadamore@1393 9 interface IB { default int m() { return Neg01.m2(this); } }
mcimadamore@1393 10
mcimadamore@1393 11 static class A implements IA {}
mcimadamore@1393 12 static class B implements IB {}
mcimadamore@1393 13
mcimadamore@1393 14 static class AB implements IA, IB {}
mcimadamore@1393 15
mcimadamore@1393 16 static int m1(IA a) { return 0; }
mcimadamore@1393 17 static int m2(IB b) { return 0; }
mcimadamore@1393 18 }

mercurial