< prev index next >

test/langtools/tools/javac/SuperInit/EarlyLocalClass.java

Print this page

 1 /*
 2  * @test /nodynamiccopyright/
 3  * @bug 8325805
 4  * @summary Verify local class in early construction context has no outer instance
 5  * @compile/fail/ref=EarlyLocalClass.out -XDrawDiagnostics EarlyLocalClass.java


 6  */
 7 public class EarlyLocalClass {
 8     EarlyLocalClass() {
 9         class Local {
10             void foo() {
11                 EarlyLocalClass.this.hashCode();    // this should FAIL
12             }
13         }
14         new Local();                                // this is OK
15         super();
16         new Local();                                // this is OK
17     }
18 }

 1 /*
 2  * @test /nodynamiccopyright/
 3  * @bug 8325805
 4  * @summary Verify local class in early construction context has no outer instance
 5  * @compile/fail/ref=EarlyLocalClass.out -XDrawDiagnostics EarlyLocalClass.java
 6  * @build InitializationWarningTester
 7  * @run main InitializationWarningTester EarlyLocalClass EarlyLocalClassWarnings.out
 8  */
 9 public class EarlyLocalClass {
10     EarlyLocalClass() {
11         class Local {
12             void foo() {
13                 EarlyLocalClass.this.hashCode();    // this should FAIL
14             }
15         }
16         new Local();                                // this is OK
17         super();
18         new Local();                                // this is OK
19     }
20 }
< prev index next >