Incorrect states passed to value analysis callbacks in presence of slevel
ID0000732: This issue was created automatically from Mantis Issue 732. Further discussion may take place here.
Id | Project | Category | View | Due Date | Updated |
---|---|---|---|---|---|
ID0000732 | Frama-C | Plug-in > Eva | public | 2011-02-20 | 2014-02-12 |
Reporter | yakobowski | Assigned To | pascal | Resolution | fixed |
Priority | normal | Severity | major | Reproducibility | always |
Platform | - | OS | - | OS Version | - |
Product Version | Frama-C Carbon-20110201 | Target Version | - | Fixed in Version | Frama-C Nitrogen-20111001 |
Description :
Execute the following program with options '-val -slevel n' for n between 1 and 10001.
int p[20000]; void main () { for (int j=0;j<10000;j++) p[j]=1; }
Inspecting the values of the variable j in the gui reveals ranges of the form [n..10000], which is clearly incorrect.
Also, there is a big gap in the execution time between a fully symbolic evaluation (-slevel 10001) and a partial one (eg. -slevel 10000). This seems to be related to superposing the states in the callbacks.
Additional Information :
The bug appears between the svn revisions 11262 and 11385.