diff options
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java index 05c776a0a..bd3783b0a 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/problem/AjProblemReporter.java @@ -19,6 +19,7 @@ import java.util.Iterator; import org.aspectj.ajdt.internal.compiler.ast.PointcutDeclaration; import org.aspectj.ajdt.internal.compiler.ast.Proceed; import org.aspectj.ajdt.internal.compiler.lookup.EclipseFactory; +import org.aspectj.ajdt.internal.compiler.lookup.InterTypeMethodBinding; import org.aspectj.org.eclipse.jdt.core.compiler.CharOperation; import org.aspectj.org.eclipse.jdt.core.compiler.IProblem; import org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult; @@ -171,6 +172,13 @@ public class AjProblemReporter extends ProblemReporter { super.inheritedMethodReducesVisibility(type,concreteMethod,abstractMethods); } + // if either of the MethodBinding is an ITD, we have already reported it. + public void staticAndInstanceConflict(MethodBinding currentMethod, MethodBinding inheritedMethod) { + if (currentMethod instanceof InterTypeMethodBinding) return; + if (inheritedMethod instanceof InterTypeMethodBinding) return; + super.staticAndInstanceConflict(currentMethod, inheritedMethod); + } + public void abstractMethodMustBeImplemented( SourceTypeBinding type, MethodBinding abstractMethod) |