Fixed binary type name resolution order, only generate binary names from already-compiled units.
git-svn-id: https://google-web-toolkit.googlecode.com/svn/releases/1.6@4721 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java b/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
index 48c34b3..42ea2bc 100644
--- a/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
+++ b/dev/core/test/com/google/gwt/dev/javac/TypeOracleTestingUtils.java
@@ -17,6 +17,7 @@
import com.google.gwt.core.ext.TreeLogger;
import com.google.gwt.core.ext.typeinfo.TypeOracle;
+import com.google.gwt.dev.javac.CompilationUnit.State;
import com.google.gwt.dev.javac.impl.SourceFileCompilationUnit;
import java.util.Collections;
@@ -48,13 +49,16 @@
public static TypeOracle buildTypeOracle(TreeLogger logger,
Set<CompilationUnit> units) {
- JdtCompiler.compile(units);
Set<String> validBinaryTypeNames = new HashSet<String>();
for (CompilationUnit unit : units) {
- for (CompiledClass compiledClass : unit.getCompiledClasses()) {
- validBinaryTypeNames.add(compiledClass.getBinaryName());
+ Set<CompiledClass> compiledClasses = unit.getCompiledClasses();
+ if (compiledClasses != null) {
+ for (CompiledClass compiledClass : compiledClasses) {
+ validBinaryTypeNames.add(compiledClass.getBinaryName());
+ }
}
}
+ JdtCompiler.compile(units);
CompilationUnitInvalidator.validateCompilationUnits(units,
validBinaryTypeNames);
if (CompilationUnitInvalidator.invalidateUnitsWithErrors(logger, units)) {