[Eva] Emits indeterminate alarms on call arguments to builtins.
'Indeterminate' alarms are alarms about uninitialized memory, escaping pointers and special floating-point values (infinite and NaN). These alarms are emitted for functions specified by -eva-warn-copy-indeterminate option, which is @all by default. These alarms can be disabled for some function by -eva-warn-copy-indeterminate=-f, in which case they are also disabled for the argument expressions of calls to [f]. However: - the @all default value did not include functions without definition (for which a specification or a builtin is used). - 'indeterminate' alarms were emitted anyway for the arguments of calls to functions without definition, except for builtins. So no indeterminate alarms were emitted for the argument expressions of calls to builtins (unless their definitions were included). This commit fixes this behavior: the @all default of -eva-warn-copy-indeterminate option include all functions and special case for functions without definition or builtins are removed. It still avoids to emit surch alarms on Eva directives such as Frama_C_show_each.
Showing
- src/plugins/value/engine/transfer_stmt.ml 3 additions, 7 deletionssrc/plugins/value/engine/transfer_stmt.ml
- src/plugins/value/value_parameters.ml 1 addition, 1 deletionsrc/plugins/value/value_parameters.ml
- tests/float/oracle/math_builtins.res.oracle 22 additions, 4 deletionstests/float/oracle/math_builtins.res.oracle
- tests/libc/oracle/math_h.1.res.oracle 8 additions, 4 deletionstests/libc/oracle/math_h.1.res.oracle
- tests/libc/oracle/math_h.2.res.oracle 8 additions, 4 deletionstests/libc/oracle/math_h.2.res.oracle
- tests/value/initialized_copy.i 2 additions, 2 deletionstests/value/initialized_copy.i
- tests/value/oracle/initialized_copy.1.res.oracle 8 additions, 10 deletionstests/value/oracle/initialized_copy.1.res.oracle
Loading
Please register or sign in to comment