jdk-24/test/langtools/tools/javac/6521805/T6521805d.java
2021-11-23 18:14:47 +00:00

35 lines
672 B
Java

/*
* @test /nodynamiccopyright/
* @bug 6521805
* @summary Regression: JDK5/JDK6 javac allows write access to outer class reference
* @author mcimadamore
*
* @compile/fail/ref=T6521805d.out T6521805d.java -XDrawDiagnostics
*/
import java.util.Objects;
class T6521805 {
static class Inner extends T6521805.Outer {
Inner(T6521805 t) {
t.super();
}
T6521805 this$0 = null;
public void foo() {
this$0 = new T6521805();
}
}
class Outer {
{
// access enclosing instance so this$0 field is generated
Objects.requireNonNull(T6521805.this);
}
}
}