1 /* |
1 /* |
2 * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
30 * jdk.compiler/com.sun.tools.javac.main |
30 * jdk.compiler/com.sun.tools.javac.main |
31 * jdk.jdeps/com.sun.tools.classfile |
31 * jdk.jdeps/com.sun.tools.classfile |
32 * @library /tools/lib /tools/javac/lib ../lib |
32 * @library /tools/lib /tools/javac/lib ../lib |
33 * @build toolbox.ToolBox InMemoryFileManager TestResult |
33 * @build toolbox.ToolBox InMemoryFileManager TestResult |
34 * @build AccessToPrivateInnerClassMembersTest SyntheticTestDriver ExpectedClass ExpectedClasses |
34 * @build AccessToPrivateInnerClassMembersTest SyntheticTestDriver ExpectedClass ExpectedClasses |
35 * @run main SyntheticTestDriver AccessToPrivateInnerClassMembersTest 1 |
35 * @run main SyntheticTestDriver AccessToPrivateInnerClassMembersTest |
36 */ |
36 */ |
37 |
37 |
38 /** |
38 /** |
39 * Access from top level class to inner classes. |
39 * Access from top level class to inner classes. |
40 * Synthetic members: |
40 * Synthetic members: |
49 @ExpectedClass(className = "AccessToPrivateInnerClassMembersTest", |
49 @ExpectedClass(className = "AccessToPrivateInnerClassMembersTest", |
50 expectedMethods = {"<init>()", "<clinit>()"}) |
50 expectedMethods = {"<init>()", "<clinit>()"}) |
51 @ExpectedClass(className = "AccessToPrivateInnerClassMembersTest$Inner1", |
51 @ExpectedClass(className = "AccessToPrivateInnerClassMembersTest$Inner1", |
52 expectedMethods = {"<init>(AccessToPrivateInnerClassMembersTest)", "function()"}, |
52 expectedMethods = {"<init>(AccessToPrivateInnerClassMembersTest)", "function()"}, |
53 expectedFields = "var", |
53 expectedFields = "var", |
54 expectedNumberOfSyntheticMethods = 4, |
|
55 expectedNumberOfSyntheticFields = 1) |
54 expectedNumberOfSyntheticFields = 1) |
56 @ExpectedClass(className = "AccessToPrivateInnerClassMembersTest$Inner2", |
55 @ExpectedClass(className = "AccessToPrivateInnerClassMembersTest$Inner2", |
57 expectedMethods = {"function()", "staticFunction()", "<init>()"}, |
56 expectedMethods = {"function()", "staticFunction()", "<init>()"}, |
58 expectedFields = {"staticVar", "var"}, |
57 expectedFields = {"staticVar", "var"}) |
59 expectedNumberOfSyntheticMethods = 7) |
|
60 public class AccessToPrivateInnerClassMembersTest { |
58 public class AccessToPrivateInnerClassMembersTest { |
61 |
59 |
62 private class Inner1 { |
60 private class Inner1 { |
63 private Inner1() {} |
61 private Inner1() {} |
64 private int var; |
62 private int var; |