[Soot-list] Fwd: Assertions in source code

Zhoulai zell08v at gmail.com
Sat Dec 6 15:00:10 EST 2014


Hi,

I guess Soot may or may no recognize your *assert* depending on whether
*assert* is enabled/disabled by your compiler.

See
http://stackoverflow.com/questions/3018683/what-does-assert-do

If I remember well, if enabled, java *assert* is syntactically equivalent
to  *if* (...) statement which should be well captured by soot's IR like
*Jimple*.

Otherwise, an alternative is to use *junit*.*assert* or your customized
*assert* so they explicitly appear in your IR and then you can do whatever
you want.

I hope  this answers to your question.

Zhoulai

On Thu, Dec 4, 2014 at 10:39 AM, Mihir Mehta <mihir.cs.iitd at gmail.com>
wrote:

> (Mods: I earlier sent the exact same email from the wrong email address,
> sorry about that; this is the address with which I'm subscribed to the
> list.)
>
> Hi folks,
>
> Does Soot offer some way to read assertions, expressed either via the Java
> assert keyword (http://docs.oracle.com/javase/specs/jls/se8/html/jls-
> 14.html#jls-14.10) or in some other syntax inside comments? I'm trying to
> do something that involved annotating loops with invariants to make my
> verification task easier, and I tried inserting assert statements into the
> source code towards this end. However, the soot parser failed with a
> java.lang.ArrayIndexOutOfBoundsException in soot.JastAddJ.BytecodeParser.parseThisClass,
> which is consistent with what this document (http://www.sable.mcgill.ca/
> soot/tutorial/useannotation/useannotation.pdf) says about soot only
> supporting annotations for null pointer checks and array bound checks.
>
> Am I doing something wrong, or is Soot indeed incapable of doing this for
> me? I could make a minimal example of the problem but I don't think this is
> about debugging as much as this is about figuring out the right Soot
> feature for the job.
>
> Thanks,
> Mihir.
>
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at CS.McGill.CA
> https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20141206/2deceda7/attachment.html 


More information about the Soot-list mailing list