13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 /*
25 * @test
26 * @summary sourcefile attribute test for synthetic class.
27 * @bug 8040129
28 * @library /tools/lib /tools/javac/lib ../lib
29 * @modules jdk.compiler/com.sun.tools.javac.api
30 * jdk.compiler/com.sun.tools.javac.main
31 * jdk.jdeps/com.sun.tools.classfile
32 * @build toolbox.ToolBox InMemoryFileManager TestBase SourceFileTestBase
33 * @run main SyntheticClassTest
34 */
35
36 public class SyntheticClassTest extends SourceFileTestBase {
37 public static void main(String[] args) throws Exception {
38 new Inner();
39
40 new SyntheticClassTest().test("SyntheticClassTest$1", "SyntheticClassTest.java");
41 }
42
43 static class Inner {
44 private Inner() {
45 }
46 }
47 }
|
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 /*
25 * @test
26 * @summary sourcefile attribute test for synthetic class.
27 * @bug 8040129
28 * @library /tools/lib /tools/javac/lib ../lib
29 * @modules jdk.compiler/com.sun.tools.javac.api
30 * jdk.compiler/com.sun.tools.javac.main
31 * jdk.jdeps/com.sun.tools.classfile
32 * @build toolbox.ToolBox InMemoryFileManager TestBase SourceFileTestBase
33 * @compile -source 10 -target 10 SyntheticClassTest.java
34 * @run main SyntheticClassTest true
35 * @clean SyntheticClassTest$1
36 * @compile SyntheticClassTest.java
37 * @run main SyntheticClassTest false
38 */
39
40 import java.nio.file.NoSuchFileException;
41
42 public class SyntheticClassTest extends SourceFileTestBase {
43 public static void main(String[] args) throws Exception {
44 boolean expectSynthetic = Boolean.parseBoolean(args[0]);
45 new Inner();
46
47 try {
48 new SyntheticClassTest().test("SyntheticClassTest$1", "SyntheticClassTest.java");
49 if (!expectSynthetic) {
50 throw new AssertionError("Synthetic class should not have been emitted!");
51 }
52 } catch (NoSuchFileException ex) {
53 if (expectSynthetic) {
54 throw new AssertionError("Synthetic class should have been emitted!");
55 }
56 }
57 }
58
59 static class Inner {
60 private Inner() {
61 }
62 }
63 }
|