--- old/test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInInnerClassTest.java 2018-06-20 01:16:31.863454349 -0400 +++ new/test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInInnerClassTest.java 2018-06-20 01:16:30.283363326 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,21 +31,30 @@ * jdk.jdeps/com.sun.tools.classfile * @build toolbox.ToolBox InMemoryFileManager TestResult TestBase * @build InnerClassesInInnerClassTestBase InnerClassesTestBase - * @run main InnerClassesInInnerClassTest + * @run main InnerClassesInInnerClassTest true + * @run main InnerClassesInInnerClassTest false */ +import java.util.Arrays; import java.util.List; public class InnerClassesInInnerClassTest extends InnerClassesInInnerClassTestBase { + final boolean expectSyntheticClass; + + public InnerClassesInInnerClassTest(boolean expectSyntheticClass) { + this.expectSyntheticClass = expectSyntheticClass; + } + public static void main(String[] args) throws TestFailedException { - InnerClassesTestBase test = new InnerClassesInInnerClassTest(); + boolean expectSyntheticClass = Boolean.parseBoolean(args[0]); + InnerClassesTestBase test = new InnerClassesInInnerClassTest(expectSyntheticClass); test.test("InnerClassesSrc$Inner", "Inner", "1"); } @Override public void setProperties() { - setHasSyntheticClass(true); + setHasSyntheticClass(expectSyntheticClass); setOuterClassType(ClassType.CLASS); setInnerClassType(ClassType.CLASS); } @@ -62,4 +71,11 @@ return sources; } + + @Override + protected List getCompileOptions() { + return !expectSyntheticClass ? + super.getCompileOptions() : + Arrays.asList("-source", "10", "-target", "10"); + } }