langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java
changeset 39361 cd0aca7db174
parent 38827 884d32899770
child 39366 8bf5fe72ca88
equal deleted inserted replaced
39184:3aa52182b3ad 39361:cd0aca7db174
    48 import javax.tools.JavaFileManager.Location;
    48 import javax.tools.JavaFileManager.Location;
    49 import javax.tools.JavaFileObject;
    49 import javax.tools.JavaFileObject;
    50 import javax.tools.JavaFileObject.Kind;
    50 import javax.tools.JavaFileObject.Kind;
    51 import javax.tools.StandardLocation;
    51 import javax.tools.StandardLocation;
    52 
    52 
       
    53 import com.sun.tools.javac.code.ClassFinder;
    53 import com.sun.tools.javac.code.Directive;
    54 import com.sun.tools.javac.code.Directive;
    54 import com.sun.tools.javac.code.Directive.ExportsDirective;
    55 import com.sun.tools.javac.code.Directive.ExportsDirective;
    55 import com.sun.tools.javac.code.Directive.RequiresDirective;
    56 import com.sun.tools.javac.code.Directive.RequiresDirective;
    56 import com.sun.tools.javac.code.Directive.RequiresFlag;
    57 import com.sun.tools.javac.code.Directive.RequiresFlag;
    57 import com.sun.tools.javac.code.Directive.UsesDirective;
    58 import com.sun.tools.javac.code.Directive.UsesDirective;
    99 import static com.sun.tools.javac.code.Kinds.Kind.MDL;
   100 import static com.sun.tools.javac.code.Kinds.Kind.MDL;
   100 import static com.sun.tools.javac.code.TypeTag.CLASS;
   101 import static com.sun.tools.javac.code.TypeTag.CLASS;
   101 
   102 
   102 import com.sun.tools.javac.tree.JCTree.JCDirective;
   103 import com.sun.tools.javac.tree.JCTree.JCDirective;
   103 import com.sun.tools.javac.tree.JCTree.Tag;
   104 import com.sun.tools.javac.tree.JCTree.Tag;
       
   105 import com.sun.tools.javac.util.Abort;
       
   106 import com.sun.tools.javac.util.Position;
   104 
   107 
   105 import static com.sun.tools.javac.code.Flags.ABSTRACT;
   108 import static com.sun.tools.javac.code.Flags.ABSTRACT;
   106 import static com.sun.tools.javac.code.Flags.ENUM;
   109 import static com.sun.tools.javac.code.Flags.ENUM;
   107 import static com.sun.tools.javac.code.Flags.PUBLIC;
   110 import static com.sun.tools.javac.code.Flags.PUBLIC;
   108 import static com.sun.tools.javac.tree.JCTree.Tag.MODULEDEF;
   111 import static com.sun.tools.javac.tree.JCTree.Tag.MODULEDEF;
   215             }
   218             }
   216 
   219 
   217             for (ModuleSymbol msym: roots) {
   220             for (ModuleSymbol msym: roots) {
   218                 msym.complete();
   221                 msym.complete();
   219             }
   222             }
       
   223         } catch (CompletionFailure ex) {
       
   224             log.error(JCDiagnostic.DiagnosticFlag.NON_DEFERRABLE, Position.NOPOS, "cant.access", ex.sym, ex.getDetailValue());
       
   225             if (ex instanceof ClassFinder.BadClassFile) throw new Abort();
   220         } finally {
   226         } finally {
   221             depth--;
   227             depth--;
   222         }
   228         }
   223 
   229 
   224         return (log.nerrors == startErrors);
   230         return (log.nerrors == startErrors);