< prev index next >

test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInAnonymousClassTest.java

Print this page
*** 24,13 ***
--- 24,15 ---
  /*
   * @test
   * @bug 8042251 8062373
   * @summary Testing InnerClasses_attribute of inner classes in anonymous class.
   * @library /tools/lib /tools/javac/lib ../lib
+  * @enablePreview
   * @modules jdk.compiler/com.sun.tools.javac.api
   *          jdk.compiler/com.sun.tools.javac.main
   *          java.base/jdk.internal.classfile.impl
+  * @enablePreview
   * @build toolbox.ToolBox InMemoryFileManager TestResult TestBase
   * @build InnerClassesTestBase
   * @run main InnerClassesInAnonymousClassTest
   */
  

*** 56,11 ***
      }
  
      @Override
      public List<TestCase> generateTestCases() {
          currentClassType = ClassType.CLASS;
!         setPrefix("class Anonymous {} {new Anonymous() {");
          List<TestCase> sources = super.generateTestCases();
  
          currentClassType = ClassType.INTERFACE;
          setPrefix("interface Anonymous {} {new Anonymous() {");
          sources.addAll(super.generateTestCases());
--- 58,11 ---
      }
  
      @Override
      public List<TestCase> generateTestCases() {
          currentClassType = ClassType.CLASS;
!         setPrefix("class Anonymous { int f; } {new Anonymous() {"); // impose identity to make testing predictable.
          List<TestCase> sources = super.generateTestCases();
  
          currentClassType = ClassType.INTERFACE;
          setPrefix("interface Anonymous {} {new Anonymous() {");
          sources.addAll(super.generateTestCases());

*** 75,8 ***
  
      @Override
      public void getAdditionalFlags(Map<String, Set<String>> class2Flags, ClassType type, Modifier... flags) {
          super.getAdditionalFlags(class2Flags, type, flags);
          class2Flags.put("Anonymous", getFlags(currentClassType, Arrays.asList(flags)));
!         class2Flags.put("1", new HashSet<>() {});
      }
  }
--- 77,8 ---
  
      @Override
      public void getAdditionalFlags(Map<String, Set<String>> class2Flags, ClassType type, Modifier... flags) {
          super.getAdditionalFlags(class2Flags, type, flags);
          class2Flags.put("Anonymous", getFlags(currentClassType, Arrays.asList(flags)));
!         class2Flags.put("1", new HashSet<>(Arrays.asList("ACC_IDENTITY")));
      }
  }
< prev index next >