test/tools/javac/6521805/T6521805a.java

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

author
mcimadamore
date
Thu, 21 Feb 2013 15:26:46 +0000
changeset 1599
9f0ec00514b6
parent 384
ed31953ca025
child 2525
2eb010b6cb22
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@359 1 /*
jjg@384 2 * @test /nodynamiccopyright/
mcimadamore@359 3 * @bug 6521805
mcimadamore@359 4 * @summary Regression: JDK5/JDK6 javac allows write access to outer class reference
mcimadamore@359 5 * @author mcimadamore
mcimadamore@359 6 *
mcimadamore@359 7 * @compile/fail/ref=T6521805a_1.out T6521805a.java -XDrawDiagnostics
mcimadamore@359 8 * @compile/ref=T6521805a_2.out T6521805a.java -XDwarnOnSyntheticConflicts -XDrawDiagnostics
mcimadamore@359 9 */
mcimadamore@359 10
mcimadamore@359 11 class T6521805a {
mcimadamore@359 12
mcimadamore@359 13 static class Outer {
mcimadamore@359 14 T6521805a this$0 = null;
mcimadamore@359 15 }
mcimadamore@359 16
mcimadamore@359 17 public class Inner extends Outer {
mcimadamore@359 18 public void foo() {
mcimadamore@359 19 this$0 = new T6521805a();
mcimadamore@359 20 }
mcimadamore@359 21 }
mcimadamore@359 22 }

mercurial