summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--weaver/src/org/aspectj/weaver/patterns/NameBindingPointcut.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/weaver/src/org/aspectj/weaver/patterns/NameBindingPointcut.java b/weaver/src/org/aspectj/weaver/patterns/NameBindingPointcut.java
index ce54badf0..7d58025e4 100644
--- a/weaver/src/org/aspectj/weaver/patterns/NameBindingPointcut.java
+++ b/weaver/src/org/aspectj/weaver/patterns/NameBindingPointcut.java
@@ -15,7 +15,7 @@ package org.aspectj.weaver.patterns;
import java.util.List;
-import org.aspectj.weaver.UnresolvedType;
+import org.aspectj.weaver.ResolvedType;
import org.aspectj.weaver.World;
import org.aspectj.weaver.ast.Test;
import org.aspectj.weaver.ast.Var;
@@ -37,8 +37,11 @@ public abstract class NameBindingPointcut extends Pointcut {
BindingTypePattern b = (BindingTypePattern)type;
state.set(b.getFormalIndex(), var);
}
- UnresolvedType myType = type.getExactType(); //should have failed earlier
-
+ ResolvedType myType = type.getExactType().resolve(world);
+ if (myType.isParameterizedType()) {
+ // unchecked warning already issued...
+ myType = (ResolvedType) myType.getRawType();
+ }
return Test.makeInstanceof(var, myType.resolve(world));
}