[Soot-list] Call graph behavior with interfaces and no concrete implementations

Eric Bodden bodden at st.informatik.tu-darmstadt.de
Fri Aug 13 04:14:33 EDT 2010


> That is exactly what I originally thought.  However, the behavior I see is that I do, in fact, get Y.foo() as an outbound edge of X.b() if and only if I include a concrete implementation of Y.  Again, note that in this scenario, I have not actually initialized the field in X.y - i.e. the only change is providing a concrete implementation of Y.  This is why I'm at a loss to explain what's happening under the covers.  My model for how things should be working is precisely what you described - that it isn't throws my internal model for a loop.

Interesting. This certainly contradicts my understanding of how Spark works.

Eric


More information about the Soot-list mailing list