langtools/test/tools/javac/T5003235/T5003235a.java
author vromero
Tue, 06 Sep 2016 17:04:43 -0700
changeset 40835 6ab9ed1abc46
parent 39812 6272642715a1
child 41931 d7c9720c4223
permissions -rw-r--r--
8162546: change hidden options -Xdebug to --debug, -XshouldStop to --should-stop, and -diags to --diags Reviewed-by: mcimadamore
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10
06bc494ca11e Initial load
duke
parents:
diff changeset
     1
/*
06bc494ca11e Initial load
duke
parents:
diff changeset
     2
 * @test  /nodynamiccopyright/
06bc494ca11e Initial load
duke
parents:
diff changeset
     3
 * @bug     5003235
06bc494ca11e Initial load
duke
parents:
diff changeset
     4
 * @summary Private inner class accessible from subclasses
06bc494ca11e Initial load
duke
parents:
diff changeset
     5
 * @author  Peter von der Ah\u00e9
40835
6ab9ed1abc46 8162546: change hidden options -Xdebug to --debug, -XshouldStop to --should-stop, and -diags to --diags
vromero
parents: 39812
diff changeset
     6
 * @compile/fail/ref=T5003235a.out --diags:layout=%b:%l:%_%m T5003235a.java
10
06bc494ca11e Initial load
duke
parents:
diff changeset
     7
 */
06bc494ca11e Initial load
duke
parents:
diff changeset
     8
06bc494ca11e Initial load
duke
parents:
diff changeset
     9
class Super {
06bc494ca11e Initial load
duke
parents:
diff changeset
    10
    Inner i;
06bc494ca11e Initial load
duke
parents:
diff changeset
    11
    private class Inner {
06bc494ca11e Initial load
duke
parents:
diff changeset
    12
        void defaultM() {}
06bc494ca11e Initial load
duke
parents:
diff changeset
    13
        protected void protectedM() {}
06bc494ca11e Initial load
duke
parents:
diff changeset
    14
        public void publicM() {}
06bc494ca11e Initial load
duke
parents:
diff changeset
    15
        private void privateM() {}
06bc494ca11e Initial load
duke
parents:
diff changeset
    16
    }
06bc494ca11e Initial load
duke
parents:
diff changeset
    17
}
06bc494ca11e Initial load
duke
parents:
diff changeset
    18
06bc494ca11e Initial load
duke
parents:
diff changeset
    19
class Sub extends Super {
06bc494ca11e Initial load
duke
parents:
diff changeset
    20
    void foo() {
06bc494ca11e Initial load
duke
parents:
diff changeset
    21
        i.defaultM();
06bc494ca11e Initial load
duke
parents:
diff changeset
    22
        i.protectedM();
06bc494ca11e Initial load
duke
parents:
diff changeset
    23
        i.publicM();
06bc494ca11e Initial load
duke
parents:
diff changeset
    24
        i.privateM();
06bc494ca11e Initial load
duke
parents:
diff changeset
    25
    }
06bc494ca11e Initial load
duke
parents:
diff changeset
    26
}