Logging just enough information for failed pre-conditions
ID0001415:
**This issue was created automatically from Mantis Issue 1415. Further discussion may take place here.**
---
| **Id** | **Project** | **Category** | **View** | **Due Date** | **Updated** |
| --- | --- | --- | --- | --- | --- |
| ID0001415 | Frama-C | Plug-in > Eva | public | 2013-05-03 | 2014-03-13 |
| | | | | | |
| --- | --- | --- | --- | --- | --- |
| **Reporter** | pascal | **Assigned To** | yakobowski | **Resolution** | fixed |
| **Priority** | normal | **Severity** | minor | **Reproducibility** | have not tried |
| **Platform** | - | **OS** | - | **OS Version** | - |
| **Product Version** | - | **Target Version** | - | **Fixed in Version** | Frama-C Neon-20140301 |
### Description :
There was a bit of a discussion over an analysis made on an example provided by a StackOverflow user:
http://stackoverflow.com/a/16356519/139746
The current message is:
.../libc/string.h:54:[value] Function memcpy: precondition got status invalid.
That is a bit frustrating. The localization of the call to memcpy() can be found just above in the log:
[value] computing for function memcpy <- main.
Called from mem.c:13.
but the exact nature of the detected issue is only printed as a reference to libc/string.h, a file that the user did not even provide emself.
There are at least two solutions suggested by the discussion:
- annotate the libc preconditions with nice labels, and when a pre-condition fails, print any label it may have, or
- print the entire ACSL pre-condition that failed, including any label it may have.
issue