code: private void scanModulePaths(PackageSymbol p, ModuleSymbol msym) throws IOException {
          Set<JavaFileObject.Kind> kinds = getPackageFileKinds();
  
          Set<JavaFileObject.Kind> classKinds = EnumSet.copyOf(kinds);
          classKinds.remove(JavaFileObject.Kind.SOURCE);
          boolean wantClassFiles = !classKinds.isEmpty();
  
          Set<JavaFileObject.Kind> sourceKinds = EnumSet.copyOf(kinds);
          sourceKinds.remove(JavaFileObject.Kind.CLASS);
          boolean wantSourceFiles = !sourceKinds.isEmpty();
  
          String packageName = p.fullname.toString();
  
          Location classLocn = msym.classLocation;
          Location sourceLocn = msym.sourceLocation;
          Location patchLocn = msym.patchLocation;
          Location patchOutLocn = msym.patchOutputLocation;
  
          boolean prevPreferCurrent = preferCurrent;
  
          try {
              preferCurrent = false;
              if (wantClassFiles && (patchOutLocn != null)) {
                  fillIn(p, patchOutLocn,
                         list(patchOutLocn,
                              p,
                              packageName,
                              classKinds));
              }
              if ((wantClassFiles || wantSourceFiles) && (patchLocn != null)) {
                  Set<JavaFileObject.Kind> combined = EnumSet.noneOf(JavaFileObject.Kind.class);
                  combined.addAll(classKinds);
                  combined.addAll(sourceKinds);
                  fillIn(p, patchLocn,
                         list(patchLocn,
                              p,
                              packageName,
                              combined));
              }
              preferCurrent = true;
              if (wantClassFiles && (classLocn != null)) {
                  fillIn(p, classLocn,
                         list(classLocn,
                              p,
                              packageName,
                              classKinds));
              }
              if (wantSourceFiles && (sourceLocn != null)) {
                  fillIn(p, sourceLocn,
                         list(sourceLocn,
                              p,
                              packageName,
                              sourceKinds));
              }
          } finally {
              preferCurrent = prevPreferCurrent;
          }
      }
docs: is the same as the module's classLocation.