diff options
author | aclement <aclement> | 2005-02-18 16:26:51 +0000 |
---|---|---|
committer | aclement <aclement> | 2005-02-18 16:26:51 +0000 |
commit | a2150af444e85b22dd5dc0abdb232bbebb992a41 (patch) | |
tree | 62e3ce3cad58b229ca23eec995de6cbe05d877d2 /org.aspectj.ajdt.core/src | |
parent | 0ee85863735ebef10e3b4853142c8d9f0c7848ed (diff) | |
download | aspectj-a2150af444e85b22dd5dc0abdb232bbebb992a41.tar.gz aspectj-a2150af444e85b22dd5dc0abdb232bbebb992a41.zip |
Use ability to remove problems when building using intermediate compilation results (fix doubling of tasks/deows in inc building)
Diffstat (limited to 'org.aspectj.ajdt.core/src')
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/AjCompilerAdapter.java | 9 |
1 files changed, 9 insertions, 0 deletions
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); } } |