1 /*
 2  * @test /nodynamiccopyright/
 3  * @bug 8334248
 4  * @summary Invalid error for early construction local class constructor method reference
 5  * @build InitializationWarningTester
 6  * @run main InitializationWarningTester EarlyIndirectOuterCapture
 7  */
 8 
 9 public class EarlyIndirectOuterCapture {
10 
11     EarlyIndirectOuterCapture() {
12         this(null);
13     }
14 
15     EarlyIndirectOuterCapture(InnerSuperclass inner) { }
16 
17     class InnerSuperclass { }
18 
19     static class InnerOuter extends EarlyIndirectOuterCapture {     // accessible
20         class InnerInnerOuter extends EarlyIndirectOuterCapture {   // not accessible
21             InnerInnerOuter() {
22                 super(new InnerSuperclass() { }); // should this be accepted?, InnerSuperclass is not an inner class of InnerInnerOuter
23             }
24 
25             InnerInnerOuter(boolean b) {
26                 super(InnerOuter.this.new InnerSuperclass() { }); // ok, explicit
27             }
28         }
29     }
30 }