Assert erroneously proved valid
ID0001776: This issue was created automatically from Mantis Issue 1776. Further discussion may take place here.
Id | Project | Category | View | Due Date | Updated |
---|---|---|---|---|---|
ID0001776 | Frama-C | Plug-in > wp | public | 2014-05-07 | 2015-03-17 |
Reporter | Anne | Assigned To | correnson | Resolution | fixed |
Priority | normal | Severity | major | Reproducibility | have not tried |
Platform | - | OS | - | OS Version | - |
Product Version | Frama-C Neon-20140301 | Target Version | - | Fixed in Version | Frama-C Sodium |
Description :
The assertion of the following example is proved valid by QED, but it is not since the call to g modifies X. If the [x++] statement is added after the assertion, the problem disappear.
Additional Information :
extern int X; void g (void) { X ++; } void f (int x, int y) { if (x > X) { g (); //@ assert ax2: x > X; // x++; } }
Steps To Reproduce :
$ frama-c -wp test.c