From f90186cb8eac1b4abae4c9b8fd74828b98f534ab Mon Sep 17 00:00:00 2001 From: acolyer Date: Wed, 9 Mar 2005 14:13:14 +0000 Subject: fix for Bugzilla Bug 86789 annotations and "circularity in declare precedence" --- weaver/src/org/aspectj/weaver/patterns/WildTypePattern.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'weaver/src') diff --git a/weaver/src/org/aspectj/weaver/patterns/WildTypePattern.java b/weaver/src/org/aspectj/weaver/patterns/WildTypePattern.java index 0eb128a9d..d869b4468 100644 --- a/weaver/src/org/aspectj/weaver/patterns/WildTypePattern.java +++ b/weaver/src/org/aspectj/weaver/patterns/WildTypePattern.java @@ -139,7 +139,7 @@ public class WildTypePattern extends TypePattern { return innerMatchesExactly(targetTypeName); } - if (isStar()) { + if (isNamePatternStar()) { // we match if the dimensions match int numDimensionsInTargetType = 0; if (dim > 0) { @@ -367,7 +367,7 @@ public class WildTypePattern extends TypePattern { public TypePattern resolveBindings(IScope scope, Bindings bindings, boolean allowBinding, boolean requireExactType) { - if (isStar()) { + if (isNamePatternStar()) { // If there is an annotation specified we have to // use a special variant of Any TypePattern called // AnyWithAnnotation @@ -516,6 +516,11 @@ public class WildTypePattern extends TypePattern { } public boolean isStar() { + boolean annPatternStar = annotationPattern == AnnotationTypePattern.ANY; + return (isNamePatternStar() && annPatternStar); + } + + private boolean isNamePatternStar() { return namePatterns.length == 1 && namePatterns[0].isAny(); } -- cgit v1.2.3