import org.aspectj.bridge.IMessage;
import org.aspectj.bridge.Message;
import org.aspectj.weaver.AnnotationX;
+import org.aspectj.weaver.ReferenceType;
import org.aspectj.weaver.ResolvedMember;
import org.aspectj.weaver.ResolvedType;
import org.aspectj.weaver.UnresolvedType;
}
// name must be undefined so far
- ResolvedType current = m_world.resolve(m_concreteAspect.name, true);
- if (!current.isMissing()) {
+ // TODO only convert the name to signature once, probably earlier than this
+ ResolvedType current = m_world.lookupBySignature(UnresolvedType.forName(m_concreteAspect.name).getSignature());
+
+ if (current!=null && !current.isMissing()) {
reportError("Attempt to concretize but chosen aspect name already defined: " + stringify());
return false;
}
}
// handle the perClause
- BcelPerClauseAspectAdder perClauseMunger = new BcelPerClauseAspectAdder(
- ResolvedType.forName(m_concreteAspect.name).resolve(m_world),
- m_perClause.getKind()
- );
+ ReferenceType rt = new ReferenceType(ResolvedType.forName(m_concreteAspect.name).getSignature(),m_world);
+ BcelPerClauseAspectAdder perClauseMunger = new BcelPerClauseAspectAdder(rt,m_perClause.getKind());
perClauseMunger.forceMunge(cg, false);
//TODO AV - unsafe cast