1.1 --- a/src/jdk.compiler/share/classes/com/sun/tools/javac/code/ModuleFinder.java Thu Mar 30 11:40:24 2017 +0200
1.2 +++ b/src/jdk.compiler/share/classes/com/sun/tools/javac/code/ModuleFinder.java Mon Jul 31 11:07:41 2017 +0200
1.3 @@ -31,7 +31,6 @@
1.4 import java.util.Map;
1.5 import java.util.NoSuchElementException;
1.6 import java.util.Set;
1.7 -import java.util.function.Function;
1.8
1.9 import javax.tools.JavaFileManager;
1.10 import javax.tools.JavaFileManager.Location;
1.11 @@ -58,6 +57,7 @@
1.12 import com.sun.tools.javac.util.Names;
1.13
1.14 import static com.sun.tools.javac.code.Kinds.Kind.*;
1.15 +import com.sun.tools.javac.comp.Check;
1.16
1.17 /**
1.18 * This class provides operations to locate module definitions
1.19 @@ -82,6 +82,7 @@
1.20 private final Names names;
1.21
1.22 private final ClassFinder classFinder;
1.23 + private final Check chk;
1.24
1.25 /** Access to files
1.26 */
1.27 @@ -109,6 +110,7 @@
1.28 fileManager = context.get(JavaFileManager.class);
1.29 log = Log.instance(context);
1.30 classFinder = ClassFinder.instance(context);
1.31 + chk = Check.instance(context);
1.32
1.33 diags = JCDiagnostic.Factory.instance(context);
1.34 }
1.35 @@ -203,7 +205,13 @@
1.36 if (fo == null) {
1.37 msym = syms.unnamedModule;
1.38 } else {
1.39 - msym = readModule(fo);
1.40 + try {
1.41 + msym = readModule(fo);
1.42 + } catch (CompletionFailure ex) {
1.43 + chk.completionError(null, ex);
1.44 + msym = syms.unnamedModule;
1.45 + }
1.46 +
1.47 }
1.48
1.49 if (msym.patchLocation == null) {