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

Laurie Hendren hendren at cs.mcgill.ca
Fri Aug 13 07:57:04 EDT 2010


  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