diff options
author | aclement <aclement> | 2005-11-18 09:17:56 +0000 |
---|---|---|
committer | aclement <aclement> | 2005-11-18 09:17:56 +0000 |
commit | dd9a9b284ab44b14ea3735d2663e85afb861220b (patch) | |
tree | 16d8a0e7168f541b1c49126569f87bed786242a6 | |
parent | c7608950f0deb6f9951435f58209ad60aaf28e06 (diff) | |
download | aspectj-dd9a9b284ab44b14ea3735d2663e85afb861220b.tar.gz aspectj-dd9a9b284ab44b14ea3735d2663e85afb861220b.zip |
fix for 116949
-rw-r--r-- | weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java b/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java index 2d4932a09..a2a887017 100644 --- a/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java +++ b/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java @@ -604,12 +604,16 @@ class BcelClassWeaver implements IClassWeaver { } List l = typeToCheck.getInterTypeMungers(); for (Iterator iterator = l.iterator(); iterator.hasNext();) { - BcelTypeMunger element = (BcelTypeMunger) iterator.next(); - if (element.getMunger() instanceof NewMethodTypeMunger) { - if (debug) System.err.println("Possible ITD candidate "+element); - ResolvedMember aMethod = element.getSignature(); - ResolvedMember isOverriding = isOverriding(typeToCheck,aMethod,mname,mrettype,mmods,inSamePackage,methodParamsArray); - if (isOverriding!=null) return isOverriding; + Object o = iterator.next(); + // FIXME asc if its not a BcelTypeMunger then its an EclipseTypeMunger ... do I need to worry about that? + if (o instanceof BcelTypeMunger) { + BcelTypeMunger element = (BcelTypeMunger)o; + if (element.getMunger() instanceof NewMethodTypeMunger) { + if (debug) System.err.println("Possible ITD candidate "+element); + ResolvedMember aMethod = element.getSignature(); + ResolvedMember isOverriding = isOverriding(typeToCheck,aMethod,mname,mrettype,mmods,inSamePackage,methodParamsArray); + if (isOverriding!=null) return isOverriding; + } } } |