import org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration;
import org.eclipse.jdt.internal.compiler.env.*;
import org.eclipse.jdt.internal.compiler.impl.ReferenceContext;
+import org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding;
import java.util.*;
public int unitIndex, totalUnitsKnown;
public boolean hasBeenAccepted = false;
public char[] fileName;
+ public boolean hasInconsistentToplevelHierarchies = false; // record the fact some toplevel types have inconsistent hierarchies
public CompilationResult(
char[] fileName,
*/
public void record(char[] typeName, ClassFile classFile) {
+ SourceTypeBinding sourceType = classFile.referenceBinding;
+ if (!sourceType.isLocalType() && sourceType.isHierarchyInconsistent()) {
+ this.hasInconsistentToplevelHierarchies = true;
+ }
compiledTypes.put(typeName, classFile);
}