public class com.sun.tools.javac.comp.Modules extends com.sun.tools.javac.tree.JCTree$Visitor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.javac.comp.Modules
  super_class: com.sun.tools.javac.tree.JCTree$Visitor
{
  private static final java.lang.String ALL_SYSTEM;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ALL-SYSTEM"

  private static final java.lang.String ALL_MODULE_PATH;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "ALL-MODULE-PATH"

  private final com.sun.tools.javac.util.Log log;
    descriptor: Lcom/sun/tools/javac/util/Log;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.util.Names names;
    descriptor: Lcom/sun/tools/javac/util/Names;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.Symtab syms;
    descriptor: Lcom/sun/tools/javac/code/Symtab;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.comp.Attr attr;
    descriptor: Lcom/sun/tools/javac/comp/Attr;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.comp.Check chk;
    descriptor: Lcom/sun/tools/javac/comp/Check;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.DeferredLintHandler deferredLintHandler;
    descriptor: Lcom/sun/tools/javac/code/DeferredLintHandler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.comp.TypeEnvs typeEnvs;
    descriptor: Lcom/sun/tools/javac/comp/TypeEnvs;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.Types types;
    descriptor: Lcom/sun/tools/javac/code/Types;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.tools.JavaFileManager fileManager;
    descriptor: Ljavax/tools/JavaFileManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.ModuleFinder moduleFinder;
    descriptor: Lcom/sun/tools/javac/code/ModuleFinder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.code.Source source;
    descriptor: Lcom/sun/tools/javac/code/Source;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.jvm.Target target;
    descriptor: Lcom/sun/tools/javac/jvm/Target;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean allowModules;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean allowAccessIntoSystem;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public final boolean multiModuleMode;
    descriptor: Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private final com.sun.tools.javac.util.Name java_se;
    descriptor: Lcom/sun/tools/javac/util/Name;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.tools.javac.util.Name java_;
    descriptor: Lcom/sun/tools/javac/util/Name;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  com.sun.tools.javac.code.Symbol$ModuleSymbol defaultModule;
    descriptor: Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    flags: (0x0000) 

  private final java.lang.String addExportsOpt;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.Map<com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Set<com.sun.tools.javac.code.Directive$ExportsDirective>> addExports;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;>;

  private final java.lang.String addReadsOpt;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.Map<com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Set<com.sun.tools.javac.code.Directive$RequiresDirective>> addReads;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set<Lcom/sun/tools/javac/code/Directive$RequiresDirective;>;>;

  private final java.lang.String addModsOpt;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Set<java.lang.String> extraAddMods;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private final java.lang.String limitModsOpt;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Set<java.lang.String> extraLimitMods;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private final java.lang.String moduleVersionOpt;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean lintOptions;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> rootModules;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  private final java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> warnedMissing;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  public com.sun.tools.javac.comp.Modules$PackageNameFinder findPackageInFile;
    descriptor: Lcom/sun/tools/javac/comp/Modules$PackageNameFinder;
    flags: (0x0001) ACC_PUBLIC

  private static final java.lang.String XMODULES_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "-Xmodule:"

  int depth;
    descriptor: I
    flags: (0x0000) 

  boolean inInitModules;
    descriptor: Z
    flags: (0x0000) 

  private final com.sun.tools.javac.code.Symbol$Completer mainCompleter;
    descriptor: Lcom/sun/tools/javac/code/Symbol$Completer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> allModules;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  private static final java.util.function.Predicate<com.sun.tools.javac.code.Symbol$ModuleSymbol> IS_AUTOMATIC;
    descriptor: Ljava/util/function/Predicate;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  private final java.util.Map<com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol>> requiresTransitiveCache;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1345
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$0(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
         1: .line 1344
            putstatic com.sun.tools.javac.comp.Modules.IS_AUTOMATIC:Ljava/util/function/Predicate;
         2: .line 1345
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static com.sun.tools.javac.comp.Modules instance(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/Modules;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.sun.tools.javac.util.Context context
         0: .line 177
            aload 0 /* context */
            ldc Lcom/sun/tools/javac/comp/Modules;
            invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.sun.tools.javac.comp.Modules
            astore 1 /* instance */
        start local 1 // com.sun.tools.javac.comp.Modules instance
         1: .line 178
            aload 1 /* instance */
            ifnonnull 3
         2: .line 179
            new com.sun.tools.javac.comp.Modules
            dup
            aload 0 /* context */
            invokespecial com.sun.tools.javac.comp.Modules.<init>:(Lcom/sun/tools/javac/util/Context;)V
            astore 1 /* instance */
         3: .line 180
      StackMap locals: com.sun.tools.javac.comp.Modules
      StackMap stack:
            aload 1 /* instance */
            areturn
        end local 1 // com.sun.tools.javac.comp.Modules instance
        end local 0 // com.sun.tools.javac.util.Context context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0   context  Lcom/sun/tools/javac/util/Context;
            1    4     1  instance  Lcom/sun/tools/javac/comp/Modules;
    MethodParameters:
         Name  Flags
      context  

  protected void <init>(com.sun.tools.javac.util.Context);
    descriptor: (Lcom/sun/tools/javac/util/Context;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.Context context
         0: .line 183
            aload 0 /* this */
            invokespecial com.sun.tools.javac.tree.JCTree$Visitor.<init>:()V
         1: .line 164
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.javac.comp.Modules.extraAddMods:Ljava/util/Set;
         2: .line 166
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.javac.comp.Modules.extraLimitMods:Ljava/util/Set;
         3: .line 171
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
         4: .line 172
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.javac.comp.Modules.warnedMissing:Ljava/util/Set;
         5: .line 221
            aload 0 /* this */
            iconst_m1
            putfield com.sun.tools.javac.comp.Modules.depth:I
         6: .line 621
            aload 0 /* this */
            new com.sun.tools.javac.comp.Modules$1
            dup
            aload 0 /* this */
            invokespecial com.sun.tools.javac.comp.Modules$1.<init>:(Lcom/sun/tools/javac/comp/Modules;)V
            putfield com.sun.tools.javac.comp.Modules.mainCompleter:Lcom/sun/tools/javac/code/Symbol$Completer;
         7: .line 1440
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.sun.tools.javac.comp.Modules.requiresTransitiveCache:Ljava/util/Map;
         8: .line 184
            aload 1 /* context */
            ldc Lcom/sun/tools/javac/comp/Modules;
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.util.Context.put:(Ljava/lang/Class;Ljava/lang/Object;)V
         9: .line 185
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.util.Log.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Log;
            putfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
        10: .line 186
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.util.Names.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Names;
            putfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
        11: .line 187
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.code.Symtab.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Symtab;
            putfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
        12: .line 188
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.comp.Attr.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/Attr;
            putfield com.sun.tools.javac.comp.Modules.attr:Lcom/sun/tools/javac/comp/Attr;
        13: .line 189
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.comp.Check.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/Check;
            putfield com.sun.tools.javac.comp.Modules.chk:Lcom/sun/tools/javac/comp/Check;
        14: .line 190
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.code.DeferredLintHandler.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/DeferredLintHandler;
            putfield com.sun.tools.javac.comp.Modules.deferredLintHandler:Lcom/sun/tools/javac/code/DeferredLintHandler;
        15: .line 191
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.comp.TypeEnvs.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/TypeEnvs;
            putfield com.sun.tools.javac.comp.Modules.typeEnvs:Lcom/sun/tools/javac/comp/TypeEnvs;
        16: .line 192
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.code.ModuleFinder.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/ModuleFinder;
            putfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
        17: .line 193
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.code.Types.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Types;
            putfield com.sun.tools.javac.comp.Modules.types:Lcom/sun/tools/javac/code/Types;
        18: .line 194
            aload 0 /* this */
            aload 1 /* context */
            ldc Ljavax/tools/JavaFileManager;
            invokevirtual com.sun.tools.javac.util.Context.get:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast javax.tools.JavaFileManager
            putfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
        19: .line 195
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.code.Source.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Source;
            putfield com.sun.tools.javac.comp.Modules.source:Lcom/sun/tools/javac/code/Source;
        20: .line 196
            aload 0 /* this */
            aload 1 /* context */
            invokestatic com.sun.tools.javac.jvm.Target.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/Target;
            putfield com.sun.tools.javac.comp.Modules.target:Lcom/sun/tools/javac/jvm/Target;
        21: .line 197
            aload 0 /* this */
            getstatic com.sun.tools.javac.code.Source$Feature.MODULES:Lcom/sun/tools/javac/code/Source$Feature;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.source:Lcom/sun/tools/javac/code/Source;
            invokevirtual com.sun.tools.javac.code.Source$Feature.allowedInSource:(Lcom/sun/tools/javac/code/Source;)Z
            putfield com.sun.tools.javac.comp.Modules.allowModules:Z
        22: .line 198
            aload 1 /* context */
            invokestatic com.sun.tools.javac.util.Options.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Options;
            astore 2 /* options */
        start local 2 // com.sun.tools.javac.util.Options options
        23: .line 200
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.RELEASE:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.isUnset:(Lcom/sun/tools/javac/main/Option;)Z
            putfield com.sun.tools.javac.comp.Modules.allowAccessIntoSystem:Z
        24: .line 201
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.XLINT_CUSTOM:Lcom/sun/tools/javac/main/Option;
            new java.lang.StringBuilder
            dup
            ldc "-"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic com.sun.tools.javac.code.Lint$LintCategory.OPTIONS:Lcom/sun/tools/javac/code/Lint$LintCategory;
            getfield com.sun.tools.javac.code.Lint$LintCategory.option:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Options.isUnset:(Lcom/sun/tools/javac/main/Option;Ljava/lang/String;)Z
            putfield com.sun.tools.javac.comp.Modules.lintOptions:Z
        25: .line 203
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.MODULE_SOURCE_PATH:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            putfield com.sun.tools.javac.comp.Modules.multiModuleMode:Z
        26: .line 204
            aload 1 /* context */
            invokestatic com.sun.tools.javac.jvm.ClassWriter.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/ClassWriter;
            astore 3 /* classWriter */
        start local 3 // com.sun.tools.javac.jvm.ClassWriter classWriter
        27: .line 205
            aload 3 /* classWriter */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.multiModuleMode:Z
            putfield com.sun.tools.javac.jvm.ClassWriter.multiModuleMode:Z
        28: .line 206
            aload 1 /* context */
            invokestatic com.sun.tools.javac.jvm.JNIWriter.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/JNIWriter;
            astore 4 /* jniWriter */
        start local 4 // com.sun.tools.javac.jvm.JNIWriter jniWriter
        29: .line 207
            aload 4 /* jniWriter */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.multiModuleMode:Z
            putfield com.sun.tools.javac.jvm.JNIWriter.multiModuleMode:Z
        30: .line 209
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            ldc "java.se"
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            putfield com.sun.tools.javac.comp.Modules.java_se:Lcom/sun/tools/javac/util/Name;
        31: .line 210
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            ldc "java."
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            putfield com.sun.tools.javac.comp.Modules.java_:Lcom/sun/tools/javac/util/Name;
        32: .line 212
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.ADD_EXPORTS:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.get:(Lcom/sun/tools/javac/main/Option;)Ljava/lang/String;
            putfield com.sun.tools.javac.comp.Modules.addExportsOpt:Ljava/lang/String;
        33: .line 213
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.ADD_READS:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.get:(Lcom/sun/tools/javac/main/Option;)Ljava/lang/String;
            putfield com.sun.tools.javac.comp.Modules.addReadsOpt:Ljava/lang/String;
        34: .line 214
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.ADD_MODULES:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.get:(Lcom/sun/tools/javac/main/Option;)Ljava/lang/String;
            putfield com.sun.tools.javac.comp.Modules.addModsOpt:Ljava/lang/String;
        35: .line 215
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.LIMIT_MODULES:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.get:(Lcom/sun/tools/javac/main/Option;)Ljava/lang/String;
            putfield com.sun.tools.javac.comp.Modules.limitModsOpt:Ljava/lang/String;
        36: .line 216
            aload 0 /* this */
            aload 2 /* options */
            getstatic com.sun.tools.javac.main.Option.MODULE_VERSION:Lcom/sun/tools/javac/main/Option;
            invokevirtual com.sun.tools.javac.util.Options.get:(Lcom/sun/tools/javac/main/Option;)Ljava/lang/String;
            putfield com.sun.tools.javac.comp.Modules.moduleVersionOpt:Ljava/lang/String;
        37: .line 217
            return
        end local 4 // com.sun.tools.javac.jvm.JNIWriter jniWriter
        end local 3 // com.sun.tools.javac.jvm.ClassWriter classWriter
        end local 2 // com.sun.tools.javac.util.Options options
        end local 1 // com.sun.tools.javac.util.Context context
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   38     0         this  Lcom/sun/tools/javac/comp/Modules;
            0   38     1      context  Lcom/sun/tools/javac/util/Context;
           23   38     2      options  Lcom/sun/tools/javac/util/Options;
           27   38     3  classWriter  Lcom/sun/tools/javac/jvm/ClassWriter;
           29   38     4    jniWriter  Lcom/sun/tools/javac/jvm/JNIWriter;
    MethodParameters:
         Name  Flags
      context  

  public void addExtraAddModules(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // java.lang.String[] extras
         0: .line 224
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.extraAddMods:Ljava/util/Set;
            aload 1 /* extras */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         1: .line 225
            return
        end local 1 // java.lang.String[] extras
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/tools/javac/comp/Modules;
            0    2     1  extras  [Ljava/lang/String;
    MethodParameters:
        Name  Flags
      extras  

  public void initModules(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>);
    descriptor: (Lcom/sun/tools/javac/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.List trees
         0: .line 229
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.inInitModules:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
         3: .line 231
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.javac.comp.Modules.inInitModules:Z
         4: .line 232
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNull:(Ljava/lang/Object;)V
         5: .line 233
            aload 0 /* this */
            aload 1 /* trees */
            aload 0 /* this */
            invokedynamic accept(Lcom/sun/tools/javac/comp/Modules;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/javac/comp/Modules.lambda$1(Ljava/util/Set;)V (7)
                  (Ljava/util/Set;)V
         6: .line 240
            aconst_null
         7: .line 233
            invokevirtual com.sun.tools.javac.comp.Modules.enter:(Lcom/sun/tools/javac/util/List;Ljava/util/function/Consumer;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
            pop
         8: .line 241
            goto 12
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 2
        10: .line 242
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.javac.comp.Modules.inInitModules:Z
        11: .line 243
            aload 2
            athrow
        12: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.javac.comp.Modules.inInitModules:Z
        13: .line 244
            return
        end local 1 // com.sun.tools.javac.util.List trees
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Lcom/sun/tools/javac/comp/Modules;
            0   14     1  trees  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
      Exception table:
        from    to  target  type
           3     9       9  any
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;)V
    MethodParameters:
       Name  Flags
      trees  

  public boolean enter(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>, com.sun.tools.javac.code.Symbol$ClassSymbol);
    descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.List trees
        start local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
         0: .line 247
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            ifnonnull 1
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.inInitModules:Z
            ifne 1
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allowModules:Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
         3: .line 248
            aload 0 /* this */
            aload 1 /* trees */
            invokedynamic accept()Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/javac/comp/Modules.lambda$2(Ljava/util/Set;)V (6)
                  (Ljava/util/Set;)V
            aload 2 /* c */
            invokevirtual com.sun.tools.javac.comp.Modules.enter:(Lcom/sun/tools/javac/util/List;Ljava/util/function/Consumer;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
            ireturn
        end local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        end local 1 // com.sun.tools.javac.util.List trees
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/sun/tools/javac/comp/Modules;
            0    4     1  trees  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
            0    4     2      c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
    MethodParameters:
       Name  Flags
      trees  
      c      

  private boolean enter(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>, java.util.function.Consumer<java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol>>, com.sun.tools.javac.code.Symbol$ClassSymbol);
    descriptor: (Lcom/sun/tools/javac/util/List;Ljava/util/function/Consumer;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=4
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.List trees
        start local 2 // java.util.function.Consumer init
        start local 3 // com.sun.tools.javac.code.Symbol$ClassSymbol c
         0: .line 252
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allowModules:Z
            ifne 7
         1: .line 253
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 4
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.function.Consumer com.sun.tools.javac.code.Symbol$ClassSymbol top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCCompilationUnit
            astore 4 /* tree */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         3: .line 254
            aload 4 /* tree */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.noModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        end local 4 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         4: .line 253
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 256
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.noModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
         6: .line 257
            iconst_1
            ireturn
         7: .line 260
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.function.Consumer com.sun.tools.javac.code.Symbol$ClassSymbol
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.nerrors:I
            istore 4 /* startErrors */
        start local 4 // int startErrors
         8: .line 262
            aload 0 /* this */
            dup
            getfield com.sun.tools.javac.comp.Modules.depth:I
            iconst_1
            iadd
            putfield com.sun.tools.javac.comp.Modules.depth:I
         9: .line 265
            aload 0 /* this */
            aload 1 /* trees */
            aload 3 /* c */
            invokevirtual com.sun.tools.javac.comp.Modules.enterModules:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Set;
            astore 5 /* roots */
        start local 5 // java.util.Set roots
        10: .line 267
            aload 0 /* this */
            aload 1 /* trees */
            aload 5 /* roots */
            aload 3 /* c */
            invokevirtual com.sun.tools.javac.comp.Modules.setCompilationUnitModules:(Lcom/sun/tools/javac/util/List;Ljava/util/Set;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
        11: .line 269
            aload 2 /* init */
            aload 5 /* roots */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
        12: .line 271
            aload 5 /* roots */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 15
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.function.Consumer com.sun.tools.javac.code.Symbol$ClassSymbol int java.util.Set top java.util.Iterator
      StackMap stack:
        13: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 6 /* msym */
        start local 6 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        14: .line 272
            aload 6 /* msym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
        end local 6 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        15: .line 271
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        end local 5 // java.util.Set roots
        16: .line 274
            goto 23
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.function.Consumer com.sun.tools.javac.code.Symbol$ClassSymbol int
      StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
        17: astore 5 /* ex */
        start local 5 // com.sun.tools.javac.code.Symbol$CompletionFailure ex
        18: .line 275
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.chk:Lcom/sun/tools/javac/comp/Check;
            aconst_null
            aload 5 /* ex */
            invokevirtual com.sun.tools.javac.comp.Check.completionError:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol$CompletionFailure;)Lcom/sun/tools/javac/code/Type;
            pop
        end local 5 // com.sun.tools.javac.code.Symbol$CompletionFailure ex
        19: .line 277
            aload 0 /* this */
            dup
            getfield com.sun.tools.javac.comp.Modules.depth:I
            iconst_1
            isub
            putfield com.sun.tools.javac.comp.Modules.depth:I
            goto 24
        20: .line 276
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        21: .line 277
            aload 0 /* this */
            dup
            getfield com.sun.tools.javac.comp.Modules.depth:I
            iconst_1
            isub
            putfield com.sun.tools.javac.comp.Modules.depth:I
        22: .line 278
            aload 8
            athrow
        23: .line 277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.tools.javac.comp.Modules.depth:I
            iconst_1
            isub
            putfield com.sun.tools.javac.comp.Modules.depth:I
        24: .line 280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getfield com.sun.tools.javac.util.Log.nerrors:I
            iload 4 /* startErrors */
            if_icmpne 25
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        25: iconst_0
            ireturn
        end local 4 // int startErrors
        end local 3 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        end local 2 // java.util.function.Consumer init
        end local 1 // com.sun.tools.javac.util.List trees
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   26     0         this  Lcom/sun/tools/javac/comp/Modules;
            0   26     1        trees  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
            0   26     2         init  Ljava/util/function/Consumer<Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;>;
            0   26     3            c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            3    4     4         tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            8   26     4  startErrors  I
           10   16     5        roots  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           14   15     6         msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           18   19     5           ex  Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
      Exception table:
        from    to  target  type
           9    16      17  Class com.sun.tools.javac.code.Symbol$CompletionFailure
           9    19      20  any
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;Ljava/util/function/Consumer<Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;>;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Z
    MethodParameters:
       Name  Flags
      trees  
      init   
      c      

  public com.sun.tools.javac.code.Symbol$Completer getCompleter();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$Completer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 284
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.mainCompleter:Lcom/sun/tools/javac/code/Symbol$Completer;
            areturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;

  public com.sun.tools.javac.code.Symbol$ModuleSymbol getDefaultModule();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 288
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            areturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;

  public boolean modulesInitialized();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 292
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/comp/Modules;

  private java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> enterModules(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>, com.sun.tools.javac.code.Symbol$ClassSymbol);
    descriptor: (Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.List trees
        start local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
         0: .line 296
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 3 /* modules */
        start local 3 // java.util.Set modules
         1: .line 297
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 10
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ClassSymbol java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCCompilationUnit
            astore 4 /* tree */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         3: .line 298
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            astore 6 /* prev */
        start local 6 // javax.tools.JavaFileObject prev
         4: .line 300
            aload 0 /* this */
            aload 4 /* tree */
            aload 2 /* c */
            aload 3 /* modules */
            invokevirtual com.sun.tools.javac.comp.Modules.enterModule:(Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set;)V
         5: .line 301
            goto 9
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ClassSymbol java.util.Set com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator javax.tools.JavaFileObject
      StackMap stack: java.lang.Throwable
         6: astore 7
         7: .line 302
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
         8: .line 303
            aload 7
            athrow
         9: .line 302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        end local 6 // javax.tools.JavaFileObject prev
        end local 4 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        10: .line 297
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ClassSymbol java.util.Set top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        11: .line 305
            aload 3 /* modules */
            areturn
        end local 3 // java.util.Set modules
        end local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        end local 1 // com.sun.tools.javac.util.List trees
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lcom/sun/tools/javac/comp/Modules;
            0   12     1    trees  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
            0   12     2        c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            1   12     3  modules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            3   10     4     tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            4   10     6     prev  Ljavax/tools/JavaFileObject;
      Exception table:
        from    to  target  type
           4     6       6  any
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
    MethodParameters:
       Name  Flags
      trees  
      c      

  private void enterModule(com.sun.tools.javac.tree.JCTree$JCCompilationUnit, com.sun.tools.javac.code.Symbol$ClassSymbol, java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol>);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=4
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit toplevel
        start local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        start local 3 // java.util.Set modules
         0: .line 310
            aload 1 /* toplevel */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            ldc "module-info"
            getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
            invokeinterface javax.tools.JavaFileObject.isNameCompatible:(Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Z
            istore 4 /* isModuleInfo */
        start local 4 // boolean isModuleInfo
         1: .line 311
            aload 1 /* toplevel */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getModuleDecl:()Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* isModuleDecl */
        start local 5 // boolean isModuleDecl
         4: .line 312
            iload 5 /* isModuleDecl */
            ifeq 31
         5: .line 313
            aload 1 /* toplevel */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getModuleDecl:()Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            astore 6 /* decl */
        start local 6 // com.sun.tools.javac.tree.JCTree$JCModuleDecl decl
         6: .line 314
            iload 4 /* isModuleInfo */
            ifne 8
         7: .line 315
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* decl */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCModuleDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleDeclSbInModuleInfoJava:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
         8: .line 317
      StackMap locals: int com.sun.tools.javac.tree.JCTree$JCModuleDecl
      StackMap stack:
            aload 6 /* decl */
            getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.qualId:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokestatic com.sun.tools.javac.tree.TreeInfo.fullName:(Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/Name;
            astore 7 /* name */
        start local 7 // com.sun.tools.javac.util.Name name
         9: .line 319
            aload 2 /* c */
            ifnull 16
        10: .line 320
            aload 2 /* c */
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 8 /* sym */
        start local 8 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        11: .line 321
            aload 8 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 322
            aload 6 /* decl */
            getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.qualId:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokestatic com.sun.tools.javac.tree.TreeInfo.fullName:(Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/Name;
            astore 9 /* treeName */
        start local 9 // com.sun.tools.javac.util.Name treeName
        13: .line 323
            aload 8 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            aload 9 /* treeName */
            if_acmpeq 20
        14: .line 324
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* decl */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCModuleDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            aload 7 /* name */
            aload 8 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleNameMismatch:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        end local 9 // com.sun.tools.javac.util.Name treeName
        15: .line 326
            goto 20
        end local 8 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        16: .line 327
      StackMap locals: com.sun.tools.javac.util.Name
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 7 /* name */
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 8 /* sym */
        start local 8 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        17: .line 328
            aload 8 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
            ifnull 20
            aload 8 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
            aload 1 /* toplevel */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            if_acmpeq 20
        18: .line 329
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* decl */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCModuleDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            aload 8 /* sym */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.DuplicateModule:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        19: .line 330
            return
        20: .line 333
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 8 /* sym */
            aload 0 /* this */
            aload 1 /* toplevel */
            invokevirtual com.sun.tools.javac.comp.Modules.getSourceCompleter:(Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;)Lcom/sun/tools/javac/code/Symbol$Completer;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
        21: .line 334
            aload 8 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            aload 1 /* toplevel */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            putfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
        22: .line 335
            aload 6 /* decl */
            aload 8 /* sym */
            putfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.sym:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        23: .line 337
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.multiModuleMode:Z
            ifne 24
            aload 3 /* modules */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 26
        24: .line 338
      StackMap locals:
      StackMap stack:
            aload 3 /* modules */
            aload 8 /* sym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        25: .line 339
            goto 27
        26: .line 340
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 1 /* toplevel */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.TooManyModules:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        27: .line 343
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.comp.Env
            dup
            aload 6 /* decl */
            aconst_null
            invokespecial com.sun.tools.javac.comp.Env.<init>:(Lcom/sun/tools/javac/tree/JCTree;Ljava/lang/Object;)V
            astore 9 /* provisionalEnv */
        start local 9 // com.sun.tools.javac.comp.Env provisionalEnv
        28: .line 345
            aload 9 /* provisionalEnv */
            aload 1 /* toplevel */
            putfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
        29: .line 346
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.typeEnvs:Lcom/sun/tools/javac/comp/TypeEnvs;
            aload 8 /* sym */
            aload 9 /* provisionalEnv */
            invokevirtual com.sun.tools.javac.comp.TypeEnvs.put:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;Lcom/sun/tools/javac/comp/Env;)Lcom/sun/tools/javac/comp/Env;
            pop
        end local 9 // com.sun.tools.javac.comp.Env provisionalEnv
        end local 8 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        end local 7 // com.sun.tools.javac.util.Name name
        end local 6 // com.sun.tools.javac.tree.JCTree$JCModuleDecl decl
        30: .line 347
            goto 37
      StackMap locals:
      StackMap stack:
        31: iload 4 /* isModuleInfo */
            ifeq 37
        32: .line 348
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.multiModuleMode:Z
            ifeq 37
        33: .line 349
            aload 1 /* toplevel */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.defs:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
            ifeq 34
            aload 1 /* toplevel */
            goto 35
      StackMap locals:
      StackMap stack:
        34: aload 1 /* toplevel */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.defs:Lcom/sun/tools/javac/util/List;
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree
      StackMap locals:
      StackMap stack: com.sun.tools.javac.tree.JCTree
        35: astore 6 /* tree */
        start local 6 // com.sun.tools.javac.tree.JCTree tree
        36: .line 350
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.ExpectedModule:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        end local 6 // com.sun.tools.javac.tree.JCTree tree
        37: .line 353
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean isModuleDecl
        end local 4 // boolean isModuleInfo
        end local 3 // java.util.Set modules
        end local 2 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        end local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit toplevel
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   38     0            this  Lcom/sun/tools/javac/comp/Modules;
            0   38     1        toplevel  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            0   38     2               c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            0   38     3         modules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            1   38     4    isModuleInfo  Z
            4   38     5    isModuleDecl  Z
            6   30     6            decl  Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            9   30     7            name  Lcom/sun/tools/javac/util/Name;
           11   16     8             sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           17   30     8             sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           13   15     9        treeName  Lcom/sun/tools/javac/util/Name;
           28   30     9  provisionalEnv  Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
           36   37     6            tree  Lcom/sun/tools/javac/tree/JCTree;
    Signature: (Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;)V
    MethodParameters:
          Name  Flags
      toplevel  
      c         
      modules   

  private void setCompilationUnitModules(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>, java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol>, com.sun.tools.javac.code.Symbol$ClassSymbol);
    descriptor: (Lcom/sun/tools/javac/util/List;Ljava/util/Set;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=14, args_size=4
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.List trees
        start local 2 // java.util.Set rootModules
        start local 3 // com.sun.tools.javac.code.Symbol$ClassSymbol c
         0: .line 357
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.multiModuleMode:Z
            ifeq 81
         1: .line 358
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.checkNoAllModulePath:()V
         2: .line 359
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 74
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCCompilationUnit
            astore 4 /* tree */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         4: .line 360
            aload 4 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.defs:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
            ifeq 7
         5: .line 361
            aload 4 /* tree */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
         6: .line 362
            goto 74
         7: .line 365
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            astore 6 /* prev */
        start local 6 // javax.tools.JavaFileObject prev
         8: .line 367
            aload 0 /* this */
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.comp.Modules.getModuleLocation:(Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;)Ljavax/tools/JavaFileManager$Location;
            astore 7 /* msplocn */
        start local 7 // javax.tools.JavaFileManager$Location msplocn
         9: .line 368
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 14
        10: .line 369
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
        11: .line 370
            aload 4 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
        12: .line 369
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileManager$Location;
        13: .line 370
            goto 15
        14: .line 371
      StackMap locals: javax.tools.JavaFileObject javax.tools.JavaFileManager$Location
      StackMap stack:
            aconst_null
        15: .line 368
      StackMap locals:
      StackMap stack: javax.tools.JavaFileManager$Location
            astore 8 /* plocn */
        start local 8 // javax.tools.JavaFileManager$Location plocn
        16: .line 373
            aload 8 /* plocn */
            ifnull 26
        17: .line 374
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 8 /* plocn */
            invokeinterface javax.tools.JavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            astore 9 /* name */
        start local 9 // com.sun.tools.javac.util.Name name
        18: .line 375
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
            aload 9 /* name */
            invokevirtual com.sun.tools.javac.code.ModuleFinder.findModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 10 /* msym */
        start local 10 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        19: .line 376
            aload 4 /* tree */
            aload 10 /* msym */
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        20: .line 377
            aload 2 /* rootModules */
            aload 10 /* msym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        21: .line 379
            aload 7 /* msplocn */
            ifnull 73
        22: .line 380
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 7 /* msplocn */
            invokeinterface javax.tools.JavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            astore 11 /* mspname */
        start local 11 // com.sun.tools.javac.util.Name mspname
        23: .line 381
            aload 9 /* name */
            aload 11 /* mspname */
            if_acmpeq 73
        24: .line 382
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            aload 9 /* name */
            aload 11 /* mspname */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.FilePatchedAndMsp:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        end local 11 // com.sun.tools.javac.util.Name mspname
        end local 10 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 9 // com.sun.tools.javac.util.Name name
        25: .line 385
            goto 73
      StackMap locals: javax.tools.JavaFileManager$Location
      StackMap stack:
        26: aload 7 /* msplocn */
            ifnull 59
        27: .line 386
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getModuleDecl:()Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            ifnull 32
        28: .line 388
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 7 /* msplocn */
            ldc "module-info"
            getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
            invokeinterface javax.tools.JavaFileManager.getJavaFileForInput:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Ljavax/tools/JavaFileObject;
        29: .line 387
            astore 9 /* canonical */
        start local 9 // javax.tools.JavaFileObject canonical
        30: .line 389
            aload 9 /* canonical */
            ifnull 31
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 9 /* canonical */
            aload 4 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokeinterface javax.tools.JavaFileManager.isSameFile:(Ljavax/tools/FileObject;Ljavax/tools/FileObject;)Z
            ifne 32
        31: .line 390
      StackMap locals: javax.tools.JavaFileObject
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleNotFoundOnModuleSourcePath:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        end local 9 // javax.tools.JavaFileObject canonical
        32: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 7 /* msplocn */
            invokeinterface javax.tools.JavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            astore 9 /* name */
        start local 9 // com.sun.tools.javac.util.Name name
        33: .line 395
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getModuleDecl:()Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            astore 11 /* decl */
        start local 11 // com.sun.tools.javac.tree.JCTree$JCModuleDecl decl
        34: .line 396
            aload 11 /* decl */
            ifnull 39
        35: .line 397
            aload 11 /* decl */
            getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.sym:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 10 /* msym */
        start local 10 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        36: .line 398
            aload 10 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            aload 9 /* name */
            if_acmpeq 42
        37: .line 399
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 11 /* decl */
            getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.qualId:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            aload 10 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            aload 9 /* name */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleNameMismatch:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        38: .line 401
            goto 42
        end local 10 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        39: .line 402
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator javax.tools.JavaFileObject javax.tools.JavaFileManager$Location javax.tools.JavaFileManager$Location com.sun.tools.javac.util.Name top com.sun.tools.javac.tree.JCTree$JCModuleDecl
      StackMap stack:
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getPackage:()Lcom/sun/tools/javac/tree/JCTree$JCPackageDecl;
            ifnonnull 41
        40: .line 403
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.UnnamedPkgNotAllowedNamedModules:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        41: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 9 /* name */
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 10 /* msym */
        start local 10 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        42: .line 407
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator javax.tools.JavaFileObject javax.tools.JavaFileManager$Location javax.tools.JavaFileManager$Location com.sun.tools.javac.util.Name com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.tree.JCTree$JCModuleDecl
      StackMap stack:
            aload 10 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
            ifnonnull 56
        43: .line 408
            aload 10 /* msym */
            aload 7 /* msplocn */
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
        44: .line 409
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 48
        45: .line 410
            aload 10 /* msym */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
        46: .line 411
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            aload 10 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
        47: .line 410
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
        48: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 56
        49: .line 414
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
        50: .line 415
            getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
            aload 10 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
        51: .line 414
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
            astore 12 /* outputLocn */
        start local 12 // javax.tools.JavaFileManager$Location outputLocn
        52: .line 416
            aload 10 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
            ifnonnull 55
        53: .line 417
            aload 10 /* msym */
            aload 12 /* outputLocn */
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
        54: .line 418
            goto 56
        55: .line 419
      StackMap locals: javax.tools.JavaFileManager$Location
      StackMap stack:
            aload 10 /* msym */
            aload 12 /* outputLocn */
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchOutputLocation:Ljavax/tools/JavaFileManager$Location;
        end local 12 // javax.tools.JavaFileManager$Location outputLocn
        56: .line 423
      StackMap locals:
      StackMap stack:
            aload 4 /* tree */
            aload 10 /* msym */
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        57: .line 424
            aload 2 /* rootModules */
            aload 10 /* msym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // com.sun.tools.javac.tree.JCTree$JCModuleDecl decl
        end local 10 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 9 // com.sun.tools.javac.util.Name name
        58: .line 425
            goto 73
      StackMap locals:
      StackMap stack:
        59: aload 3 /* c */
            ifnull 62
            aload 3 /* c */
            invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.packge:()Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            getfield com.sun.tools.javac.code.Symbol$PackageSymbol.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpne 62
        60: .line 426
            aload 4 /* tree */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        61: .line 427
            goto 73
        62: .line 428
      StackMap locals:
      StackMap stack:
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getModuleDecl:()Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            ifnull 65
        63: .line 429
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleNotFoundOnModuleSourcePath:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        64: .line 430
            goto 66
        65: .line 431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.NotInModuleOnModuleSourcePath:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        66: .line 433
      StackMap locals:
      StackMap stack:
            aload 4 /* tree */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.errModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        end local 8 // javax.tools.JavaFileManager$Location plocn
        end local 7 // javax.tools.JavaFileManager$Location msplocn
        67: .line 435
            goto 73
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator javax.tools.JavaFileObject
      StackMap stack: java.io.IOException
        68: astore 7 /* e */
        start local 7 // java.io.IOException e
        69: .line 436
            new java.lang.Error
            dup
            aload 7 /* e */
            invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // java.io.IOException e
        70: .line 437
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 13
        71: .line 438
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        72: .line 439
            aload 13
            athrow
        73: .line 438
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 6 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        end local 6 // javax.tools.JavaFileObject prev
        end local 4 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        74: .line 359
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        75: .line 441
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
            ifnonnull 79
        76: .line 442
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.getUnnamedModuleCompleter:()Lcom/sun/tools/javac/code/Symbol$Completer;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
        77: .line 443
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
        78: .line 444
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
        79: .line 446
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        80: .line 447
            goto 144
        81: .line 448
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* module */
        start local 4 // com.sun.tools.javac.code.Symbol$ModuleSymbol module
        82: .line 449
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            ifnonnull 119
        83: .line 450
            aload 0 /* this */
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.comp.Modules.singleModuleOverride:(Lcom/sun/tools/javac/util/List;)Ljava/lang/String;
            astore 5 /* moduleOverride */
        start local 5 // java.lang.String moduleOverride
        84: .line 451
            aload 2 /* rootModules */
            invokeinterface java.util.Set.size:()I
            tableswitch { // 0 - 1
                    0: 85
                    1: 102
              default: 117
          }
        85: .line 453
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
            invokevirtual com.sun.tools.javac.code.ModuleFinder.findSingleModule:()Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        86: .line 454
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpne 96
        87: .line 455
            aload 5 /* moduleOverride */
            ifnull 92
        88: .line 456
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.checkNoAllModulePath:()V
        89: .line 457
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 5 /* moduleOverride */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.ModuleFinder.findModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            putfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        90: .line 458
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchOutputLocation:Ljavax/tools/JavaFileManager$Location;
        91: .line 459
            goto 100
        92: .line 462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.getUnnamedModuleCompleter:()Lcom/sun/tools/javac/code/Symbol$Completer;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
        93: .line 463
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
        94: .line 464
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
        95: .line 466
            goto 100
        96: .line 467
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.checkNoAllModulePath:()V
        97: .line 468
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
        98: .line 470
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            invokedynamic complete(Lcom/sun/tools/javac/comp/Modules;)Lcom/sun/tools/javac/code/Symbol$Completer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/sun/tools/javac/code/Symbol;)V
                  com/sun/tools/javac/comp/Modules.lambda$3(Lcom/sun/tools/javac/code/Symbol;)V (7)
                  (Lcom/sun/tools/javac/code/Symbol;)V
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
        99: .line 471
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
       100: .line 473
      StackMap locals:
      StackMap stack:
            aload 2 /* rootModules */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
       101: .line 474
            goto 131
       102: .line 476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.checkNoAllModulePath:()V
       103: .line 477
            aload 0 /* this */
            aload 2 /* rootModules */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            putfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
       104: .line 478
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
       105: .line 479
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 112
       106: .line 481
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
       107: .line 482
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
       108: .line 481
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;)Ljavax/tools/JavaFileManager$Location;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
       109: .line 483
            goto 112
      StackMap locals:
      StackMap stack: java.io.IOException
       110: astore 6 /* ex */
        start local 6 // java.io.IOException ex
       111: .line 484
            new java.lang.Error
            dup
            aload 6 /* ex */
            invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.io.IOException ex
       112: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
            ifnonnull 115
       113: .line 488
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
       114: .line 489
            goto 131
       115: .line 490
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchOutputLocation:Ljavax/tools/JavaFileManager$Location;
       116: .line 492
            goto 131
       117: .line 494
      StackMap locals:
      StackMap stack:
            ldc "too many modules"
            invokestatic com.sun.tools.javac.util.Assert.error:(Ljava/lang/String;)V
        end local 5 // java.lang.String moduleOverride
       118: .line 496
            goto 131
      StackMap locals:
      StackMap stack:
       119: aload 2 /* rootModules */
            invokeinterface java.util.Set.size:()I
            iconst_1
            if_icmpne 124
       120: .line 497
            aload 2 /* rootModules */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 4 /* module */
       121: .line 498
            aload 4 /* module */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
       122: .line 499
            aload 4 /* module */
            aload 0 /* this */
            invokedynamic complete(Lcom/sun/tools/javac/comp/Modules;)Lcom/sun/tools/javac/code/Symbol$Completer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/sun/tools/javac/code/Symbol;)V
                  com/sun/tools/javac/comp/Modules.lambda$4(Lcom/sun/tools/javac/code/Symbol;)V (7)
                  (Lcom/sun/tools/javac/code/Symbol;)V
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
       123: .line 500
            goto 131
       124: .line 501
      StackMap locals:
      StackMap stack:
            aload 2 /* rootModules */
            invokeinterface java.util.Set.isEmpty:()Z
            invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
       125: .line 502
            aload 0 /* this */
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.comp.Modules.singleModuleOverride:(Lcom/sun/tools/javac/util/List;)Ljava/lang/String;
            astore 5 /* moduleOverride */
        start local 5 // java.lang.String moduleOverride
       126: .line 503
            aload 5 /* moduleOverride */
            ifnull 129
       127: .line 504
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 5 /* moduleOverride */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.ModuleFinder.findModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 4 /* module */
       128: .line 505
            goto 130
       129: .line 506
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 4 /* module */
       130: .line 508
      StackMap locals:
      StackMap stack:
            aload 2 /* rootModules */
            aload 4 /* module */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String moduleOverride
       131: .line 511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpeq 134
       132: .line 512
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.getUnnamedModuleCompleter:()Lcom/sun/tools/javac/code/Symbol$Completer;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
       133: .line 513
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
       134: .line 516
      StackMap locals:
      StackMap stack:
            aload 4 /* module */
            ifnonnull 136
       135: .line 517
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 4 /* module */
       136: .line 520
      StackMap locals:
      StackMap stack:
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 143
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol top java.util.Iterator
      StackMap stack:
       137: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCCompilationUnit
            astore 5 /* tree */
        start local 5 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
       138: .line 521
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpeq 142
       139: .line 522
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.defaultModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
            getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
            if_acmpne 142
       140: .line 523
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 142
       141: .line 524
            aload 0 /* this */
            aload 5 /* tree */
            aload 4 /* module */
            invokevirtual com.sun.tools.javac.comp.Modules.checkSourceLocation:(Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
       142: .line 526
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator
      StackMap stack:
            aload 5 /* tree */
            aload 4 /* module */
            putfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        end local 5 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
       143: .line 520
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.code.Symbol$ModuleSymbol top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 137
        end local 4 // com.sun.tools.javac.code.Symbol$ModuleSymbol module
       144: .line 529
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ClassSymbol
      StackMap stack:
            return
        end local 3 // com.sun.tools.javac.code.Symbol$ClassSymbol c
        end local 2 // java.util.Set rootModules
        end local 1 // com.sun.tools.javac.util.List trees
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0  145     0            this  Lcom/sun/tools/javac/comp/Modules;
            0  145     1           trees  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
            0  145     2     rootModules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            0  145     3               c  Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            4   74     4            tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            8   74     6            prev  Ljavax/tools/JavaFileObject;
            9   67     7         msplocn  Ljavax/tools/JavaFileManager$Location;
           16   67     8           plocn  Ljavax/tools/JavaFileManager$Location;
           18   25     9            name  Lcom/sun/tools/javac/util/Name;
           19   25    10            msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           23   25    11         mspname  Lcom/sun/tools/javac/util/Name;
           30   32     9       canonical  Ljavax/tools/JavaFileObject;
           33   58     9            name  Lcom/sun/tools/javac/util/Name;
           36   39    10            msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           42   58    10            msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           34   58    11            decl  Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
           52   56    12      outputLocn  Ljavax/tools/JavaFileManager$Location;
           69   70     7               e  Ljava/io/IOException;
           82  144     4          module  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           84  118     5  moduleOverride  Ljava/lang/String;
          111  112     6              ex  Ljava/io/IOException;
          126  131     5  moduleOverride  Ljava/lang/String;
          138  143     5            tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
      Exception table:
        from    to  target  type
           8    67      68  Class java.io.IOException
           8    70      70  any
         106   109     110  Class java.io.IOException
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
    MethodParameters:
             Name  Flags
      trees        
      rootModules  
      c            

  private void checkSourceLocation(com.sun.tools.javac.tree.JCTree$JCCompilationUnit, com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        start local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 533
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            astore 3 /* fo */
        start local 3 // javax.tools.JavaFileObject fo
         1: .line 534
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 2 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
            aload 3 /* fo */
            invokeinterface javax.tools.JavaFileManager.contains:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/FileObject;)Z
            ifeq 3
         2: .line 535
            return
         3: .line 537
      StackMap locals: javax.tools.JavaFileObject
      StackMap stack:
            aload 2 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
            ifnull 5
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 2 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.patchLocation:Ljavax/tools/JavaFileManager$Location;
            aload 3 /* fo */
            invokeinterface javax.tools.JavaFileManager.contains:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/FileObject;)Z
            ifeq 5
         4: .line 538
            return
         5: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.SOURCE_OUTPUT:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 8
         6: .line 541
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.SOURCE_OUTPUT:Ljavax/tools/StandardLocation;
            aload 3 /* fo */
            invokeinterface javax.tools.JavaFileManager.contains:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/FileObject;)Z
            ifeq 12
         7: .line 542
            return
         8: .line 545
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
            aload 3 /* fo */
            invokeinterface javax.tools.JavaFileManager.contains:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/FileObject;)Z
            ifeq 12
         9: .line 546
            return
        end local 3 // javax.tools.JavaFileObject fo
        10: .line 549
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCCompilationUnit com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
        11: .line 550
            new java.lang.Error
            dup
            aload 3 /* e */
            invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.IOException e
        12: .line 553
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            astore 3 /* prev */
        start local 3 // javax.tools.JavaFileObject prev
        13: .line 555
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 1 /* tree */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.FileSbOnSourceOrPatchPathForModule:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        14: .line 556
            goto 18
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCCompilationUnit com.sun.tools.javac.code.Symbol$ModuleSymbol javax.tools.JavaFileObject
      StackMap stack: java.lang.Throwable
        15: astore 4
        16: .line 557
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 3 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        17: .line 558
            aload 4
            athrow
        18: .line 557
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 3 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        19: .line 559
            return
        end local 3 // javax.tools.JavaFileObject prev
        end local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lcom/sun/tools/javac/comp/Modules;
            0   20     1  tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            0   20     2  msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            1   10     3    fo  Ljavax/tools/JavaFileObject;
           11   12     3     e  Ljava/io/IOException;
           13   20     3  prev  Ljavax/tools/JavaFileObject;
      Exception table:
        from    to  target  type
           0     2      10  Class java.io.IOException
           3     4      10  Class java.io.IOException
           5     7      10  Class java.io.IOException
           8     9      10  Class java.io.IOException
          13    15      15  any
    MethodParameters:
      Name  Flags
      tree  
      msym  

  private java.lang.String singleModuleOverride(com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>);
    descriptor: (Lcom/sun/tools/javac/util/List;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.List trees
         0: .line 562
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifne 2
         1: .line 563
            aconst_null
            areturn
         2: .line 566
      StackMap locals:
      StackMap stack:
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 2 /* override */
        start local 2 // java.util.Set override
         3: .line 567
            aload 1 /* trees */
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 13
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCCompilationUnit
            astore 3 /* tree */
        start local 3 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         5: .line 568
            aload 3 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            astore 5 /* fo */
        start local 5 // javax.tools.JavaFileObject fo
         6: .line 572
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.PATCH_MODULE_PATH:Ljavax/tools/StandardLocation;
            aload 5 /* fo */
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileManager$Location;
         7: .line 571
            astore 6 /* loc */
        start local 6 // javax.tools.JavaFileManager$Location loc
         8: .line 574
            aload 6 /* loc */
            ifnull 13
         9: .line 575
            aload 2 /* override */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 6 /* loc */
            invokeinterface javax.tools.JavaFileManager.inferModuleName:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // javax.tools.JavaFileManager$Location loc
        10: .line 577
            goto 13
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator javax.tools.JavaFileObject
      StackMap stack: java.io.IOException
        11: astore 6 /* ex */
        start local 6 // java.io.IOException ex
        12: .line 578
            new java.lang.Error
            dup
            aload 6 /* ex */
            invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.io.IOException ex
        end local 5 // javax.tools.JavaFileObject fo
        end local 3 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        13: .line 567
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        14: .line 582
            aload 2 /* override */
            invokeinterface java.util.Set.size:()I
            tableswitch { // 0 - 1
                    0: 15
                    1: 16
              default: 17
          }
        15: .line 583
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.util.List java.util.Set
      StackMap stack:
            aconst_null
            areturn
        16: .line 584
      StackMap locals:
      StackMap stack:
            aload 2 /* override */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            areturn
        17: .line 586
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 2 /* override */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.TooManyPatchedModules:(Ljava/util/Set;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        18: .line 587
            aconst_null
            areturn
        end local 2 // java.util.Set override
        end local 1 // com.sun.tools.javac.util.List trees
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Lcom/sun/tools/javac/comp/Modules;
            0   19     1     trees  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
            3   19     2  override  Ljava/util/Set<Ljava/lang/String;>;
            5   13     3      tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            6   13     5        fo  Ljavax/tools/JavaFileObject;
            8   10     6       loc  Ljavax/tools/JavaFileManager$Location;
           12   13     6        ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           6    10      11  Class java.io.IOException
    Signature: (Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;)Ljava/lang/String;
    MethodParameters:
       Name  Flags
      trees  

  private javax.tools.JavaFileManager$Location getModuleLocation(com.sun.tools.javac.tree.JCTree$JCCompilationUnit);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;)Ljavax/tools/JavaFileManager$Location;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         0: .line 602
            aload 1 /* tree */
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            astore 2 /* fo */
        start local 2 // javax.tools.JavaFileObject fo
         1: .line 605
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.MODULE_SOURCE_PATH:Ljavax/tools/StandardLocation;
            aload 2 /* fo */
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileManager$Location;
         2: .line 604
            astore 3 /* loc */
        start local 3 // javax.tools.JavaFileManager$Location loc
         3: .line 606
            aload 3 /* loc */
            ifnonnull 10
         4: .line 607
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            getstatic javax.tools.StandardLocation.SOURCE_OUTPUT:Ljavax/tools/StandardLocation;
            invokeinterface javax.tools.JavaFileManager.hasLocation:(Ljavax/tools/JavaFileManager$Location;)Z
            ifeq 6
         5: .line 608
            getstatic javax.tools.StandardLocation.SOURCE_OUTPUT:Ljavax/tools/StandardLocation;
            goto 7
      StackMap locals: javax.tools.JavaFileObject javax.tools.JavaFileManager$Location
      StackMap stack:
         6: getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
         7: .line 607
      StackMap locals:
      StackMap stack: javax.tools.StandardLocation
            astore 4 /* sourceOutput */
        start local 4 // javax.tools.JavaFileManager$Location sourceOutput
         8: .line 610
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 4 /* sourceOutput */
            aload 2 /* fo */
            invokeinterface javax.tools.JavaFileManager.getLocationForModule:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileManager$Location;
         9: .line 609
            astore 3 /* loc */
        end local 4 // javax.tools.JavaFileManager$Location sourceOutput
        10: .line 612
      StackMap locals:
      StackMap stack:
            aload 3 /* loc */
            areturn
        end local 3 // javax.tools.JavaFileManager$Location loc
        end local 2 // javax.tools.JavaFileObject fo
        end local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lcom/sun/tools/javac/comp/Modules;
            0   11     1          tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            1   11     2            fo  Ljavax/tools/JavaFileObject;
            3   11     3           loc  Ljavax/tools/JavaFileManager$Location;
            8   10     4  sourceOutput  Ljavax/tools/JavaFileManager$Location;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      tree  

  private void checkNoAllModulePath();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 616
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addModsOpt:Ljava/lang/String;
            ifnull 2
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addModsOpt:Ljava/lang/String;
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            ldc "ALL-MODULE-PATH"
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 617
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.resources.CompilerProperties$Errors.AddmodsAllModulePathInvalid:Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
         2: .line 619
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/comp/Modules;

  private void setupAutomaticModule(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 659
            new com.sun.tools.javac.util.ListBuffer
            dup
            invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
            astore 2 /* directives */
        start local 2 // com.sun.tools.javac.util.ListBuffer directives
         1: .line 660
            new com.sun.tools.javac.util.ListBuffer
            dup
            invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
            astore 3 /* exports */
        start local 3 // com.sun.tools.javac.util.ListBuffer exports
         2: .line 661
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* seenPackages */
        start local 4 // java.util.Set seenPackages
         3: .line 663
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
            ldc ""
            getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
            iconst_1
            invokeinterface javax.tools.JavaFileManager.list:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;Z)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 13
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.tools.JavaFileObject
            astore 5 /* clazz */
        start local 5 // javax.tools.JavaFileObject clazz
         5: .line 664
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.fileManager:Ljavax/tools/JavaFileManager;
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
            aload 5 /* clazz */
            invokeinterface javax.tools.JavaFileManager.inferBinaryName:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljava/lang/String;
            astore 7 /* binName */
        start local 7 // java.lang.String binName
         6: .line 665
            aload 7 /* binName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_m1
            if_icmpeq 7
            aload 7 /* binName */
            iconst_0
            aload 7 /* binName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            goto 8
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer java.util.Set javax.tools.JavaFileObject java.util.Iterator java.lang.String
      StackMap stack:
         7: ldc ""
      StackMap locals:
      StackMap stack: java.lang.String
         8: astore 8 /* pack */
        start local 8 // java.lang.String pack
         9: .line 666
            aload 4 /* seenPackages */
            aload 8 /* pack */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 13
        10: .line 667
            new com.sun.tools.javac.code.Directive$ExportsDirective
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 1 /* msym */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 8 /* pack */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterPackage:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            aconst_null
            invokespecial com.sun.tools.javac.code.Directive$ExportsDirective.<init>:(Lcom/sun/tools/javac/code/Symbol$PackageSymbol;Lcom/sun/tools/javac/util/List;)V
            astore 9 /* d */
        start local 9 // com.sun.tools.javac.code.Directive$ExportsDirective d
        11: .line 669
            aload 2 /* directives */
            aload 9 /* d */
            invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
            pop
        12: .line 670
            aload 3 /* exports */
            aload 9 /* d */
            invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // com.sun.tools.javac.code.Directive$ExportsDirective d
        end local 8 // java.lang.String pack
        end local 7 // java.lang.String binName
        end local 5 // javax.tools.JavaFileObject clazz
        13: .line 663
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer java.util.Set top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        14: .line 674
            aload 1 /* msym */
            aload 3 /* exports */
            invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.exports:Lcom/sun/tools/javac/util/List;
        15: .line 675
            aload 1 /* msym */
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.provides:Lcom/sun/tools/javac/util/List;
        16: .line 676
            aload 1 /* msym */
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
        17: .line 677
            aload 1 /* msym */
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.uses:Lcom/sun/tools/javac/util/List;
        18: .line 678
            aload 1 /* msym */
            aload 2 /* directives */
            invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.directives:Lcom/sun/tools/javac/util/List;
        end local 4 // java.util.Set seenPackages
        end local 3 // com.sun.tools.javac.util.ListBuffer exports
        end local 2 // com.sun.tools.javac.util.ListBuffer directives
        19: .line 679
            goto 22
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack: java.io.IOException
        20: astore 2 /* ex */
        start local 2 // java.io.IOException ex
        21: .line 680
            new java.lang.IllegalStateException
            dup
            aload 2 /* ex */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException ex
        22: .line 682
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lcom/sun/tools/javac/comp/Modules;
            0   23     1          msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            1   19     2    directives  Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Directive;>;
            2   19     3       exports  Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;
            3   19     4  seenPackages  Ljava/util/Set<Ljava/lang/String;>;
            5   13     5         clazz  Ljavax/tools/JavaFileObject;
            6   13     7       binName  Ljava/lang/String;
            9   13     8          pack  Ljava/lang/String;
           11   13     9             d  Lcom/sun/tools/javac/code/Directive$ExportsDirective;
           21   22     2            ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0    19      20  Class java.io.IOException
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure
    MethodParameters:
      Name  Flags
      msym  

  private void completeAutomaticModule(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 685
            new com.sun.tools.javac.util.ListBuffer
            dup
            invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
            astore 2 /* directives */
        start local 2 // com.sun.tools.javac.util.ListBuffer directives
         1: .line 687
            aload 2 /* directives */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.directives:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.ListBuffer.addAll:(Ljava/util/Collection;)Z
            pop
         2: .line 689
            new com.sun.tools.javac.util.ListBuffer
            dup
            invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
            astore 3 /* requires */
        start local 3 // com.sun.tools.javac.util.ListBuffer requires
         3: .line 691
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.allModules:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 14
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 4 /* ms */
        start local 4 // com.sun.tools.javac.code.Symbol$ModuleSymbol ms
         5: .line 692
            aload 4 /* ms */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpeq 14
            aload 4 /* ms */
            aload 1 /* msym */
            if_acmpne 7
         6: .line 693
            goto 14
         7: .line 694
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Iterator
      StackMap stack:
            aload 4 /* ms */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
            ldc 4503599627370496
            land
            lconst_0
            lcmp
            ifeq 9
         8: .line 695
            getstatic com.sun.tools.javac.code.Directive$RequiresFlag.TRANSITIVE:Lcom/sun/tools/javac/code/Directive$RequiresFlag;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
            goto 10
      StackMap locals:
      StackMap stack:
         9: ldc Lcom/sun/tools/javac/code/Directive$RequiresFlag;
            invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
        10: .line 694
      StackMap locals:
      StackMap stack: java.util.EnumSet
            astore 6 /* flags */
        start local 6 // java.util.Set flags
        11: .line 696
            new com.sun.tools.javac.code.Directive$RequiresDirective
            dup
            aload 4 /* ms */
            aload 6 /* flags */
            invokespecial com.sun.tools.javac.code.Directive$RequiresDirective.<init>:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)V
            astore 7 /* d */
        start local 7 // com.sun.tools.javac.code.Directive$RequiresDirective d
        12: .line 697
            aload 2 /* directives */
            aload 7 /* d */
            invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
            pop
        13: .line 698
            aload 3 /* requires */
            aload 7 /* d */
            invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // com.sun.tools.javac.code.Directive$RequiresDirective d
        end local 6 // java.util.Set flags
        end local 4 // com.sun.tools.javac.code.Symbol$ModuleSymbol ms
        14: .line 691
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.ListBuffer com.sun.tools.javac.util.ListBuffer top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        15: .line 701
            new com.sun.tools.javac.code.Directive$RequiresDirective
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokespecial com.sun.tools.javac.code.Directive$RequiresDirective.<init>:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            astore 4 /* requiresUnnamed */
        start local 4 // com.sun.tools.javac.code.Directive$RequiresDirective requiresUnnamed
        16: .line 702
            aload 2 /* directives */
            aload 4 /* requiresUnnamed */
            invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
            pop
        17: .line 703
            aload 3 /* requires */
            aload 4 /* requiresUnnamed */
            invokevirtual com.sun.tools.javac.util.ListBuffer.add:(Ljava/lang/Object;)Z
            pop
        18: .line 705
            aload 1 /* msym */
            aload 3 /* requires */
            invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
        19: .line 706
            aload 1 /* msym */
            aload 2 /* directives */
            invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.directives:Lcom/sun/tools/javac/util/List;
        20: .line 707
            return
        end local 4 // com.sun.tools.javac.code.Directive$RequiresDirective requiresUnnamed
        end local 3 // com.sun.tools.javac.util.ListBuffer requires
        end local 2 // com.sun.tools.javac.util.ListBuffer directives
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   21     0             this  Lcom/sun/tools/javac/comp/Modules;
            0   21     1             msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            1   21     2       directives  Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Directive;>;
            3   21     3         requires  Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/code/Directive$RequiresDirective;>;
            5   14     4               ms  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           11   14     6            flags  Ljava/util/Set<Lcom/sun/tools/javac/code/Directive$RequiresFlag;>;
           12   14     7                d  Lcom/sun/tools/javac/code/Directive$RequiresDirective;
           16   21     4  requiresUnnamed  Lcom/sun/tools/javac/code/Directive$RequiresDirective;
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure
    MethodParameters:
      Name  Flags
      msym  

  private com.sun.tools.javac.code.Symbol$Completer getSourceCompleter(com.sun.tools.javac.tree.JCTree$JCCompilationUnit);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;)Lcom/sun/tools/javac/code/Symbol$Completer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
         0: .line 710
            new com.sun.tools.javac.comp.Modules$2
            dup
            aload 0 /* this */
            aload 1 /* tree */
            invokespecial com.sun.tools.javac.comp.Modules$2.<init>:(Lcom/sun/tools/javac/comp/Modules;Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;)V
            areturn
        end local 1 // com.sun.tools.javac.tree.JCTree$JCCompilationUnit tree
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    1     1  tree  Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
    MethodParameters:
      Name  Flags
      tree  

  public boolean isRootModule(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol module
         0: .line 740
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 741
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            aload 1 /* module */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol module
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/tools/javac/comp/Modules;
            0    2     1  module  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    MethodParameters:
        Name  Flags
      module  

  public java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> getRootModules();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 745
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 746
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            areturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/comp/Modules;
    Signature: ()Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  public com.sun.tools.javac.code.Symbol$Completer getUsesProvidesCompleter();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$Completer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 951
            aload 0 /* this */
            invokedynamic complete(Lcom/sun/tools/javac/comp/Modules;)Lcom/sun/tools/javac/code/Symbol$Completer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/sun/tools/javac/code/Symbol;)V
                  com/sun/tools/javac/comp/Modules.lambda$5(Lcom/sun/tools/javac/code/Symbol;)V (7)
                  (Lcom/sun/tools/javac/code/Symbol;)V
            areturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;

  public java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> allModules();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 1198
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1199
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            areturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/comp/Modules;
    Signature: ()Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  private void setupAllModules();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 1203
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1204
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNull:(Ljava/lang/Object;)V
         2: .line 1208
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.limitModsOpt:Ljava/lang/String;
            ifnonnull 5
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.extraLimitMods:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 5
         3: .line 1209
            aconst_null
            astore 1 /* observable */
        start local 1 // java.util.Set observable
         4: .line 1210
            goto 28
        end local 1 // java.util.Set observable
         5: .line 1211
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* limitMods */
        start local 2 // java.util.Set limitMods
         6: .line 1212
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.limitModsOpt:Ljava/lang/String;
            ifnull 14
         7: .line 1213
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.limitModsOpt:Ljava/lang/String;
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 13
      StackMap locals: com.sun.tools.javac.comp.Modules top java.util.Set top int int java.lang.String[]
      StackMap stack:
         8: aload 6
            iload 4
            aaload
            astore 3 /* limit */
        start local 3 // java.lang.String limit
         9: .line 1214
            aload 0 /* this */
            aload 3 /* limit */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 11
        10: .line 1215
            goto 12
        11: .line 1216
      StackMap locals: com.sun.tools.javac.comp.Modules top java.util.Set java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 2 /* limitMods */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 3 /* limit */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String limit
        12: .line 1213
      StackMap locals: com.sun.tools.javac.comp.Modules top java.util.Set top int int java.lang.String[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        13: iload 4
            iload 5
            if_icmplt 8
        14: .line 1219
      StackMap locals: com.sun.tools.javac.comp.Modules top java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.extraLimitMods:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 17
      StackMap locals: com.sun.tools.javac.comp.Modules top java.util.Set top java.util.Iterator
      StackMap stack:
        15: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* limit */
        start local 3 // java.lang.String limit
        16: .line 1220
            aload 2 /* limitMods */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 3 /* limit */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.String limit
        17: .line 1219
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        18: .line 1222
            aload 0 /* this */
            aload 2 /* limitMods */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            aconst_null
            invokevirtual com.sun.tools.javac.comp.Modules.computeTransitiveClosure:(Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)Ljava/util/Set;
            astore 1 /* observable */
        start local 1 // java.util.Set observable
        19: .line 1223
            aload 1 /* observable */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        20: .line 1224
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.lintOptions:Z
            ifeq 28
        21: .line 1225
            aload 2 /* limitMods */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 27
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        22: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 3 /* msym */
        start local 3 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        23: .line 1226
            aload 1 /* observable */
            aload 3 /* msym */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 27
        24: .line 1227
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.code.Lint$LintCategory.OPTIONS:Lcom/sun/tools/javac/code/Lint$LintCategory;
        25: .line 1228
            getstatic com.sun.tools.javac.main.Option.LIMIT_MODULES:Lcom/sun/tools/javac/main/Option;
            aload 3 /* msym */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Warnings.ModuleForOptionNotFound:(Lcom/sun/tools/javac/main/Option;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Warning;
        26: .line 1227
            invokevirtual com.sun.tools.javac.util.Log.warning:(Lcom/sun/tools/javac/code/Lint$LintCategory;Lcom/sun/tools/javac/util/JCDiagnostic$Warning;)V
        end local 3 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        27: .line 1225
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        end local 2 // java.util.Set limitMods
        28: .line 1234
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set
      StackMap stack:
            aload 0 /* this */
            aload 1 /* observable */
            invokedynamic test(Lcom/sun/tools/javac/comp/Modules;Ljava/util/Set;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$6(Ljava/util/Set;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (7)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            astore 2 /* observablePred */
        start local 2 // java.util.function.Predicate observablePred
        29: .line 1236
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$7(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            astore 3 /* systemModulePred */
        start local 3 // java.util.function.Predicate systemModulePred
        30: .line 1237
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 4 /* enabledRoot */
        start local 4 // java.util.Set enabledRoot
        31: .line 1239
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 50
        32: .line 1241
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.target:Lcom/sun/tools/javac/jvm/Target;
            invokevirtual com.sun.tools.javac.jvm.Target.allApiModulesAreRoots:()Z
            ifeq 35
        33: .line 1242
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$8(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            astore 5 /* jdkModulePred */
        start local 5 // java.util.function.Predicate jdkModulePred
        34: .line 1246
            goto 41
        end local 5 // java.util.function.Predicate jdkModulePred
        35: .line 1247
      StackMap locals: java.util.function.Predicate java.util.function.Predicate java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.java_se:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.getModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 6 /* javaSE */
        start local 6 // com.sun.tools.javac.code.Symbol$ModuleSymbol javaSE
        36: .line 1248
            aload 6 /* javaSE */
            ifnull 40
            aload 1 /* observable */
            ifnull 37
            aload 1 /* observable */
            aload 6 /* javaSE */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 40
        37: .line 1249
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set top com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 0 /* this */
            invokedynamic test(Lcom/sun/tools/javac/comp/Modules;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$10(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (7)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            astore 5 /* jdkModulePred */
        start local 5 // java.util.function.Predicate jdkModulePred
        38: .line 1254
            aload 4 /* enabledRoot */
            aload 6 /* javaSE */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        39: .line 1255
            goto 41
        end local 5 // java.util.function.Predicate jdkModulePred
        40: .line 1256
      StackMap locals:
      StackMap stack:
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$12(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            astore 5 /* jdkModulePred */
        end local 6 // com.sun.tools.javac.code.Symbol$ModuleSymbol javaSE
        start local 5 // java.util.function.Predicate jdkModulePred
        41: .line 1260
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.function.Predicate
      StackMap stack:
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$13(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            astore 6 /* noIncubatorPred */
        start local 6 // java.util.function.Predicate noIncubatorPred
        42: .line 1265
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            invokevirtual com.sun.tools.javac.code.Symtab.getAllModules:()Ljava/util/Collection;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
            astore 8
            goto 49
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.function.Predicate java.util.function.Predicate top java.util.Iterator
      StackMap stack:
        43: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 7 /* sym */
        start local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        44: .line 1267
            aload 3 /* systemModulePred */
            aload 7 /* sym */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 49
            aload 2 /* observablePred */
            aload 7 /* sym */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 49
            aload 5 /* jdkModulePred */
            aload 7 /* sym */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 49
            aload 6 /* noIncubatorPred */
            aload 7 /* sym */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 49
        45: .line 1268
            aload 4 /* enabledRoot */
            aload 7 /* sym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        46: .line 1270
            goto 49
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.function.Predicate java.util.function.Predicate com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Iterator
      StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
        47: astore 9 /* ex */
        start local 9 // com.sun.tools.javac.code.Symbol$CompletionFailure ex
        48: .line 1271
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.chk:Lcom/sun/tools/javac/comp/Check;
            aconst_null
            aload 9 /* ex */
            invokevirtual com.sun.tools.javac.comp.Check.completionError:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol$CompletionFailure;)Lcom/sun/tools/javac/code/Type;
            pop
        end local 9 // com.sun.tools.javac.code.Symbol$CompletionFailure ex
        end local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        49: .line 1265
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.function.Predicate java.util.function.Predicate top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 43
        end local 6 // java.util.function.Predicate noIncubatorPred
        end local 5 // java.util.function.Predicate jdkModulePred
        50: .line 1276
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set
      StackMap stack:
            aload 4 /* enabledRoot */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        51: .line 1278
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addModsOpt:Ljava/lang/String;
            ifnonnull 52
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.extraAddMods:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 76
        52: .line 1279
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 5 /* fullAddMods */
        start local 5 // java.util.Set fullAddMods
        53: .line 1280
            aload 5 /* fullAddMods */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.extraAddMods:Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        54: .line 1282
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addModsOpt:Ljava/lang/String;
            ifnull 56
        55: .line 1283
            aload 5 /* fullAddMods */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addModsOpt:Ljava/lang/String;
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        56: .line 1286
      StackMap locals: java.util.Set
      StackMap stack:
            aload 5 /* fullAddMods */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 75
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        57: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* added */
        start local 6 // java.lang.String added
        58: .line 1288
            aload 6 /* added */
            dup
            astore 9
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
          -1057501189: 59
           1070226586: 60
              default: 71
          }
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.Set java.lang.String java.util.Iterator top java.lang.String
      StackMap stack:
        59: aload 9
            ldc "ALL-SYSTEM"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 61
            goto 71
      StackMap locals:
      StackMap stack:
        60: aload 9
            ldc "ALL-MODULE-PATH"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 66
            goto 71
        61: .line 1290
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            invokevirtual com.sun.tools.javac.code.Symtab.getAllModules:()Ljava/util/Collection;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
        62: .line 1291
            invokevirtual java.util.HashSet.stream:()Ljava/util/stream/Stream;
        63: .line 1292
            aload 3 /* systemModulePred */
            aload 2 /* observablePred */
            invokeinterface java.util.function.Predicate.and:(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        64: .line 1290
            astore 8 /* modules */
        start local 8 // java.util.stream.Stream modules
        65: .line 1293
            goto 74
        end local 8 // java.util.stream.Stream modules
        66: .line 1295
      StackMap locals:
      StackMap stack:
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            invokevirtual com.sun.tools.javac.code.Symtab.getAllModules:()Ljava/util/Collection;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
        67: .line 1296
            invokevirtual java.util.HashSet.stream:()Ljava/util/stream/Stream;
        68: .line 1297
            aload 3 /* systemModulePred */
            invokeinterface java.util.function.Predicate.negate:()Ljava/util/function/Predicate;
            aload 2 /* observablePred */
            invokeinterface java.util.function.Predicate.and:(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        69: .line 1295
            astore 8 /* modules */
        start local 8 // java.util.stream.Stream modules
        70: .line 1298
            goto 74
        end local 8 // java.util.stream.Stream modules
        71: .line 1300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* added */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 73
        72: .line 1301
            goto 75
        73: .line 1302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 6 /* added */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokestatic java.util.stream.Stream.of:(Ljava/lang/Object;)Ljava/util/stream/Stream;
            astore 8 /* modules */
        start local 8 // java.util.stream.Stream modules
        74: .line 1305
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.Set java.lang.String java.util.Iterator java.util.stream.Stream
      StackMap stack:
            aload 8 /* modules */
            aload 4 /* enabledRoot */
            aload 1 /* observable */
            invokedynamic accept(Ljava/util/Set;Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/javac/comp/Modules.lambda$14(Ljava/util/Set;Ljava/util/Set;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        end local 8 // java.util.stream.Stream modules
        end local 6 // java.lang.String added
        75: .line 1286
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 57
        end local 5 // java.util.Set fullAddMods
        76: .line 1313
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set
      StackMap stack:
            aload 0 /* this */
            aload 4 /* enabledRoot */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            aload 1 /* observable */
            invokevirtual com.sun.tools.javac.comp.Modules.computeTransitiveClosure:(Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)Ljava/util/Set;
            astore 5 /* result */
        start local 5 // java.util.Set result
        77: .line 1315
            aload 5 /* result */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        78: .line 1317
            aload 5 /* result */
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
            getstatic com.sun.tools.javac.comp.Modules.IS_AUTOMATIC:Ljava/util/function/Predicate;
            invokeinterface java.util.stream.Stream.anyMatch:(Ljava/util/function/Predicate;)Z
            istore 6 /* hasAutomatic */
        start local 6 // boolean hasAutomatic
        79: .line 1319
            iload 6 /* hasAutomatic */
            ifeq 84
        80: .line 1320
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            invokevirtual com.sun.tools.javac.code.Symtab.getAllModules:()Ljava/util/Collection;
        81: .line 1321
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        82: .line 1322
            getstatic com.sun.tools.javac.comp.Modules.IS_AUTOMATIC:Ljava/util/function/Predicate;
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        83: .line 1323
            aload 5 /* result */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/util/Set.add(Ljava/lang/Object;)Z (9 itf)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        84: .line 1326
      StackMap locals: java.util.Set int
      StackMap stack:
            aload 5 /* result */
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
        85: .line 1327
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$16(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        86: .line 1328
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/sun/tools/javac/comp/Modules.lambda$17(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/lang/String; (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        87: .line 1329
            ldc ","
            invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.lang.String
        88: .line 1326
            astore 8 /* incubatingModules */
        start local 8 // java.lang.String incubatingModules
        89: .line 1331
            aload 8 /* incubatingModules */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 91
        90: .line 1332
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 8 /* incubatingModules */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Warnings.IncubatingModules:(Ljava/lang/String;)Lcom/sun/tools/javac/util/JCDiagnostic$Warning;
            invokevirtual com.sun.tools.javac.util.Log.warning:(Lcom/sun/tools/javac/util/JCDiagnostic$Warning;)V
        91: .line 1335
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.function.Predicate java.util.function.Predicate java.util.Set java.util.Set int top java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 5 /* result */
            putfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
        92: .line 1338
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleVersionOpt:Ljava/lang/String;
            ifnull 95
        93: .line 1339
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleVersionOpt:Ljava/lang/String;
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            astore 9 /* version */
        start local 9 // com.sun.tools.javac.util.Name version
        94: .line 1340
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            aload 9 /* version */
            invokedynamic accept(Lcom/sun/tools/javac/util/Name;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/sun/tools/javac/comp/Modules.lambda$18(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
        end local 9 // com.sun.tools.javac.util.Name version
        95: .line 1342
      StackMap locals:
      StackMap stack:
            return
        end local 8 // java.lang.String incubatingModules
        end local 6 // boolean hasAutomatic
        end local 5 // java.util.Set result
        end local 4 // java.util.Set enabledRoot
        end local 3 // java.util.function.Predicate systemModulePred
        end local 2 // java.util.function.Predicate observablePred
        end local 1 // java.util.Set observable
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   96     0               this  Lcom/sun/tools/javac/comp/Modules;
            4    5     1         observable  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           19   96     1         observable  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            6   28     2          limitMods  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            9   12     3              limit  Ljava/lang/String;
           16   17     3              limit  Ljava/lang/String;
           23   27     3               msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           29   96     2     observablePred  Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           30   96     3   systemModulePred  Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           31   96     4        enabledRoot  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           34   35     5      jdkModulePred  Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           38   40     5      jdkModulePred  Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           41   50     5      jdkModulePred  Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           36   41     6             javaSE  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           42   50     6    noIncubatorPred  Ljava/util/function/Predicate<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           44   49     7                sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           48   49     9                 ex  Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
           53   76     5        fullAddMods  Ljava/util/Set<Ljava/lang/String;>;
           58   75     6              added  Ljava/lang/String;
           65   66     8            modules  Ljava/util/stream/Stream<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           70   71     8            modules  Ljava/util/stream/Stream<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           74   75     8            modules  Ljava/util/stream/Stream<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           77   96     5             result  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           79   96     6       hasAutomatic  Z
           89   96     8  incubatingModules  Ljava/lang/String;
           94   95     9            version  Lcom/sun/tools/javac/util/Name;
      Exception table:
        from    to  target  type
          44    46      47  Class com.sun.tools.javac.code.Symbol$CompletionFailure

  public boolean isInModuleGraph(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 1348
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            ifnull 1
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            aload 1 /* msym */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    2     1  msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    MethodParameters:
      Name  Flags
      msym  

  private java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> computeTransitiveClosure(java.util.Set<? extends com.sun.tools.javac.code.Symbol$ModuleSymbol>, java.util.Set<? extends com.sun.tools.javac.code.Symbol$ModuleSymbol>, java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol>);
    descriptor: (Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // java.util.Set base
        start local 2 // java.util.Set rootModules
        start local 3 // java.util.Set observable
         0: .line 1354
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            astore 4 /* primaryTodo */
        start local 4 // com.sun.tools.javac.util.List primaryTodo
         1: .line 1355
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            astore 5 /* secondaryTodo */
        start local 5 // com.sun.tools.javac.util.List secondaryTodo
         2: .line 1357
            aload 1 /* base */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 8
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List top java.util.Iterator
      StackMap stack:
         3: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 6 /* ms */
        start local 6 // com.sun.tools.javac.code.Symbol$ModuleSymbol ms
         4: .line 1358
            aload 2 /* rootModules */
            aload 6 /* ms */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 1359
            aload 4 /* primaryTodo */
            aload 6 /* ms */
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 4 /* primaryTodo */
         6: .line 1360
            goto 8
         7: .line 1361
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Iterator
      StackMap stack:
            aload 5 /* secondaryTodo */
            aload 6 /* ms */
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 5 /* secondaryTodo */
        end local 6 // com.sun.tools.javac.code.Symbol$ModuleSymbol ms
         8: .line 1357
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 1365
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 6 /* result */
        start local 6 // java.util.Set result
        10: .line 1366
            aload 6 /* result */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.java_base:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 1368
            goto 40
        12: .line 1372
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List java.util.Set
      StackMap stack:
            aload 4 /* primaryTodo */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifeq 17
        13: .line 1373
            aload 4 /* primaryTodo */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 7 /* current */
        start local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
        14: .line 1374
            aload 4 /* primaryTodo */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 4 /* primaryTodo */
        15: .line 1375
            iconst_1
            istore 8 /* isPrimaryTodo */
        start local 8 // boolean isPrimaryTodo
        16: .line 1376
            goto 20
        end local 8 // boolean isPrimaryTodo
        end local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
        17: .line 1377
      StackMap locals:
      StackMap stack:
            aload 5 /* secondaryTodo */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 7 /* current */
        start local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
        18: .line 1378
            aload 5 /* secondaryTodo */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 5 /* secondaryTodo */
        19: .line 1379
            iconst_0
            istore 8 /* isPrimaryTodo */
        start local 8 // boolean isPrimaryTodo
        20: .line 1381
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol int
      StackMap stack:
            aload 3 /* observable */
            ifnull 22
            aload 3 /* observable */
            aload 7 /* current */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 22
        21: .line 1382
            goto 40
        22: .line 1383
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            aload 7 /* current */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 40
            aload 7 /* current */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpeq 40
            aload 7 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
            ldc 4503599627370496
            land
            lconst_0
            lcmp
            ifeq 24
        23: .line 1384
            goto 40
        24: .line 1385
      StackMap locals:
      StackMap stack:
            aload 7 /* current */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
        25: .line 1386
            aload 7 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpne 28
            iload 8 /* isPrimaryTodo */
            ifne 26
            aload 1 /* base */
            aload 7 /* current */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 28
      StackMap locals:
      StackMap stack:
        26: aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.warnedMissing:Ljava/util/Set;
            aload 7 /* current */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 28
        27: .line 1387
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 7 /* current */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleNotFound:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        28: .line 1389
      StackMap locals:
      StackMap stack:
            aload 7 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 36
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ModuleSymbol int top java.util.Iterator
      StackMap stack:
        29: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            astore 9 /* rd */
        start local 9 // com.sun.tools.javac.code.Directive$RequiresDirective rd
        30: .line 1390
            aload 9 /* rd */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.java_base:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpne 31
            goto 36
        31: .line 1391
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ModuleSymbol int com.sun.tools.javac.code.Directive$RequiresDirective java.util.Iterator
      StackMap stack:
            aload 9 /* rd */
            invokevirtual com.sun.tools.javac.code.Directive$RequiresDirective.isTransitive:()Z
            ifeq 32
            iload 8 /* isPrimaryTodo */
            ifne 33
      StackMap locals:
      StackMap stack:
        32: aload 2 /* rootModules */
            aload 7 /* current */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 35
        33: .line 1392
      StackMap locals:
      StackMap stack:
            aload 4 /* primaryTodo */
            aload 9 /* rd */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 4 /* primaryTodo */
        34: .line 1393
            goto 36
        35: .line 1394
      StackMap locals:
      StackMap stack:
            aload 5 /* secondaryTodo */
            aload 9 /* rd */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 5 /* secondaryTodo */
        end local 9 // com.sun.tools.javac.code.Directive$RequiresDirective rd
        36: .line 1389
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List java.util.Set com.sun.tools.javac.code.Symbol$ModuleSymbol int top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 29
        end local 8 // boolean isPrimaryTodo
        end local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
        37: .line 1397
            goto 40
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.util.List java.util.Set
      StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
        38: astore 7 /* ex */
        start local 7 // com.sun.tools.javac.code.Symbol$CompletionFailure ex
        39: .line 1398
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.chk:Lcom/sun/tools/javac/comp/Check;
            aconst_null
            aload 7 /* ex */
            invokevirtual com.sun.tools.javac.comp.Check.completionError:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol$CompletionFailure;)Lcom/sun/tools/javac/code/Type;
            pop
        end local 7 // com.sun.tools.javac.code.Symbol$CompletionFailure ex
        40: .line 1368
      StackMap locals:
      StackMap stack:
            aload 4 /* primaryTodo */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 12
            aload 5 /* secondaryTodo */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 12
        41: .line 1402
            aload 6 /* result */
            areturn
        end local 6 // java.util.Set result
        end local 5 // com.sun.tools.javac.util.List secondaryTodo
        end local 4 // com.sun.tools.javac.util.List primaryTodo
        end local 3 // java.util.Set observable
        end local 2 // java.util.Set rootModules
        end local 1 // java.util.Set base
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   42     0           this  Lcom/sun/tools/javac/comp/Modules;
            0   42     1           base  Ljava/util/Set<+Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            0   42     2    rootModules  Ljava/util/Set<+Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            0   42     3     observable  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            1   42     4    primaryTodo  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            2   42     5  secondaryTodo  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            4    8     6             ms  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           10   42     6         result  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           14   17     7        current  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           18   37     7        current  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           16   17     8  isPrimaryTodo  Z
           20   37     8  isPrimaryTodo  Z
           30   36     9             rd  Lcom/sun/tools/javac/code/Directive$RequiresDirective;
           39   40     7             ex  Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
      Exception table:
        from    to  target  type
          12    21      38  Class com.sun.tools.javac.code.Symbol$CompletionFailure
          22    23      38  Class com.sun.tools.javac.code.Symbol$CompletionFailure
          24    37      38  Class com.sun.tools.javac.code.Symbol$CompletionFailure
    Signature: (Ljava/util/Set<+Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;Ljava/util/Set<+Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;)Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
    MethodParameters:
             Name  Flags
      base         
      rootModules  
      observable   

  public com.sun.tools.javac.code.Symbol$ModuleSymbol getObservableModule(com.sun.tools.javac.util.Name);
    descriptor: (Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.util.Name name
         0: .line 1406
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 1 /* name */
            invokevirtual com.sun.tools.javac.code.Symtab.getModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 2 /* mod */
        start local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol mod
         1: .line 1408
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.allModules:()Ljava/util/Set;
            aload 2 /* mod */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 1409
            aload 2 /* mod */
            areturn
         3: .line 1412
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aconst_null
            areturn
        end local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol mod
        end local 1 // com.sun.tools.javac.util.Name name
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    4     1  name  Lcom/sun/tools/javac/util/Name;
            1    4     2   mod  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    MethodParameters:
      Name  Flags
      name  

  private com.sun.tools.javac.code.Symbol$Completer getUnnamedModuleCompleter();
    descriptor: ()Lcom/sun/tools/javac/code/Symbol$Completer;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 1416
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
            invokevirtual com.sun.tools.javac.code.ModuleFinder.findAllModules:()Lcom/sun/tools/javac/util/List;
            pop
         1: .line 1417
            new com.sun.tools.javac.comp.Modules$3
            dup
            aload 0 /* this */
            invokespecial com.sun.tools.javac.comp.Modules$3.<init>:(Lcom/sun/tools/javac/comp/Modules;)V
            areturn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/javac/comp/Modules;

  private void completeModule(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 1443
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.inInitModules:Z
            ifeq 3
         1: .line 1444
            aload 1 /* msym */
            aload 0 /* this */
            aload 1 /* msym */
            invokedynamic complete(Lcom/sun/tools/javac/comp/Modules;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/code/Symbol$Completer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Lcom/sun/tools/javac/code/Symbol;)V
                  com/sun/tools/javac/comp/Modules.lambda$19(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/code/Symbol;)V (7)
                  (Lcom/sun/tools/javac/code/Symbol;)V
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
         2: .line 1445
            return
         3: .line 1448
      StackMap locals:
      StackMap stack:
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
            ldc 4503599627370496
            land
            lconst_0
            lcmp
            ifeq 5
         4: .line 1449
            aload 0 /* this */
            aload 1 /* msym */
            invokevirtual com.sun.tools.javac.comp.Modules.completeAutomaticModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
         5: .line 1452
      StackMap locals:
      StackMap stack:
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 1454
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.initAddReads:()V
         7: .line 1456
            aload 1 /* msym */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addReads:Ljava/util/Map;
            aload 1 /* msym */
            invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Iterable
            invokestatic com.sun.tools.javac.util.List.from:(Ljava/lang/Iterable;)Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
         8: .line 1458
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            astore 2 /* requires */
        start local 2 // com.sun.tools.javac.util.List requires
         9: .line 1460
            goto 26
        10: .line 1461
      StackMap locals: com.sun.tools.javac.util.List
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.allModules:()Ljava/util/Set;
            aload 2 /* requires */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        11: .line 1462
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.typeEnvs:Lcom/sun/tools/javac/comp/TypeEnvs;
            aload 1 /* msym */
            invokevirtual com.sun.tools.javac.comp.TypeEnvs.get:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Lcom/sun/tools/javac/comp/Env;
            astore 3 /* env */
        start local 3 // com.sun.tools.javac.comp.Env env
        12: .line 1463
            aload 3 /* env */
            ifnull 21
        13: .line 1464
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 3 /* env */
            getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            astore 4 /* origSource */
        start local 4 // javax.tools.JavaFileObject origSource
        14: .line 1466
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 3 /* env */
            getfield com.sun.tools.javac.comp.Env.tree:Lcom/sun/tools/javac/tree/JCTree;
            aload 2 /* requires */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.ModuleNotFound:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        15: .line 1467
            goto 19
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.List com.sun.tools.javac.comp.Env javax.tools.JavaFileObject
      StackMap stack: java.lang.Throwable
        16: astore 5
        17: .line 1468
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* origSource */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        18: .line 1469
            aload 5
            athrow
        19: .line 1468
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* origSource */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        end local 4 // javax.tools.JavaFileObject origSource
        20: .line 1470
            goto 24
        21: .line 1471
      StackMap locals:
      StackMap stack:
            aload 1 /* msym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.flags:()J
            ldc 4503599627370496
            land
            lconst_0
            lcmp
            ifne 22
            iconst_1
            goto 23
      StackMap locals:
      StackMap stack:
        22: iconst_0
      StackMap locals:
      StackMap stack: int
        23: invokestatic com.sun.tools.javac.util.Assert.check:(Z)V
        24: .line 1473
      StackMap locals:
      StackMap stack:
            aload 1 /* msym */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            aload 2 /* requires */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            invokestatic com.sun.tools.javac.util.List.filter:(Lcom/sun/tools/javac/util/List;Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
        end local 3 // com.sun.tools.javac.comp.Env env
        25: .line 1475
      StackMap locals:
      StackMap stack:
            aload 2 /* requires */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 2 /* requires */
        26: .line 1460
      StackMap locals:
      StackMap stack:
            aload 2 /* requires */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 10
        27: .line 1478
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 3 /* readable */
        start local 3 // java.util.Set readable
        28: .line 1479
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* requiresTransitive */
        start local 4 // java.util.Set requiresTransitive
        29: .line 1481
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 39
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.util.List java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        30: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            astore 5 /* d */
        start local 5 // com.sun.tools.javac.code.Directive$RequiresDirective d
        31: .line 1482
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
        32: .line 1483
            aload 3 /* readable */
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        33: .line 1484
            aload 0 /* this */
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.comp.Modules.retrieveRequiresTransitive:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set;
            astore 7 /* s */
        start local 7 // java.util.Set s
        34: .line 1485
            aload 7 /* s */
            aload 5 /* d */
            invokedynamic get(Lcom/sun/tools/javac/code/Directive$RequiresDirective;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  com/sun/tools/javac/comp/Modules.lambda$20(Lcom/sun/tools/javac/code/Directive$RequiresDirective;)Ljava/lang/String; (6)
                  ()Ljava/lang/String;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;
            pop
        35: .line 1486
            aload 3 /* readable */
            aload 7 /* s */
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        36: .line 1487
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.flags:Ljava/util/Set;
            getstatic com.sun.tools.javac.code.Directive$RequiresFlag.TRANSITIVE:Lcom/sun/tools/javac/code/Directive$RequiresFlag;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 39
        37: .line 1488
            aload 4 /* requiresTransitive */
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        38: .line 1489
            aload 4 /* requiresTransitive */
            aload 7 /* s */
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        end local 7 // java.util.Set s
        end local 5 // com.sun.tools.javac.code.Directive$RequiresDirective d
        39: .line 1481
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 30
        40: .line 1493
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.requiresTransitiveCache:Ljava/util/Map;
            aload 1 /* msym */
            aload 4 /* requiresTransitive */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 1494
            aload 0 /* this */
            aload 1 /* msym */
            aload 3 /* readable */
            invokevirtual com.sun.tools.javac.comp.Modules.initVisiblePackages:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection;)V
        42: .line 1495
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.exports:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 46
      StackMap locals:
      StackMap stack:
        43: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$ExportsDirective
            astore 5 /* d */
        start local 5 // com.sun.tools.javac.code.Directive$ExportsDirective d
        44: .line 1496
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            ifnull 46
        45: .line 1497
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            aload 1 /* msym */
            putfield com.sun.tools.javac.code.Symbol$PackageSymbol.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        end local 5 // com.sun.tools.javac.code.Directive$ExportsDirective d
        46: .line 1495
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 43
        47: .line 1500
            return
        end local 4 // java.util.Set requiresTransitive
        end local 3 // java.util.Set readable
        end local 2 // com.sun.tools.javac.util.List requires
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   48     0                this  Lcom/sun/tools/javac/comp/Modules;
            0   48     1                msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            9   48     2            requires  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Directive$RequiresDirective;>;
           12   25     3                 env  Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
           14   20     4          origSource  Ljavax/tools/JavaFileObject;
           28   48     3            readable  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           29   48     4  requiresTransitive  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           31   39     5                   d  Lcom/sun/tools/javac/code/Directive$RequiresDirective;
           34   39     7                   s  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           44   46     5                   d  Lcom/sun/tools/javac/code/Directive$ExportsDirective;
      Exception table:
        from    to  target  type
          14    16      16  any
    MethodParameters:
      Name  Flags
      msym  

  private java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol> retrieveRequiresTransitive(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=9, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 1503
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.requiresTransitiveCache:Ljava/util/Map;
            aload 1 /* msym */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            astore 2 /* requiresTransitive */
        start local 2 // java.util.Set requiresTransitive
         1: .line 1505
            aload 2 /* requiresTransitive */
            ifnonnull 27
         2: .line 1507
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* requiresTransitive */
         3: .line 1509
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* seen */
        start local 3 // java.util.Set seen
         4: .line 1510
            aload 1 /* msym */
            invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 4 /* todo */
        start local 4 // com.sun.tools.javac.util.List todo
         5: .line 1512
            goto 25
         6: .line 1513
      StackMap locals: java.util.Set java.util.Set com.sun.tools.javac.util.List
      StackMap stack:
            aload 4 /* todo */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 5 /* current */
        start local 5 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
         7: .line 1514
            aload 4 /* todo */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 4 /* todo */
         8: .line 1515
            aload 3 /* seen */
            aload 5 /* current */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifne 10
         9: .line 1516
            goto 25
        10: .line 1517
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 2 /* requiresTransitive */
            aload 5 /* current */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 1518
            aload 5 /* current */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
        12: .line 1520
            aload 5 /* current */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpeq 21
        13: .line 1521
            aload 5 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            aload 5 /* current */
            aload 1 /* msym */
            invokedynamic get(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  com/sun/tools/javac/comp/Modules.lambda$21(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/lang/String; (6)
                  ()Ljava/lang/String;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;
            pop
        14: .line 1522
            aload 5 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            astore 6 /* requires */
        start local 6 // java.lang.Iterable requires
        15: .line 1523
            aload 6 /* requires */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 8
            goto 19
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ModuleSymbol java.lang.Iterable top java.util.Iterator
      StackMap stack:
        16: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            astore 7 /* rd */
        start local 7 // com.sun.tools.javac.code.Directive$RequiresDirective rd
        17: .line 1524
            aload 7 /* rd */
            invokevirtual com.sun.tools.javac.code.Directive$RequiresDirective.isTransitive:()Z
            ifeq 19
        18: .line 1525
            aload 4 /* todo */
            aload 7 /* rd */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 4 /* todo */
        end local 7 // com.sun.tools.javac.code.Directive$RequiresDirective rd
        19: .line 1523
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        20: .line 1527
            goto 25
        end local 6 // java.lang.Iterable requires
        21: .line 1528
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.allModules:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 24
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Set java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ModuleSymbol top top java.util.Iterator
      StackMap stack:
        22: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 7 /* mod */
        start local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol mod
        23: .line 1529
            aload 4 /* todo */
            aload 7 /* mod */
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 4 /* todo */
        end local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol mod
        24: .line 1528
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        end local 5 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
        25: .line 1512
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Set java.util.Set com.sun.tools.javac.util.List
      StackMap stack:
            aload 4 /* todo */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 6
        26: .line 1534
            aload 2 /* requiresTransitive */
            aload 1 /* msym */
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
        end local 4 // com.sun.tools.javac.util.List todo
        end local 3 // java.util.Set seen
        27: .line 1537
      StackMap locals:
      StackMap stack:
            aload 2 /* requiresTransitive */
            areturn
        end local 2 // java.util.Set requiresTransitive
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   28     0                this  Lcom/sun/tools/javac/comp/Modules;
            0   28     1                msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            1   28     2  requiresTransitive  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            4   27     3                seen  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            5   27     4                todo  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            7   25     5             current  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           15   21     6            requires  Ljava/lang/Iterable<+Lcom/sun/tools/javac/code/Directive$RequiresDirective;>;
           17   19     7                  rd  Lcom/sun/tools/javac/code/Directive$RequiresDirective;
           23   24     7                 mod  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    Signature: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
    MethodParameters:
      Name  Flags
      msym  

  private void initVisiblePackages(com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Collection<com.sun.tools.javac.code.Symbol$ModuleSymbol>);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        start local 2 // java.util.Collection readable
         0: .line 1541
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.initAddExports:()V
         1: .line 1543
            aload 1 /* msym */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.visiblePackages:Ljava/util/Map;
         2: .line 1544
            aload 1 /* msym */
            new java.util.HashSet
            dup
            aload 2 /* readable */
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.readModules:Ljava/util/Set;
         3: .line 1546
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* seen */
        start local 3 // java.util.Map seen
         4: .line 1548
            aload 2 /* readable */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
         5: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 4 /* rm */
        start local 4 // com.sun.tools.javac.code.Symbol$ModuleSymbol rm
         6: .line 1549
            aload 4 /* rm */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            if_acmpne 8
         7: .line 1550
            goto 9
         8: .line 1551
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Collection java.util.Map com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 1 /* msym */
            aload 3 /* seen */
            aload 4 /* rm */
            aload 4 /* rm */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.exports:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.comp.Modules.addVisiblePackages:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection;)V
        end local 4 // com.sun.tools.javac.code.Symbol$ModuleSymbol rm
         9: .line 1548
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Collection java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        10: .line 1554
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addExports:Ljava/util/Map;
            aload 0 /* this */
            aload 1 /* msym */
            aload 3 /* seen */
            invokedynamic accept(Lcom/sun/tools/javac/comp/Modules;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map;)Ljava/util/function/BiConsumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)V
                  com/sun/tools/javac/comp/Modules.lambda$22(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)V (7)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)V
            invokeinterface java.util.Map.forEach:(Ljava/util/function/BiConsumer;)V
        11: .line 1559
            return
        end local 3 // java.util.Map seen
        end local 2 // java.util.Collection readable
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lcom/sun/tools/javac/comp/Modules;
            0   12     1      msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            0   12     2  readable  Ljava/util/Collection<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            4   12     3      seen  Ljava/util/Map<Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            6    9     4        rm  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    Signature: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;)V
    MethodParameters:
          Name  Flags
      msym      
      readable  

  private void addVisiblePackages(com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Map<com.sun.tools.javac.util.Name, com.sun.tools.javac.code.Symbol$ModuleSymbol>, com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Collection<com.sun.tools.javac.code.Directive$ExportsDirective>);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=5
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        start local 2 // java.util.Map seenPackages
        start local 3 // com.sun.tools.javac.code.Symbol$ModuleSymbol exportsFrom
        start local 4 // java.util.Collection exports
         0: .line 1565
            aload 4 /* exports */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 31
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Map com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Collection top java.util.Iterator
      StackMap stack:
         1: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$ExportsDirective
            astore 5 /* d */
        start local 5 // com.sun.tools.javac.code.Directive$ExportsDirective d
         2: .line 1566
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
            ifnull 3
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
            aload 1 /* msym */
            invokevirtual com.sun.tools.javac.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 31
         3: .line 1567
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Map com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Collection com.sun.tools.javac.code.Directive$ExportsDirective java.util.Iterator
      StackMap stack:
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            getfield com.sun.tools.javac.code.Symbol$PackageSymbol.fullname:Lcom/sun/tools/javac/util/Name;
            astore 7 /* packageName */
        start local 7 // com.sun.tools.javac.util.Name packageName
         4: .line 1568
            aload 2 /* seenPackages */
            aload 7 /* packageName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 8 /* previousModule */
        start local 8 // com.sun.tools.javac.code.Symbol$ModuleSymbol previousModule
         5: .line 1570
            aload 8 /* previousModule */
            ifnull 29
            aload 8 /* previousModule */
            aload 3 /* exportsFrom */
            if_acmpeq 29
         6: .line 1571
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.typeEnvs:Lcom/sun/tools/javac/comp/TypeEnvs;
            aload 1 /* msym */
            invokevirtual com.sun.tools.javac.comp.TypeEnvs.get:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Lcom/sun/tools/javac/comp/Env;
            astore 9 /* env */
        start local 9 // com.sun.tools.javac.comp.Env env
         7: .line 1572
            aload 9 /* env */
            ifnull 8
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 9 /* env */
            getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            goto 9
         8: .line 1573
      StackMap locals: com.sun.tools.javac.util.Name com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.comp.Env
      StackMap stack:
            aconst_null
         9: .line 1572
      StackMap locals:
      StackMap stack: javax.tools.JavaFileObject
            astore 10 /* origSource */
        start local 10 // javax.tools.JavaFileObject origSource
        10: .line 1574
            aload 9 /* env */
            ifnull 11
            aload 9 /* env */
            getfield com.sun.tools.javac.comp.Env.tree:Lcom/sun/tools/javac/tree/JCTree;
            invokevirtual com.sun.tools.javac.tree.JCTree.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            goto 12
      StackMap locals: javax.tools.JavaFileObject
      StackMap stack:
        11: aconst_null
      StackMap locals:
      StackMap stack: com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition
        12: astore 11 /* pos */
        start local 11 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        13: .line 1576
            aload 1 /* msym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.isUnnamed:()Z
            ifeq 18
        14: .line 1577
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 11 /* pos */
            aload 7 /* packageName */
        15: .line 1578
            aload 8 /* previousModule */
            aload 3 /* exportsFrom */
        16: .line 1577
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.PackageClashFromRequiresInUnnamed:(Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        17: .line 1579
            goto 26
        18: .line 1580
      StackMap locals: com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 11 /* pos */
            aload 1 /* msym */
            aload 7 /* packageName */
        19: .line 1581
            aload 8 /* previousModule */
            aload 3 /* exportsFrom */
        20: .line 1580
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.PackageClashFromRequires:(Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        21: .line 1583
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: astore 12
        23: .line 1584
            aload 9 /* env */
            ifnull 25
        24: .line 1585
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 10 /* origSource */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        25: .line 1586
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 12
            athrow
        26: .line 1584
      StackMap locals:
      StackMap stack:
            aload 9 /* env */
            ifnull 31
        27: .line 1585
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 10 /* origSource */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        28: .line 1587
            goto 31
        end local 11 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition pos
        end local 10 // javax.tools.JavaFileObject origSource
        end local 9 // com.sun.tools.javac.comp.Env env
        29: .line 1590
      StackMap locals:
      StackMap stack:
            aload 2 /* seenPackages */
            aload 7 /* packageName */
            aload 3 /* exportsFrom */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        30: .line 1591
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.visiblePackages:Ljava/util/Map;
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            getfield com.sun.tools.javac.code.Symbol$PackageSymbol.fullname:Lcom/sun/tools/javac/util/Name;
            aload 5 /* d */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.packge:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // com.sun.tools.javac.code.Symbol$ModuleSymbol previousModule
        end local 7 // com.sun.tools.javac.util.Name packageName
        end local 5 // com.sun.tools.javac.code.Directive$ExportsDirective d
        31: .line 1565
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Map com.sun.tools.javac.code.Symbol$ModuleSymbol java.util.Collection top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        32: .line 1594
            return
        end local 4 // java.util.Collection exports
        end local 3 // com.sun.tools.javac.code.Symbol$ModuleSymbol exportsFrom
        end local 2 // java.util.Map seenPackages
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   33     0            this  Lcom/sun/tools/javac/comp/Modules;
            0   33     1            msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            0   33     2    seenPackages  Ljava/util/Map<Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            0   33     3     exportsFrom  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            0   33     4         exports  Ljava/util/Collection<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;
            2   31     5               d  Lcom/sun/tools/javac/code/Directive$ExportsDirective;
            4   31     7     packageName  Lcom/sun/tools/javac/util/Name;
            5   31     8  previousModule  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            7   29     9             env  Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
           10   29    10      origSource  Ljavax/tools/JavaFileObject;
           13   29    11             pos  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
      Exception table:
        from    to  target  type
          13    22      22  any
    Signature: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map<Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;)V
    MethodParameters:
              Name  Flags
      msym          
      seenPackages  
      exportsFrom   
      exports       

  private void initAddExports();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=19, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 1597
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addExports:Ljava/util/Map;
            ifnull 2
         1: .line 1598
            return
         2: .line 1600
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield com.sun.tools.javac.comp.Modules.addExports:Ljava/util/Map;
         3: .line 1601
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* unknownModules */
        start local 1 // java.util.Set unknownModules
         4: .line 1603
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addExportsOpt:Ljava/lang/String;
            ifnonnull 6
         5: .line 1604
            return
         6: .line 1606
      StackMap locals: java.util.Set
      StackMap stack:
            ldc "([^/]+)/([^=]+)=(.*)"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            astore 2 /* ep */
        start local 2 // java.util.regex.Pattern ep
         7: .line 1607
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addExportsOpt:Ljava/lang/String;
            ldc "\u0000+"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 47
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.regex.Pattern top int int java.lang.String[]
      StackMap stack:
         8: aload 6
            iload 4
            aaload
            astore 3 /* s */
        start local 3 // java.lang.String s
         9: .line 1608
            aload 3 /* s */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 11
        10: .line 1609
            goto 46
        11: .line 1610
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.regex.Pattern java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 2 /* ep */
            aload 3 /* s */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 7 /* em */
        start local 7 // java.util.regex.Matcher em
        12: .line 1611
            aload 7 /* em */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifne 14
        13: .line 1612
            goto 46
        14: .line 1619
      StackMap locals: java.util.regex.Matcher
      StackMap stack:
            aload 7 /* em */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 8 /* moduleName */
        start local 8 // java.lang.String moduleName
        15: .line 1620
            aload 7 /* em */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 9 /* packageName */
        start local 9 // java.lang.String packageName
        16: .line 1621
            aload 7 /* em */
            iconst_3
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 10 /* targetNames */
        start local 10 // java.lang.String targetNames
        17: .line 1623
            aload 0 /* this */
            aload 8 /* moduleName */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 19
        18: .line 1624
            goto 46
        19: .line 1626
      StackMap locals: java.lang.String java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 8 /* moduleName */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 11 /* msym */
        start local 11 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        20: .line 1627
            aload 0 /* this */
            aload 11 /* msym */
            aload 1 /* unknownModules */
            invokevirtual com.sun.tools.javac.comp.Modules.isKnownModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)Z
            ifne 22
        21: .line 1628
            goto 46
        22: .line 1630
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 0 /* this */
            aload 9 /* packageName */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 24
        23: .line 1631
            goto 46
        24: .line 1633
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allowAccessIntoSystem:Z
            ifne 27
            aload 11 /* msym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.flags:()J
            ldc 9007199254740992
            land
            lconst_0
            lcmp
            ifeq 27
        25: .line 1634
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 11 /* msym */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.AddExportsWithRelease:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        26: .line 1635
            goto 46
        27: .line 1638
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 11 /* msym */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 9 /* packageName */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterPackage:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
            astore 12 /* p */
        start local 12 // com.sun.tools.javac.code.Symbol$PackageSymbol p
        28: .line 1639
            aload 12 /* p */
            aload 11 /* msym */
            putfield com.sun.tools.javac.code.Symbol$PackageSymbol.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
        29: .line 1641
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            astore 13 /* targetModules */
        start local 13 // com.sun.tools.javac.util.List targetModules
        30: .line 1642
            aload 10 /* targetNames */
            ldc "[ ,]+"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 17
            arraylength
            istore 16
            iconst_0
            istore 15
            goto 42
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.regex.Pattern java.lang.String int int java.lang.String[] java.util.regex.Matcher java.lang.String java.lang.String java.lang.String com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.code.Symbol$PackageSymbol com.sun.tools.javac.util.List top int int java.lang.String[]
      StackMap stack:
        31: aload 17
            iload 15
            aaload
            astore 14 /* toModule */
        start local 14 // java.lang.String toModule
        32: .line 1644
            aload 14 /* toModule */
            ldc "ALL-UNNAMED"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 35
        33: .line 1645
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 18 /* m */
        start local 18 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
        34: .line 1646
            goto 40
        end local 18 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
        35: .line 1647
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.regex.Pattern java.lang.String int int java.lang.String[] java.util.regex.Matcher java.lang.String java.lang.String java.lang.String com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.code.Symbol$PackageSymbol com.sun.tools.javac.util.List java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 0 /* this */
            aload 14 /* toModule */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 37
        36: .line 1648
            goto 41
        37: .line 1649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 14 /* toModule */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 18 /* m */
        start local 18 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
        38: .line 1650
            aload 0 /* this */
            aload 18 /* m */
            aload 1 /* unknownModules */
            invokevirtual com.sun.tools.javac.comp.Modules.isKnownModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)Z
            ifne 40
        39: .line 1651
            goto 41
        40: .line 1653
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 13 /* targetModules */
            aload 18 /* m */
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 13 /* targetModules */
        end local 18 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
        end local 14 // java.lang.String toModule
        41: .line 1642
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.regex.Pattern java.lang.String int int java.lang.String[] java.util.regex.Matcher java.lang.String java.lang.String java.lang.String com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.code.Symbol$PackageSymbol com.sun.tools.javac.util.List top int int java.lang.String[]
      StackMap stack:
            iinc 15 1
      StackMap locals:
      StackMap stack:
        42: iload 15
            iload 16
            if_icmplt 31
        43: .line 1656
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addExports:Ljava/util/Map;
            aload 11 /* msym */
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/sun/tools/javac/comp/Modules.lambda$23(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set; (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set;
            invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast java.util.Set
            astore 14 /* extra */
        start local 14 // java.util.Set extra
        44: .line 1657
            new com.sun.tools.javac.code.Directive$ExportsDirective
            dup
            aload 12 /* p */
            aload 13 /* targetModules */
            invokespecial com.sun.tools.javac.code.Directive$ExportsDirective.<init>:(Lcom/sun/tools/javac/code/Symbol$PackageSymbol;Lcom/sun/tools/javac/util/List;)V
            astore 15 /* d */
        start local 15 // com.sun.tools.javac.code.Directive$ExportsDirective d
        45: .line 1658
            aload 14 /* extra */
            aload 15 /* d */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 15 // com.sun.tools.javac.code.Directive$ExportsDirective d
        end local 14 // java.util.Set extra
        end local 13 // com.sun.tools.javac.util.List targetModules
        end local 12 // com.sun.tools.javac.code.Symbol$PackageSymbol p
        end local 11 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 10 // java.lang.String targetNames
        end local 9 // java.lang.String packageName
        end local 8 // java.lang.String moduleName
        end local 7 // java.util.regex.Matcher em
        end local 3 // java.lang.String s
        46: .line 1607
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.Set java.util.regex.Pattern top int int java.lang.String[]
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        47: iload 4
            iload 5
            if_icmplt 8
        48: .line 1660
            return
        end local 2 // java.util.regex.Pattern ep
        end local 1 // java.util.Set unknownModules
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   49     0            this  Lcom/sun/tools/javac/comp/Modules;
            4   49     1  unknownModules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            7   49     2              ep  Ljava/util/regex/Pattern;
            9   46     3               s  Ljava/lang/String;
           12   46     7              em  Ljava/util/regex/Matcher;
           15   46     8      moduleName  Ljava/lang/String;
           16   46     9     packageName  Ljava/lang/String;
           17   46    10     targetNames  Ljava/lang/String;
           20   46    11            msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           28   46    12               p  Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
           30   46    13   targetModules  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
           32   41    14        toModule  Ljava/lang/String;
           34   35    18               m  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           38   41    18               m  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           44   46    14           extra  Ljava/util/Set<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;
           45   46    15               d  Lcom/sun/tools/javac/code/Directive$ExportsDirective;

  private boolean isKnownModule(com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Set<com.sun.tools.javac.code.Symbol$ModuleSymbol>);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        start local 2 // java.util.Set unknownModules
         0: .line 1663
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            aload 1 /* msym */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 1664
            iconst_1
            ireturn
         2: .line 1667
      StackMap locals:
      StackMap stack:
            aload 2 /* unknownModules */
            aload 1 /* msym */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 8
         3: .line 1668
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.lintOptions:Z
            ifeq 7
         4: .line 1669
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.code.Lint$LintCategory.OPTIONS:Lcom/sun/tools/javac/code/Lint$LintCategory;
         5: .line 1670
            getstatic com.sun.tools.javac.main.Option.ADD_EXPORTS:Lcom/sun/tools/javac/main/Option;
            aload 1 /* msym */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Warnings.ModuleForOptionNotFound:(Lcom/sun/tools/javac/main/Option;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Warning;
         6: .line 1669
            invokevirtual com.sun.tools.javac.util.Log.warning:(Lcom/sun/tools/javac/code/Lint$LintCategory;Lcom/sun/tools/javac/util/JCDiagnostic$Warning;)V
         7: .line 1672
      StackMap locals:
      StackMap stack:
            aload 2 /* unknownModules */
            aload 1 /* msym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         8: .line 1674
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.util.Set unknownModules
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            this  Lcom/sun/tools/javac/comp/Modules;
            0    9     1            msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            0    9     2  unknownModules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
    Signature: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;)Z
    MethodParameters:
                Name  Flags
      msym            
      unknownModules  

  private void initAddReads();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=15, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 1678
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addReads:Ljava/util/Map;
            ifnull 2
         1: .line 1679
            return
         2: .line 1681
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.util.LinkedHashMap
            dup
            invokespecial java.util.LinkedHashMap.<init>:()V
            putfield com.sun.tools.javac.comp.Modules.addReads:Ljava/util/Map;
         3: .line 1683
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addReadsOpt:Ljava/lang/String;
            ifnonnull 5
         4: .line 1684
            return
         5: .line 1686
      StackMap locals:
      StackMap stack:
            ldc "([^=]+)=(.*)"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            astore 1 /* rp */
        start local 1 // java.util.regex.Pattern rp
         6: .line 1687
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addReadsOpt:Ljava/lang/String;
            ldc "\u0000+"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 42
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.regex.Pattern top int int java.lang.String[]
      StackMap stack:
         7: aload 5
            iload 3
            aaload
            astore 2 /* s */
        start local 2 // java.lang.String s
         8: .line 1688
            aload 2 /* s */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 10
         9: .line 1689
            goto 41
        10: .line 1690
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.regex.Pattern java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 1 /* rp */
            aload 2 /* s */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 6 /* rm */
        start local 6 // java.util.regex.Matcher rm
        11: .line 1691
            aload 6 /* rm */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifne 13
        12: .line 1692
            goto 41
        13: .line 1699
      StackMap locals: java.util.regex.Matcher
      StackMap stack:
            aload 6 /* rm */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 7 /* sourceName */
        start local 7 // java.lang.String sourceName
        14: .line 1700
            aload 6 /* rm */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            astore 8 /* targetNames */
        start local 8 // java.lang.String targetNames
        15: .line 1702
            aload 0 /* this */
            aload 7 /* sourceName */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 17
        16: .line 1703
            goto 41
        17: .line 1705
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 7 /* sourceName */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 9 /* msym */
        start local 9 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        18: .line 1706
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            aload 9 /* msym */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 22
        19: .line 1707
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.lintOptions:Z
            ifeq 41
        20: .line 1708
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.main.Option.ADD_READS:Lcom/sun/tools/javac/main/Option;
            aload 9 /* msym */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Warnings.ModuleForOptionNotFound:(Lcom/sun/tools/javac/main/Option;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Warning;
            invokevirtual com.sun.tools.javac.util.Log.warning:(Lcom/sun/tools/javac/util/JCDiagnostic$Warning;)V
        21: .line 1710
            goto 41
        22: .line 1713
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allowAccessIntoSystem:Z
            ifne 25
            aload 9 /* msym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.flags:()J
            ldc 9007199254740992
            land
            lconst_0
            lcmp
            ifeq 25
        23: .line 1714
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 9 /* msym */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.AddReadsWithRelease:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        24: .line 1715
            goto 41
        25: .line 1718
      StackMap locals:
      StackMap stack:
            aload 8 /* targetNames */
            ldc "[ ,]+"
            iconst_m1
            invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 40
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.regex.Pattern java.lang.String int int java.lang.String[] java.util.regex.Matcher java.lang.String java.lang.String com.sun.tools.javac.code.Symbol$ModuleSymbol top int int java.lang.String[]
      StackMap stack:
        26: aload 13
            iload 11
            aaload
            astore 10 /* targetName */
        start local 10 // java.lang.String targetName
        27: .line 1720
            aload 10 /* targetName */
            ldc "ALL-UNNAMED"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 30
        28: .line 1721
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            getfield com.sun.tools.javac.code.Symtab.unnamedModule:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 14 /* targetModule */
        start local 14 // com.sun.tools.javac.code.Symbol$ModuleSymbol targetModule
        29: .line 1722
            goto 37
        end local 14 // com.sun.tools.javac.code.Symbol$ModuleSymbol targetModule
        30: .line 1723
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.regex.Pattern java.lang.String int int java.lang.String[] java.util.regex.Matcher java.lang.String java.lang.String com.sun.tools.javac.code.Symbol$ModuleSymbol java.lang.String int int java.lang.String[]
      StackMap stack:
            aload 0 /* this */
            aload 10 /* targetName */
            invokevirtual com.sun.tools.javac.comp.Modules.isValidName:(Ljava/lang/CharSequence;)Z
            ifne 32
        31: .line 1724
            goto 39
        32: .line 1725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.syms:Lcom/sun/tools/javac/code/Symtab;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.names:Lcom/sun/tools/javac/util/Names;
            aload 10 /* targetName */
            invokevirtual com.sun.tools.javac.util.Names.fromString:(Ljava/lang/String;)Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.code.Symtab.enterModule:(Lcom/sun/tools/javac/util/Name;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            astore 14 /* targetModule */
        start local 14 // com.sun.tools.javac.code.Symbol$ModuleSymbol targetModule
        33: .line 1726
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            aload 14 /* targetModule */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 37
        34: .line 1727
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.lintOptions:Z
            ifeq 39
        35: .line 1728
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            getstatic com.sun.tools.javac.code.Lint$LintCategory.OPTIONS:Lcom/sun/tools/javac/code/Lint$LintCategory;
            getstatic com.sun.tools.javac.main.Option.ADD_READS:Lcom/sun/tools/javac/main/Option;
            aload 14 /* targetModule */
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Warnings.ModuleForOptionNotFound:(Lcom/sun/tools/javac/main/Option;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Warning;
            invokevirtual com.sun.tools.javac.util.Log.warning:(Lcom/sun/tools/javac/code/Lint$LintCategory;Lcom/sun/tools/javac/util/JCDiagnostic$Warning;)V
        36: .line 1730
            goto 39
        37: .line 1733
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.addReads:Ljava/util/Map;
            aload 9 /* msym */
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/sun/tools/javac/comp/Modules.lambda$24(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set; (6)
                  (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set;
            invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast java.util.Set
        38: .line 1734
            new com.sun.tools.javac.code.Directive$RequiresDirective
            dup
            aload 14 /* targetModule */
            getstatic com.sun.tools.javac.code.Directive$RequiresFlag.EXTRA:Lcom/sun/tools/javac/code/Directive$RequiresFlag;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
            invokespecial com.sun.tools.javac.code.Directive$RequiresDirective.<init>:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)V
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 14 // com.sun.tools.javac.code.Symbol$ModuleSymbol targetModule
        end local 10 // java.lang.String targetName
        39: .line 1718
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.regex.Pattern java.lang.String int int java.lang.String[] java.util.regex.Matcher java.lang.String java.lang.String com.sun.tools.javac.code.Symbol$ModuleSymbol top int int java.lang.String[]
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        40: iload 11
            iload 12
            if_icmplt 26
        end local 9 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 8 // java.lang.String targetNames
        end local 7 // java.lang.String sourceName
        end local 6 // java.util.regex.Matcher rm
        end local 2 // java.lang.String s
        41: .line 1687
      StackMap locals: com.sun.tools.javac.comp.Modules java.util.regex.Pattern top int int java.lang.String[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        42: iload 3
            iload 4
            if_icmplt 7
        43: .line 1737
            return
        end local 1 // java.util.regex.Pattern rp
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   44     0          this  Lcom/sun/tools/javac/comp/Modules;
            6   44     1            rp  Ljava/util/regex/Pattern;
            8   41     2             s  Ljava/lang/String;
           11   41     6            rm  Ljava/util/regex/Matcher;
           14   41     7    sourceName  Ljava/lang/String;
           15   41     8   targetNames  Ljava/lang/String;
           18   41     9          msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           27   39    10    targetName  Ljava/lang/String;
           29   30    14  targetModule  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           33   39    14  targetModule  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private void checkCyclicDependencies(com.sun.tools.javac.tree.JCTree$JCModuleDecl);
    descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.tree.JCTree$JCModuleDecl mod
         0: .line 1740
            aload 1 /* mod */
            getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.directives:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 24
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCModuleDecl top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.tree.JCTree$JCDirective
            astore 2 /* d */
        start local 2 // com.sun.tools.javac.tree.JCTree$JCDirective d
         2: .line 1742
            aload 2 /* d */
            getstatic com.sun.tools.javac.tree.JCTree$Tag.REQUIRES:Lcom/sun/tools/javac/tree/JCTree$Tag;
            invokevirtual com.sun.tools.javac.tree.JCTree$JCDirective.hasTag:(Lcom/sun/tools/javac/tree/JCTree$Tag;)Z
            ifeq 24
            aload 2 /* d */
            checkcast com.sun.tools.javac.tree.JCTree$JCRequires
            dup
            astore 4 /* rd */
        start local 4 // com.sun.tools.javac.tree.JCTree$JCRequires rd
         3: getfield com.sun.tools.javac.tree.JCTree$JCRequires.directive:Lcom/sun/tools/javac/code/Directive$RequiresDirective;
            ifnonnull 5
        end local 4 // com.sun.tools.javac.tree.JCTree$JCRequires rd
         4: .line 1743
            goto 24
        start local 4 // com.sun.tools.javac.tree.JCTree$JCRequires rd
         5: .line 1744
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCModuleDecl com.sun.tools.javac.tree.JCTree$JCDirective java.util.Iterator com.sun.tools.javac.tree.JCTree$JCRequires
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 5 /* nonSyntheticDeps */
        start local 5 // java.util.Set nonSyntheticDeps
         6: .line 1745
            aload 4 /* rd */
            getfield com.sun.tools.javac.tree.JCTree$JCRequires.directive:Lcom/sun/tools/javac/code/Directive$RequiresDirective;
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokestatic com.sun.tools.javac.util.List.of:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 6 /* queue */
        start local 6 // com.sun.tools.javac.util.List queue
         7: .line 1746
            goto 21
         8: .line 1747
      StackMap locals: java.util.Set com.sun.tools.javac.util.List
      StackMap stack:
            aload 6 /* queue */
            getfield com.sun.tools.javac.util.List.head:Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 7 /* current */
        start local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
         9: .line 1748
            aload 6 /* queue */
            getfield com.sun.tools.javac.util.List.tail:Lcom/sun/tools/javac/util/List;
            astore 6 /* queue */
        10: .line 1749
            aload 5 /* nonSyntheticDeps */
            aload 7 /* current */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 1750
            goto 21
        12: .line 1751
      StackMap locals: com.sun.tools.javac.code.Symbol$ModuleSymbol
      StackMap stack:
            aload 7 /* current */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
        13: .line 1752
            aload 7 /* current */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.flags:()J
            ldc 4503599627370496
            land
            lconst_0
            lcmp
            ifeq 15
        14: .line 1753
            goto 21
        15: .line 1754
      StackMap locals:
      StackMap stack:
            aload 7 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            aload 7 /* current */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic get(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  com/sun/tools/javac/code/Symbol$ModuleSymbol.toString()Ljava/lang/String; (5)
                  ()Ljava/lang/String;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;Ljava/util/function/Supplier;)Ljava/lang/Object;
            pop
        16: .line 1755
            aload 7 /* current */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.requires:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 20
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCModuleDecl com.sun.tools.javac.tree.JCTree$JCDirective java.util.Iterator com.sun.tools.javac.tree.JCTree$JCRequires java.util.Set com.sun.tools.javac.util.List com.sun.tools.javac.code.Symbol$ModuleSymbol top top java.util.Iterator
      StackMap stack:
        17: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.javac.code.Directive$RequiresDirective
            astore 9 /* dep */
        start local 9 // com.sun.tools.javac.code.Directive$RequiresDirective dep
        18: .line 1756
            aload 9 /* dep */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.flags:Ljava/util/Set;
            getstatic com.sun.tools.javac.code.Directive$RequiresFlag.EXTRA:Lcom/sun/tools/javac/code/Directive$RequiresFlag;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 20
        19: .line 1757
            aload 6 /* queue */
            aload 9 /* dep */
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 6 /* queue */
        end local 9 // com.sun.tools.javac.code.Directive$RequiresDirective dep
        20: .line 1755
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        end local 7 // com.sun.tools.javac.code.Symbol$ModuleSymbol current
        21: .line 1746
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCModuleDecl com.sun.tools.javac.tree.JCTree$JCDirective java.util.Iterator com.sun.tools.javac.tree.JCTree$JCRequires java.util.Set com.sun.tools.javac.util.List
      StackMap stack:
            aload 6 /* queue */
            invokevirtual com.sun.tools.javac.util.List.nonEmpty:()Z
            ifne 8
        22: .line 1760
            aload 5 /* nonSyntheticDeps */
            aload 1 /* mod */
            getfield com.sun.tools.javac.tree.JCTree$JCModuleDecl.sym:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 1761
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 4 /* rd */
            getfield com.sun.tools.javac.tree.JCTree$JCRequires.moduleName:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
            invokevirtual com.sun.tools.javac.tree.JCTree$JCExpression.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            aload 4 /* rd */
            getfield com.sun.tools.javac.tree.JCTree$JCRequires.directive:Lcom/sun/tools/javac/code/Directive$RequiresDirective;
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.CyclicRequires:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
            invokevirtual com.sun.tools.javac.util.Log.error:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/util/JCDiagnostic$Error;)V
        end local 6 // com.sun.tools.javac.util.List queue
        end local 5 // java.util.Set nonSyntheticDeps
        end local 4 // com.sun.tools.javac.tree.JCTree$JCRequires rd
        end local 2 // com.sun.tools.javac.tree.JCTree$JCDirective d
        24: .line 1740
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.tree.JCTree$JCModuleDecl top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        25: .line 1764
            return
        end local 1 // com.sun.tools.javac.tree.JCTree$JCModuleDecl mod
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   26     0              this  Lcom/sun/tools/javac/comp/Modules;
            0   26     1               mod  Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            2   24     2                 d  Lcom/sun/tools/javac/tree/JCTree$JCDirective;
            3    4     4                rd  Lcom/sun/tools/javac/tree/JCTree$JCRequires;
            5   24     4                rd  Lcom/sun/tools/javac/tree/JCTree$JCRequires;
            6   24     5  nonSyntheticDeps  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            7   24     6             queue  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;
            9   21     7           current  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
           18   20     9               dep  Lcom/sun/tools/javac/code/Directive$RequiresDirective;
    MethodParameters:
      Name  Flags
      mod   

  private boolean isValidName(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // java.lang.CharSequence name
         0: .line 1767
            aload 1 /* name */
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.source:Lcom/sun/tools/javac/code/Source;
            invokestatic com.sun.tools.javac.code.Source.toSourceVersion:(Lcom/sun/tools/javac/code/Source;)Ljavax/lang/model/SourceVersion;
            invokestatic javax.lang.model.SourceVersion.isName:(Ljava/lang/CharSequence;Ljavax/lang/model/SourceVersion;)Z
            ireturn
        end local 1 // java.lang.CharSequence name
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    1     1  name  Ljava/lang/CharSequence;
    MethodParameters:
      Name  Flags
      name  

  private java.lang.String toString(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 1772
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "["
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 1773
            ldc "kind:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 1774
            ldc "locn:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.sourceLocation:Ljavax/tools/JavaFileManager$Location;
            invokevirtual com.sun.tools.javac.comp.Modules.toString:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.classLocation:Ljavax/tools/JavaFileManager$Location;
            invokevirtual com.sun.tools.javac.comp.Modules.toString:(Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 1775
            ldc "info:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.comp.Modules.toString:(Ljavax/tools/JavaFileObject;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 1776
            aload 0 /* this */
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.classfile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.comp.Modules.toString:(Ljavax/tools/JavaFileObject;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ","
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 1777
            aload 1 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.module_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.completer:Lcom/sun/tools/javac/code/Symbol$Completer;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         6: .line 1778
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1772
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    8     1  msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
    MethodParameters:
      Name  Flags
      msym  

  java.lang.String toString(javax.tools.JavaFileManager$Location);
    descriptor: (Ljavax/tools/JavaFileManager$Location;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // javax.tools.JavaFileManager$Location locn
         0: .line 1783
            aload 1 /* locn */
            ifnonnull 1
            ldc "--"
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* locn */
            invokeinterface javax.tools.JavaFileManager$Location.getName:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 1 // javax.tools.JavaFileManager$Location locn
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    3     1  locn  Ljavax/tools/JavaFileManager$Location;
    MethodParameters:
      Name  Flags
      locn  

  java.lang.String toString(javax.tools.JavaFileObject);
    descriptor: (Ljavax/tools/JavaFileObject;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // javax.tools.JavaFileObject fo
         0: .line 1788
            aload 1 /* fo */
            ifnonnull 1
            ldc "--"
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* fo */
            invokeinterface javax.tools.JavaFileObject.getName:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 1 // javax.tools.JavaFileObject fo
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    3     1    fo  Ljavax/tools/JavaFileObject;
    MethodParameters:
      Name  Flags
      fo    

  public void newRound();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.comp.Modules this
         0: .line 1792
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
         1: .line 1793
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
         2: .line 1794
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.warnedMissing:Ljava/util/Set;
            invokeinterface java.util.Set.clear:()V
         3: .line 1795
            return
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/comp/Modules;

  private static boolean lambda$0(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
         0: .line 1345
            aload 0 /* m */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.flags_field:J
            ldc 4503599627370496
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     m  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private void lambda$1(java.util.Set);
    descriptor: (Ljava/util/Set;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // java.util.Set modules
         0: .line 234
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNull:(Ljava/lang/Object;)V
         1: .line 235
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNull:(Ljava/lang/Object;)V
         2: .line 236
            aload 0 /* this */
            aload 1 /* modules */
            putfield com.sun.tools.javac.comp.Modules.rootModules:Ljava/util/Set;
         3: .line 237
            aload 0 /* this */
            invokevirtual com.sun.tools.javac.comp.Modules.setupAllModules:()V
         4: .line 238
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.allModules:Ljava/util/Set;
            invokestatic com.sun.tools.javac.util.Assert.checkNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 239
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.javac.comp.Modules.inInitModules:Z
         6: .line 240
            return
        end local 1 // java.util.Set modules
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/sun/tools/javac/comp/Modules;
            0    7     1  modules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  private static void lambda$2(java.util.Set);
    descriptor: (Ljava/util/Set;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // java.util.Set modules
         0: .line 248
            return
        end local 0 // java.util.Set modules
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  modules  Ljava/util/Set<Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;>;

  private void lambda$3(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol sym
         0: .line 470
            aload 0 /* this */
            aload 1 /* sym */
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            invokevirtual com.sun.tools.javac.comp.Modules.completeModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            return
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    1     1   sym  Lcom/sun/tools/javac/code/Symbol;
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure

  private void lambda$4(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol sym
         0: .line 499
            aload 0 /* this */
            aload 1 /* sym */
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            invokevirtual com.sun.tools.javac.comp.Modules.completeModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            return
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    1     1   sym  Lcom/sun/tools/javac/code/Symbol;
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure

  private void lambda$5(com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol sym
         0: .line 952
            aload 1 /* sym */
            checkcast com.sun.tools.javac.code.Symbol$ModuleSymbol
            astore 2 /* msym */
        start local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         1: .line 954
            aload 2 /* msym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
         2: .line 956
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.typeEnvs:Lcom/sun/tools/javac/comp/TypeEnvs;
            aload 2 /* msym */
            invokevirtual com.sun.tools.javac.comp.TypeEnvs.get:(Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Lcom/sun/tools/javac/comp/Env;
            astore 3 /* env */
        start local 3 // com.sun.tools.javac.comp.Env env
         3: .line 957
            new com.sun.tools.javac.comp.Modules$UsesProvidesVisitor
            dup
            aload 0 /* this */
            aload 2 /* msym */
            aload 3 /* env */
            invokespecial com.sun.tools.javac.comp.Modules$UsesProvidesVisitor.<init>:(Lcom/sun/tools/javac/comp/Modules;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/comp/Env;)V
            astore 4 /* v */
        start local 4 // com.sun.tools.javac.comp.Modules$UsesProvidesVisitor v
         4: .line 958
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 3 /* env */
            getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            astore 5 /* prev */
        start local 5 // javax.tools.JavaFileObject prev
         5: .line 959
            aload 3 /* env */
            getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
            invokevirtual com.sun.tools.javac.tree.JCTree$JCCompilationUnit.getModuleDecl:()Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            astore 6 /* decl */
        start local 6 // com.sun.tools.javac.tree.JCTree$JCModuleDecl decl
         6: .line 960
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.deferredLintHandler:Lcom/sun/tools/javac/code/DeferredLintHandler;
            aload 6 /* decl */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCModuleDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            invokevirtual com.sun.tools.javac.code.DeferredLintHandler.setPos:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            astore 7 /* prevLintPos */
        start local 7 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition prevLintPos
         7: .line 963
            aload 6 /* decl */
            aload 4 /* v */
            invokevirtual com.sun.tools.javac.tree.JCTree$JCModuleDecl.accept:(Lcom/sun/tools/javac/tree/JCTree$Visitor;)V
         8: .line 964
            goto 13
      StackMap locals: com.sun.tools.javac.comp.Modules com.sun.tools.javac.code.Symbol com.sun.tools.javac.code.Symbol$ModuleSymbol com.sun.tools.javac.comp.Env com.sun.tools.javac.comp.Modules$UsesProvidesVisitor javax.tools.JavaFileObject com.sun.tools.javac.tree.JCTree$JCModuleDecl com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition
      StackMap stack: java.lang.Throwable
         9: astore 8
        10: .line 965
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 5 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        11: .line 966
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.deferredLintHandler:Lcom/sun/tools/javac/code/DeferredLintHandler;
            aload 7 /* prevLintPos */
            invokevirtual com.sun.tools.javac.code.DeferredLintHandler.setPos:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            pop
        12: .line 967
            aload 8
            athrow
        13: .line 965
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.log:Lcom/sun/tools/javac/util/Log;
            aload 5 /* prev */
            invokevirtual com.sun.tools.javac.util.Log.useSource:(Ljavax/tools/JavaFileObject;)Ljavax/tools/JavaFileObject;
            pop
        14: .line 966
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.deferredLintHandler:Lcom/sun/tools/javac/code/DeferredLintHandler;
            aload 7 /* prevLintPos */
            invokevirtual com.sun.tools.javac.code.DeferredLintHandler.setPos:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
            pop
        end local 7 // com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition prevLintPos
        end local 6 // com.sun.tools.javac.tree.JCTree$JCModuleDecl decl
        end local 5 // javax.tools.JavaFileObject prev
        end local 4 // com.sun.tools.javac.comp.Modules$UsesProvidesVisitor v
        end local 3 // com.sun.tools.javac.comp.Env env
        end local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
        15: .line 968
            return
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lcom/sun/tools/javac/comp/Modules;
            0   16     1          sym  Lcom/sun/tools/javac/code/Symbol;
            1   15     2         msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            3   15     3          env  Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
            4   15     4            v  Lcom/sun/tools/javac/comp/Modules$UsesProvidesVisitor;
            5   15     5         prev  Ljavax/tools/JavaFileObject;
            6   15     6         decl  Lcom/sun/tools/javac/tree/JCTree$JCModuleDecl;
            7   15     7  prevLintPos  Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
      Exception table:
        from    to  target  type
           7     9       9  any
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure

  private boolean lambda$6(java.util.Set, com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Ljava/util/Set;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1235
            aload 1
            ifnonnull 2
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.moduleFinder:Lcom/sun/tools/javac/code/ModuleFinder;
            aload 2 /* sym */
            invokevirtual com.sun.tools.javac.code.ModuleFinder.findModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
            getstatic com.sun.tools.javac.code.Kinds$Kind.ERR:Lcom/sun/tools/javac/code/Kinds$Kind;
            if_acmpeq 1
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         1: iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1
            aload 2 /* sym */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    4     2   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static boolean lambda$7(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1236
            aload 0 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.flags:()J
            ldc 9007199254740992
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static boolean lambda$8(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1243
            aload 0 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
         1: .line 1244
            aload 0 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.exports:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.stream:()Ljava/util/stream/Stream;
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$9(Lcom/sun/tools/javac/code/Directive$ExportsDirective;)Z (6)
                  (Lcom/sun/tools/javac/code/Directive$ExportsDirective;)Z
            invokeinterface java.util.stream.Stream.anyMatch:(Ljava/util/function/Predicate;)Z
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private boolean lambda$10(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1250
            aload 1 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
         1: .line 1251
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            aload 0 /* this */
            getfield com.sun.tools.javac.comp.Modules.java_:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.startsWith:(Lcom/sun/tools/javac/util/Name;)Z
            ifne 4
         2: .line 1252
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.exports:Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.stream:()Ljava/util/stream/Stream;
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/javac/comp/Modules.lambda$11(Lcom/sun/tools/javac/code/Directive$ExportsDirective;)Z (6)
                  (Lcom/sun/tools/javac/code/Directive$ExportsDirective;)Z
            invokeinterface java.util.stream.Stream.anyMatch:(Ljava/util/function/Predicate;)Z
            ifeq 4
         3: .line 1251
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    5     1   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static boolean lambda$12(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1256
            iconst_1
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static boolean lambda$13(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1261
            aload 0 /* sym */
            invokevirtual com.sun.tools.javac.code.Symbol$ModuleSymbol.complete:()V
         1: .line 1262
            aload 0 /* sym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.resolutionFlags:Ljava/util/Set;
            getstatic com.sun.tools.javac.code.Symbol$ModuleResolutionFlags.DO_NOT_RESOLVE_BY_DEFAULT:Lcom/sun/tools/javac/code/Symbol$ModuleResolutionFlags;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static void lambda$14(java.util.Set, java.util.Set, com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Ljava/util/Set;Ljava/util/Set;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
         0: .line 1306
            aload 0
            aload 2 /* sym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         1: .line 1307
            aload 1
            ifnull 3
         2: .line 1308
            aload 1
            aload 2 /* sym */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 1309
      StackMap locals:
      StackMap stack:
            return
        end local 2 // com.sun.tools.javac.code.Symbol$ModuleSymbol sym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     2   sym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static boolean lambda$16(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 1327
            aload 0 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.resolutionFlags:Ljava/util/Set;
            getstatic com.sun.tools.javac.code.Symbol$ModuleResolutionFlags.WARN_INCUBATING:Lcom/sun/tools/javac/code/Symbol$ModuleResolutionFlags;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static java.lang.String lambda$17(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
         0: .line 1328
            aload 0 /* msym */
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.name:Lcom/sun/tools/javac/util/Name;
            invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol msym
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  msym  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static void lambda$18(com.sun.tools.javac.util.Name, com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
         0: .line 1340
            aload 1 /* m */
            aload 0
            dup_x1
            putfield com.sun.tools.javac.code.Symbol$ModuleSymbol.version:Lcom/sun/tools/javac/util/Name;
            return
        end local 1 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     m  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private void lambda$19(com.sun.tools.javac.code.Symbol$ModuleSymbol, com.sun.tools.javac.code.Symbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/code/Symbol;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 2 // com.sun.tools.javac.code.Symbol sym
         0: .line 1444
            aload 0 /* this */
            aload 1
            invokevirtual com.sun.tools.javac.comp.Modules.completeModule:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)V
            return
        end local 2 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/javac/comp/Modules;
            0    1     2   sym  Lcom/sun/tools/javac/code/Symbol;
    Exceptions:
      throws com.sun.tools.javac.code.Symbol$CompletionFailure

  private static java.lang.String lambda$20(com.sun.tools.javac.code.Directive$RequiresDirective);
    descriptor: (Lcom/sun/tools/javac/code/Directive$RequiresDirective;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 1485
            new java.lang.StringBuilder
            dup
            ldc "no entry in cache for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0
            getfield com.sun.tools.javac.code.Directive$RequiresDirective.module:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.String lambda$21(com.sun.tools.javac.code.Symbol$ModuleSymbol, com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1521
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ".requires == null; "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void lambda$22(com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Map, com.sun.tools.javac.code.Symbol$ModuleSymbol, java.util.Set);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Set;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.sun.tools.javac.comp.Modules this
        start local 3 // com.sun.tools.javac.code.Symbol$ModuleSymbol exportsFrom
        start local 4 // java.util.Set exports
         0: .line 1555
            aload 1
            getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.readModules:Ljava/util/Set;
            aload 3 /* exportsFrom */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 1556
            aload 0 /* this */
            aload 1
            aload 2
            aload 3 /* exportsFrom */
            aload 4 /* exports */
            invokevirtual com.sun.tools.javac.comp.Modules.addVisiblePackages:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Map;Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Ljava/util/Collection;)V
         2: .line 1558
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.util.Set exports
        end local 3 // com.sun.tools.javac.code.Symbol$ModuleSymbol exportsFrom
        end local 0 // com.sun.tools.javac.comp.Modules this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/sun/tools/javac/comp/Modules;
            0    3     3  exportsFrom  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
            0    3     4      exports  Ljava/util/Set<Lcom/sun/tools/javac/code/Directive$ExportsDirective;>;

  private static java.util.Set lambda$23(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol _x
         0: .line 1656
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol _x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    _x  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static java.util.Set lambda$24(com.sun.tools.javac.code.Symbol$ModuleSymbol);
    descriptor: (Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;)Ljava/util/Set;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
         0: .line 1733
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            areturn
        end local 0 // com.sun.tools.javac.code.Symbol$ModuleSymbol m
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     m  Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;

  private static boolean lambda$9(com.sun.tools.javac.code.Directive$ExportsDirective);
    descriptor: (Lcom/sun/tools/javac/code/Directive$ExportsDirective;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Directive$ExportsDirective e
         0: .line 1244
            aload 0 /* e */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
            ifnonnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.tools.javac.code.Directive$ExportsDirective e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     e  Lcom/sun/tools/javac/code/Directive$ExportsDirective;

  private static boolean lambda$11(com.sun.tools.javac.code.Directive$ExportsDirective);
    descriptor: (Lcom/sun/tools/javac/code/Directive$ExportsDirective;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.javac.code.Directive$ExportsDirective e
         0: .line 1252
            aload 0 /* e */
            getfield com.sun.tools.javac.code.Directive$ExportsDirective.modules:Lcom/sun/tools/javac/util/List;
            ifnonnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.tools.javac.code.Directive$ExportsDirective e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     e  Lcom/sun/tools/javac/code/Directive$ExportsDirective;
}
SourceFile: "Modules.java"
NestMembers:
  com.sun.tools.javac.comp.Modules$1  com.sun.tools.javac.comp.Modules$2  com.sun.tools.javac.comp.Modules$3  com.sun.tools.javac.comp.Modules$ModuleVisitor  com.sun.tools.javac.comp.Modules$PackageNameFinder  com.sun.tools.javac.comp.Modules$UsesProvidesVisitor
InnerClasses:
  public ExportsDirective = com.sun.tools.javac.code.Directive$ExportsDirective of com.sun.tools.javac.code.Directive
  public RequiresDirective = com.sun.tools.javac.code.Directive$RequiresDirective of com.sun.tools.javac.code.Directive
  public final RequiresFlag = com.sun.tools.javac.code.Directive$RequiresFlag of com.sun.tools.javac.code.Directive
  public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
  public final LintCategory = com.sun.tools.javac.code.Lint$LintCategory of com.sun.tools.javac.code.Lint
  public final Feature = com.sun.tools.javac.code.Source$Feature of com.sun.tools.javac.code.Source
  public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
  public abstract Completer = com.sun.tools.javac.code.Symbol$Completer of com.sun.tools.javac.code.Symbol
  public CompletionFailure = com.sun.tools.javac.code.Symbol$CompletionFailure of com.sun.tools.javac.code.Symbol
  public final ModuleResolutionFlags = com.sun.tools.javac.code.Symbol$ModuleResolutionFlags of com.sun.tools.javac.code.Symbol
  public ModuleSymbol = com.sun.tools.javac.code.Symbol$ModuleSymbol of com.sun.tools.javac.code.Symbol
  public PackageSymbol = com.sun.tools.javac.code.Symbol$PackageSymbol of com.sun.tools.javac.code.Symbol
  public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
  com.sun.tools.javac.comp.Modules$1
  com.sun.tools.javac.comp.Modules$2
  com.sun.tools.javac.comp.Modules$3
  ModuleVisitor = com.sun.tools.javac.comp.Modules$ModuleVisitor of com.sun.tools.javac.comp.Modules
  public abstract PackageNameFinder = com.sun.tools.javac.comp.Modules$PackageNameFinder of com.sun.tools.javac.comp.Modules
  UsesProvidesVisitor = com.sun.tools.javac.comp.Modules$UsesProvidesVisitor of com.sun.tools.javac.comp.Modules
  public Errors = com.sun.tools.javac.resources.CompilerProperties$Errors of com.sun.tools.javac.resources.CompilerProperties
  public Warnings = com.sun.tools.javac.resources.CompilerProperties$Warnings of com.sun.tools.javac.resources.CompilerProperties
  public JCCompilationUnit = com.sun.tools.javac.tree.JCTree$JCCompilationUnit of com.sun.tools.javac.tree.JCTree
  public abstract JCDirective = com.sun.tools.javac.tree.JCTree$JCDirective of com.sun.tools.javac.tree.JCTree
  public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
  public JCModuleDecl = com.sun.tools.javac.tree.JCTree$JCModuleDecl of com.sun.tools.javac.tree.JCTree
  public JCPackageDecl = com.sun.tools.javac.tree.JCTree$JCPackageDecl of com.sun.tools.javac.tree.JCTree
  public JCRequires = com.sun.tools.javac.tree.JCTree$JCRequires of com.sun.tools.javac.tree.JCTree
  public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
  public abstract Visitor = com.sun.tools.javac.tree.JCTree$Visitor of com.sun.tools.javac.tree.JCTree
  public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic
  public final Error = com.sun.tools.javac.util.JCDiagnostic$Error of com.sun.tools.javac.util.JCDiagnostic
  public final Warning = com.sun.tools.javac.util.JCDiagnostic$Warning of com.sun.tools.javac.util.JCDiagnostic
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
  public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject