Skip to content

Jessie: infinite or not annotated loops

ID0000103: This issue was created automatically from Mantis Issue 103. Further discussion may take place here.


Id Project Category View Due Date Updated
ID0000103 Frama-C Plug-in > jessie public 2009-05-27 2009-12-03
Reporter dpariente Assigned To cmarche Resolution fixed
Priority normal Severity minor Reproducibility always
Platform - OS - OS Version -
Product Version Frama-C GIT, precise the release id Target Version - Fixed in Version -

Description :

(This issue was previously discussed through private messages but not fully resolved. It is now recorded into the BTS for traceability reasons.)

As all POs generated by Jessie/Why from the following annotated code are automatically discharged by ATPs, one might conclude that ensures clause is also validated! Which is not the case, of course!

Source code:

//@ requires \valid(p); assigns *p; ensures p==4; void g(intp){ int i=0; while(1>0) { *p=3; } }

Commande line: frama-c -jessie-analysis -jessie-gui file.c

What could be done in Jessie to warn users about:

  • the loop for which termination condition or loop variant are not provided?
  • unreachable return control point due to infinite loop (=> no post-condition can be met)?
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information