From 3d5f09aa1cbf8843894f857a94e8c97c00fe3cab Mon Sep 17 00:00:00 2001 From: aclement Date: Sun, 8 Nov 2009 23:05:38 +0000 Subject: [PATCH] done! --- .../src/org/aspectj/weaver/ResolvedType.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/ResolvedType.java b/org.aspectj.matcher/src/org/aspectj/weaver/ResolvedType.java index 9494aa445..d89de7197 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/ResolvedType.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/ResolvedType.java @@ -590,7 +590,7 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl return null; } - // DO ALL CALLERS DO THEIR OWN SEARCHING FOR ITDs? + // Bug (1) Do callers expect ITDs to be involved in the lookup? or do they do their own walk over ITDs? /** * Looks for the first member in the hierarchy matching aMember. This method differs from lookupMember(Member) in that it takes * into account parameters which are type variables - which clearly an unresolved Member cannot do since it does not know @@ -613,7 +613,7 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl candidate = candidate.getBackingGenericMember(); } } - + // OPTIMIZE speed up matches? optimize order of checks if (candidate.matches(aMember, eraseGenerics)) { found = candidate; break; @@ -2186,6 +2186,7 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl public ResolvedType next() { ResolvedType next = delegate.next(); + // BUG should check for generics and erase? if (!visited.contains(next)) { visited.add(next); toPersue.add(next); // pushes on interfaces already visited? @@ -2197,7 +2198,7 @@ public abstract class ResolvedType extends UnresolvedType implements AnnotatedEl throw new UnsupportedOperationException(); } } - + public void clearInterTypeMungers() { if (isRawType()) { getGenericType().clearInterTypeMungers(); -- 2.39.5