Skip to content

Feedback about value analysis degeneration

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


Id Project Category View Due Date Updated
ID0001221 Frama-C Plug-in > Eva public 2012-06-26 2012-07-03
Reporter Anne Assigned To pascal Resolution no change required
Priority normal Severity feature Reproducibility have not tried
Platform - OS - OS Version -
Product Version Frama-C Nitrogen-20111001 Target Version - Fixed in Version -

Description :

It would be great to have more information about the reasons why the value analysis degenerates in some cases. For instance : $ frama-c -val toto.c with : int main (int argc, char * argv []) { char * s1 = argv[1]; char * s2 = argv[2]; return 0; } gives : toto.c:2:[kernel] warning: out of bounds read. assert \valid(argv+1); toto.c:3:[kernel] warning: out of bounds read. assert \valid(argv+2); [value] Recording results for main [value] done for function main [value] ====== VALUES COMPUTED ====== [value] Values for function main: NON TERMINATING FUNCTION

I know now that I have to use -context-width, but it is not easy to guess from the value analysis output, especially if we don't know if the function doesn't terminate for other reasons... Would it be possible to give the first statement where the state is BOTTOM for instance : this would be a hint.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information