From a2150af444e85b22dd5dc0abdb232bbebb992a41 Mon Sep 17 00:00:00 2001 From: aclement Date: Fri, 18 Feb 2005 16:26:51 +0000 Subject: [PATCH] Use ability to remove problems when building using intermediate compilation results (fix doubling of tasks/deows in inc building) --- .../ajdt/internal/compiler/AjCompilerAdapter.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/AjCompilerAdapter.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/AjCompilerAdapter.java index 1b64e7fc3..9091a8c15 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/AjCompilerAdapter.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/AjCompilerAdapter.java @@ -26,6 +26,7 @@ import org.aspectj.bridge.IProgressListener; import org.aspectj.weaver.bcel.BcelWeaver; import org.aspectj.weaver.bcel.BcelWorld; import org.aspectj.weaver.patterns.CflowPointcut; +import org.aspectj.org.eclipse.jdt.core.compiler.IProblem; import org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult; import org.aspectj.org.eclipse.jdt.internal.compiler.Compiler; import org.aspectj.org.eclipse.jdt.internal.compiler.ICompilerAdapter; @@ -254,6 +255,14 @@ public class AjCompilerAdapter implements ICompilerAdapter { InterimCompilationResult ir = (InterimCompilationResult) iter.next(); if (!resultsPendingWeave.contains(ir)) { // equality based on source file name... ir.result().hasBeenAccepted = false; // it may have been accepted before, start again + + // Remove DEOWs as they are going to be added again during weaving + ir.result().removeProblems(new CompilationResult.ProblemsForRemovalFilter() { + public boolean accept(IProblem p) { + String s = p.getSupplementaryMessageInfo(); + if (s != null && s.endsWith("[deow=true]")) return true; + return false; + }}); resultsPendingWeave.add(ir); } } -- 2.39.5