[Soot-list] What transformer changes static invokes?

Marc-André Laverdière marc-andre.laverdiere-papineau at polymtl.ca
Tue Nov 25 22:03:03 EST 2014


Hello everybody,

I've been having a weird bug today -
soot.ResolutionFailedException: Resolved
<fr.unice.i3s.modalis.jSeduite.technical.image.registry.PictureAlbumRegistryCRUD:
java.lang.String toSql(java.util.Date)> to
<fr.unice.i3s.modalis.jSeduite.technical.image.registry.PictureAlbumRegistryCRUD:
java.lang.String toSql(java.util.Date)> which has wrong static-ness
 	at soot.SootMethodRefImpl.checkStatic(SootMethodRefImpl.java:114)
 	at soot.SootMethodRefImpl.resolve(SootMethodRefImpl.java:129)
 	at soot.SootMethodRefImpl.resolve(SootMethodRefImpl.java:109)
 	at
soot.jimple.internal.AbstractInvokeExpr.getMethod(AbstractInvokeExpr.java:67)

What's interesting is that javap tells me that, inside that class, toSql
is _always_ called with invokestatic.

What transformer could be doing this? How can I disable it? I am running
this within Flowdroid, so some default could be set that I'm not aware of.

That class is resolved at level BODIES and it is _not_ phantom.

-- 
Marc-André Laverdière-Papineau
Doctorant - PhD Candidate


More information about the Soot-list mailing list