error message "unknown identifier 'xxx'" causes Frama-C to forget previous more severe errors
ID0002033: This issue was created automatically from Mantis Issue 2033. Further discussion may take place here.
|ID0002033||Frama-Clang||Plug-in > clang||public||2014-12-15||2015-02-17|
|Product Version||-||Target Version||-||Fixed in Version||-|
In its current form (cf. issue #2032 (closed)), the complete output of "frama-c -wp 405.cpp" looks like:
Now output intermediate result 405.cpp:6:[kernel] user error: Cannot find field salary [kernel] user error: skipping file "405.cpp" that has errors. [kernel] Frama-C aborted: invalid user input.
However, if a non-declared variable (e.g. "xxx") is added to the "assigns" clause in line 5, the subsequent call to the wp plugin is no longer suppressed; the complete output then looks:
405.cpp:5:26: unknown identifier 'xxx' Now output intermediate result [wp] Running WP plugin... [wp] Collecting axiomatic usage [wp] warning: Missing RTE guards [wp] 0 goal scheduled [wp] Proved goals: 0 / 0
If there is some Frama-C-internal variable holding the severity of errors detected so far, the "Cannot find field salary" error seems to set it to a high level (thus suppressing the wp call), which is ok; however the "unknown identifier 'xxx'" seems to lower that level again (thus re-enabling the wp call), which is probably not ok.