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

Ondrej Lhotak olhotak at uwaterloo.ca
Fri Aug 13 08:12:16 EDT 2010


This looks like the expected behaviour of Class Hierarchy Analysis,
which is what Soot uses by default, when Spark is not explicitly
enabled. Hal, are you using Spark?

If you are using Spark, can you send me a small but complete example of
the program that you are analyzing and the Soot command line (or the
driver program that you use to call into Soot)?

Thanks.

Ondrej

On Fri, Aug 13, 2010 at 07:57:04AM -0400, Laurie Hendren wrote:
>  Ondrej, can you take a quick look at this question?
> 
> THanks, Laurie
> 
> On 13/08/2010 4:14 AM, Eric Bodden wrote:
> >>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
> >_______________________________________________
> >Soot-list mailing list
> >Soot-list at sable.mcgill.ca
> >http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> 
> -- 
> +-----------------------------------------------------------------
> | Laurie Hendren --- laurie.hendren at mcgill.ca
> | Associate Dean (Academic), Faculty of Science,
> | Dawson Hall, McGill University, 853 Sherbrooke St W,
> | Montreal QC H3A 2T6 Canada, 514-398-7179, fax 514-398-1774
> +----------------------------------------------------------------
> | For contact and home page info as Professor, Computer Science:
> | http://www.sable.mcgill.ca/~hendren   ---  hendren at cs.mcgill.ca
> | Research: http://www.sable.mcgill.ca  http://aspectbench.org
> +----------------------------------------------------------------
> 


More information about the Soot-list mailing list