diff options
Diffstat (limited to 'weaver')
-rw-r--r-- | weaver/src/org/aspectj/weaver/bcel/AtAjAttributes.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/bcel/AtAjAttributes.java b/weaver/src/org/aspectj/weaver/bcel/AtAjAttributes.java index 98d9d9632..87fcbf22e 100644 --- a/weaver/src/org/aspectj/weaver/bcel/AtAjAttributes.java +++ b/weaver/src/org/aspectj/weaver/bcel/AtAjAttributes.java @@ -483,6 +483,14 @@ public class AtAjAttributes { // FIXME asc see related comment way about about the version... struct.ajAttributes.add(new AjAttribute.WeaverVersionInfo()); struct.ajAttributes.add(new AjAttribute.Aspect(perClause)); + FormalBinding[] bindings = new org.aspectj.weaver.patterns.FormalBinding[0]; + final IScope binding; + binding = new BindingScope( + struct.enclosingType, + struct.context, + bindings + ); + perClause.resolve(binding); return true; } } @@ -599,7 +607,7 @@ public class AtAjAttributes { } else { pc = parsePointcut(beforeAdvice.getValue().stringifyValue(), struct, false); if (pc == null) return false;//parse error - pc.resolve(binding); + pc = pc.resolve(binding); } setIgnoreUnboundBindingNames(pc, bindings); |