< prev index next >

langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symtab.java

Print this page

        

@@ -152,10 +152,11 @@
     public final ClassSymbol methodClass;
 
     /** A symbol for the java.base module.
      */
     public final ModuleSymbol java_base;
+    public final ModuleSymbol jdk_incubator_mvt;
 
     /** Predefined types.
      */
     public final Type objectType;
     public final Type valueClassType;

@@ -527,12 +528,17 @@
         if (source.allowModules()) {
             java_base = enterModule(names.java_base);
             //avoid completing java.base during the Symtab initialization
             java_base.completer = Completer.NULL_COMPLETER;
             java_base.visiblePackages = Collections.emptyMap();
+
+            jdk_incubator_mvt = enterModule(names.fromString("jdk.incubator.mvt"));
+            jdk_incubator_mvt.completer = Completer.NULL_COMPLETER;
+            jdk_incubator_mvt.visiblePackages = Collections.emptyMap();
         } else {
             java_base = noModule;
+            jdk_incubator_mvt = noModule;
         }
 
         // Get the initial completer for ModuleSymbols from Modules
         moduleCompleter = Modules.instance(context).getCompleter();
 

@@ -598,11 +604,13 @@
         trustMeType = enterClass("java.lang.SafeVarargs");
         nativeHeaderType = enterClass("java.lang.annotation.Native");
         lambdaMetafactory = enterClass("java.lang.invoke.LambdaMetafactory");
         stringConcatFactory = enterClass("java.lang.invoke.StringConcatFactory");
         functionalInterfaceType = enterClass("java.lang.FunctionalInterface");
-        valueCapableClass = enterClass("jvm.internal.value.ValueCapableClass");
+
+        Name vccName = names.fromString("jdk.incubator.mvt.ValueCapableClass");
+        valueCapableClass = enterClass(jdk_incubator_mvt, vccName).type;
 
         synthesizeEmptyInterfaceIfMissing(autoCloseableType);
         synthesizeEmptyInterfaceIfMissing(cloneableType);
         synthesizeEmptyInterfaceIfMissing(serializableType);
         synthesizeEmptyInterfaceIfMissing(lambdaMetafactory);

@@ -644,12 +652,14 @@
             new MethodType(List.nil(), objectType,
                            List.nil(), methodClass),
             arrayClass);
         arrayClass.members().enter(arrayCloneMethod);
 
-        if (java_base != noModule)
+        if (java_base != noModule) {
             java_base.completer = moduleCompleter::complete; //bootstrap issues
+            jdk_incubator_mvt.completer = moduleCompleter::complete; //bootstrap issues
+        }
 
     }
 
     /** Define a new class given its name and owner.
      */
< prev index next >