[Soot-list] Exception Analysis
irem
irem at nada.kth.se
Mon Oct 22 13:50:12 EDT 2007
The analysis worked this way just fine. Now what I wonder is vmErrors.
What does this mean? I checked the API spec and there one talks about
VM_ERRORS. I do not know what these mean either.
Thanks,
Irem
KTH, Sweden
On Wed, 2007-10-17 at 12:45 -0600, John Jorgensen wrote:
> >>>>> "eric.bodden" == Eric Bodden <eric.bodden at mail.mcgill.ca> writes:
>
> eric.bodden> In fact it is true that *certain*
> eric.bodden> exceptions can be thrown at every single
> eric.bodden> statement, e.g. exceptions of type
> eric.bodden> OutOfMemoryError. The default exception analysis
> eric.bodden> encodes this soundly.
>
> Actually (in the spirit of pedantry) *all* exceptions have the potential to be
> thrown at every single statement, since, to quote the
> documentation of PedanticThrowAnalysis:
>
> the deprecated Thread.stop(Throwable) method allows one thread to
> cause any Throwable it wants to be thrown in another thread,
> meaning that all Throwables may arrive asynchronously from the
> perspective of the victim thread
>
> eric.bodden> There is a constructor
> eric.bodden> ExceptionalUnitGraph(Body,ThrowAnalysis) that
> eric.bodden> you can use to create an exceptional unit graph
> eric.bodden> with a "real" throw analysis. The default is a
> eric.bodden> pedantic throw analysis, which causes your
> eric.bodden> problems:
>
> If I remember correctly, if you're calling your analyses via
> soot.Main (rather than using soot as a library), there are
> command-line options to change the default behaviour of the
> ExceptionalUnitGraph constructor; see the "-throw-analysis",
> "-omit-excepting-unit-edges", and "-trim-cfgs" options in
>
> http://www.sable.mcgill.ca/soot/tutorial/usage/index.html
>
> (or "soot --help"). You probably want "-trim-cfgs".
More information about the Soot-list
mailing list