diff options
author | aclement <aclement> | 2008-08-19 21:29:20 +0000 |
---|---|---|
committer | aclement <aclement> | 2008-08-19 21:29:20 +0000 |
commit | 9b87ea9ff3ea63d6115cf93c2420c200d90566b3 (patch) | |
tree | c5c1a47f8db9836b8ec8755cf110df8e2cd65752 | |
parent | 2b3b1260564cf3d4580771c5922c8aea8f213981 (diff) | |
download | aspectj-9b87ea9ff3ea63d6115cf93c2420c200d90566b3.tar.gz aspectj-9b87ea9ff3ea63d6115cf93c2420c200d90566b3.zip |
241047: test and fix: when pipelining we have to ask the generic type for its super interfaces as thats where they will be until it has gone through the pipeline
-rw-r--r-- | weaver/src/org/aspectj/weaver/patterns/TypePattern.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/patterns/TypePattern.java b/weaver/src/org/aspectj/weaver/patterns/TypePattern.java index ddd8e598e..1336ea863 100644 --- a/weaver/src/org/aspectj/weaver/patterns/TypePattern.java +++ b/weaver/src/org/aspectj/weaver/patterns/TypePattern.java @@ -181,7 +181,10 @@ public abstract class TypePattern extends PatternNode { //System.out.println(" true"); return true; } - + // If an ITD is applied, it will be put onto the generic type, not the parameterized or raw form + if (superType.isParameterizedType() || superType.isRawType()) { + superType = superType.getGenericType(); + } // FuzzyBoolean ret = FuzzyBoolean.NO; // ??? -eh for (Iterator i = superType.getDirectSupertypes(); i.hasNext(); ) { ResolvedType superSuperType = (ResolvedType)i.next(); |