[Soot-list] ClassResolutionFailedException
Jochen Huck
jochen.huck at student.kit.edu
Tue Mar 1 04:58:31 EST 2011
Hi,
currently I am running Paddle to analyze ANTLR. After the call graph is
constructed I run a transformer that finds instances of InvokeExpr. When
i call getMethod().getName() on such a instance I get:
Exception in thread "Thread-11"
soot.SootMethodRefImpl$ClassResolutionFailedException: Class
antlr.Lookahead doesn't have method setEpsilon([]) : void; failed to
resolve in superclasses and interfacesLooking in antlr.Lookahead which
has methods [<antlr.Lookahead: void <init>()>, <antlr.Lookahead: void
<init>(antlr.collections.impl.BitSet)>, <antlr.Lookahead: void
<init>(java.lang.String)>, <antlr.Lookahead: java.lang.Object clone()>,
<antlr.Lookahead: void combineWith(antlr.Lookahead)>, <antlr.Lookahead:
boolean containsEpsilon()>, <antlr.Lookahead: antlr.Lookahead
intersection(antlr.Lookahead)>, <antlr.Lookahead: boolean nil()>,
<antlr.Lookahead: antlr.Lookahead of(int)>, <antlr.Lookahead: void
resetEpsilon()>, <antlr.Lookahead: void setEpsilon()>, <antlr.Lookahead:
java.lang.String toString()>, <antlr.Lookahead: java.lang.String
toString(java.lang.String,antlr.CharFormatter)>, <antlr.Lookahead:
java.lang.String
toString(java.lang.String,antlr.CharFormatter,antlr.Grammar)>,
<antlr.Lookahead: java.lang.String
toString(java.lang.String,antlr.collections.impl.Vector)>]
Looking in java.lang.Object which has methods [<java.lang.Object: void
<init>()>, <java.lang.Object: void registerNatives()>,
<java.lang.Object: java.lang.Class getClass()>, <java.lang.Object: int
hashCode()>, <java.lang.Object: boolean equals(java.lang.Object)>,
<java.lang.Object: java.lang.Object clone()>, <java.lang.Object:
java.lang.String toString()>, <java.lang.Object: void notify()>,
<java.lang.Object: void notifyAll()>, <java.lang.Object: void
wait(long)>, <java.lang.Object: void wait(long,int)>, <java.lang.Object:
void wait()>, <java.lang.Object: void finalize()>, <java.lang.Object:
void <clinit>()>]
Looking in java.lang.Cloneable which has methods []
at soot.SootMethodRefImpl.resolve(SootMethodRefImpl.java:177)
at soot.SootMethodRefImpl.resolve(SootMethodRefImpl.java:106)
at
soot.jimple.internal.AbstractInvokeExpr.getMethod(AbstractInvokeExpr.java:54)
The class anltr.Lookahead has a method void getEpsilon() and is on the
classpath.
What is wrong here?
Thanks, Jochen
More information about the Soot-list
mailing list