View | Details | Raw Unified | Return to bug 363858 | Differences between
and this patch

Collapse All | Expand All

(-)a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/util/Util.java (-1 / +4 lines)
Lines 141-147 public class Util { Link Here
141
141
142
public static void appendProblem(StringBuffer problems, IProblem problem, char[] source, int problemCount) {
142
public static void appendProblem(StringBuffer problems, IProblem problem, char[] source, int problemCount) {
143
    problems.append(problemCount + (problem.isError() ? ". ERROR" : ". WARNING"));
143
    problems.append(problemCount + (problem.isError() ? ". ERROR" : ". WARNING"));
144
    problems.append(" in " + new String(problem.getOriginatingFileName()));
144
    char[] originatingFileName = problem.getOriginatingFileName();
145
    if (originatingFileName != null) {
146
		problems.append(" in " + new String(originatingFileName));
147
	}
145
    if (source != null) {
148
    if (source != null) {
146
        problems.append(((DefaultProblem)problem).errorReportSource(source));
149
        problems.append(((DefaultProblem)problem).errorReportSource(source));
147
    }
150
    }
(-)a/org.eclipse.jdt.core/dom/org/eclipse/jdt/core/dom/CompilationUnitResolver.java (-5 / +12 lines)
Lines 99-104 class CompilationUnitResolver extends Compiler { Link Here
99
	DefaultBindingResolver.BindingTables bindingTables;
99
	DefaultBindingResolver.BindingTables bindingTables;
100
100
101
	boolean hasCompilationAborted;
101
	boolean hasCompilationAborted;
102
	CategorizedProblem abortProblem;
102
103
103
	private IProgressMonitor monitor;
104
	private IProgressMonitor monitor;
104
	
105
	
Lines 364-369 class CompilationUnitResolver extends Compiler { Link Here
364
			removeUnresolvedBindings(unit);
365
			removeUnresolvedBindings(unit);
365
		}
366
		}
366
		this.hasCompilationAborted = true;
367
		this.hasCompilationAborted = true;
368
		this.abortProblem = abortException.problem;
367
	}
369
	}
368
370
369
	public static void parse(ICompilationUnit[] compilationUnits, ASTRequestor astRequestor, int apiLevel, Map options, int flags, IProgressMonitor monitor) {
371
	public static void parse(ICompilationUnit[] compilationUnits, ASTRequestor astRequestor, int apiLevel, Map options, int flags, IProgressMonitor monitor) {
Lines 689-699 class CompilationUnitResolver extends Compiler { Link Here
689
				// the bindings could not be resolved due to missing types in name environment
691
				// the bindings could not be resolved due to missing types in name environment
690
				// see https://bugs.eclipse.org/bugs/show_bug.cgi?id=86541
692
				// see https://bugs.eclipse.org/bugs/show_bug.cgi?id=86541
691
				CompilationUnitDeclaration unitDeclaration = parse(sourceUnit, nodeSearcher, options, flags);
693
				CompilationUnitDeclaration unitDeclaration = parse(sourceUnit, nodeSearcher, options, flags);
692
				final int problemCount = unit.compilationResult.problemCount;
694
				if (unit != null) {
693
				if (problemCount != 0) {
695
					final int problemCount = unit.compilationResult.problemCount;
694
					unitDeclaration.compilationResult.problems = new CategorizedProblem[problemCount];
696
					if (problemCount != 0) {
695
					System.arraycopy(unit.compilationResult.problems, 0, unitDeclaration.compilationResult.problems, 0, problemCount);
697
						unitDeclaration.compilationResult.problems = new CategorizedProblem[problemCount];
696
					unitDeclaration.compilationResult.problemCount = problemCount;
698
						System.arraycopy(unit.compilationResult.problems, 0, unitDeclaration.compilationResult.problems, 0, problemCount);
699
						unitDeclaration.compilationResult.problemCount = problemCount;
700
					}
701
				} else if (resolver.abortProblem != null) {
702
					unitDeclaration.compilationResult.problemCount = 1;
703
					unitDeclaration.compilationResult.problems = new CategorizedProblem[] { resolver.abortProblem };
697
				}
704
				}
698
				return unitDeclaration;
705
				return unitDeclaration;
699
			}
706
			}

Return to bug 363858