From aa5f7cf644c466ac9bccf3703184eada164cc3f3 Mon Sep 17 00:00:00 2001 From: Julien Signoles <julien.signoles@cea.fr> Date: Wed, 25 Sep 2013 11:39:45 +0000 Subject: [PATCH] [E-ACSL] again compatible with the trunk and no more with Fluorine --- src/plugins/e-acsl/VERSION | 2 +- src/plugins/e-acsl/configure.ac | 12 +-- src/plugins/e-acsl/options.mli | 8 +- src/plugins/e-acsl/pre_analysis.ml | 7 +- .../e-acsl-runtime/oracle/addrOf.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/addrOf.res.oracle | 10 ++- .../e-acsl-runtime/oracle/arith.1.res.oracle | 16 +++- .../e-acsl-runtime/oracle/arith.res.oracle | 10 ++- .../e-acsl-runtime/oracle/array.1.res.oracle | 14 ++-- .../e-acsl-runtime/oracle/array.res.oracle | 14 ++-- .../e-acsl-runtime/oracle/at.1.res.oracle | 12 +-- .../tests/e-acsl-runtime/oracle/at.res.oracle | 12 +-- .../oracle/bts1304.1.res.oracle | 12 +-- .../e-acsl-runtime/oracle/bts1304.res.oracle | 12 +-- .../oracle/bts1307.1.res.oracle | 12 +-- .../e-acsl-runtime/oracle/bts1307.res.oracle | 10 ++- .../oracle/bts1324.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/bts1324.res.oracle | 10 ++- .../oracle/bts1326.1.res.oracle | 12 +-- .../e-acsl-runtime/oracle/bts1326.res.oracle | 10 ++- .../oracle/bts1390.1.res.oracle | 22 ++---- .../e-acsl-runtime/oracle/bts1390.res.oracle | 22 ++---- .../oracle/bts1398.1.res.oracle | 76 +++++++++--------- .../e-acsl-runtime/oracle/bts1398.res.oracle | 76 +++++++++--------- .../oracle/bts1399.1.res.oracle | 33 +++++++- .../e-acsl-runtime/oracle/bts1399.res.oracle | 52 ++++++++++++- .../oracle/bts1478.1.res.oracle | 14 ++-- .../e-acsl-runtime/oracle/bts1478.res.oracle | 14 ++-- .../e-acsl-runtime/oracle/call.1.res.oracle | 28 ++++++- .../e-acsl-runtime/oracle/call.res.oracle | 28 ++++++- .../e-acsl-runtime/oracle/cast.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/cast.res.oracle | 10 ++- .../oracle/comparison.1.res.oracle | 10 ++- .../oracle/comparison.res.oracle | 10 ++- .../e-acsl-runtime/oracle/empty.1.res.oracle | 4 + .../e-acsl-runtime/oracle/empty.res.oracle | 4 + .../e-acsl-runtime/oracle/false.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/false.res.oracle | 10 ++- .../oracle/function_contract.1.res.oracle | 14 ++-- .../oracle/function_contract.res.oracle | 14 ++-- .../tests/e-acsl-runtime/oracle/gen_addrOf.c | 4 + .../tests/e-acsl-runtime/oracle/gen_addrOf2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_arith.c | 4 + .../tests/e-acsl-runtime/oracle/gen_arith2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_array.c | 4 + .../tests/e-acsl-runtime/oracle/gen_array2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_at.c | 4 + .../tests/e-acsl-runtime/oracle/gen_at2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_bts1304.c | 9 ++- .../e-acsl-runtime/oracle/gen_bts13042.c | 9 ++- .../tests/e-acsl-runtime/oracle/gen_bts1307.c | 4 + .../e-acsl-runtime/oracle/gen_bts13072.c | 4 + .../tests/e-acsl-runtime/oracle/gen_bts1324.c | 8 +- .../e-acsl-runtime/oracle/gen_bts13242.c | 8 +- .../tests/e-acsl-runtime/oracle/gen_bts1326.c | 4 + .../e-acsl-runtime/oracle/gen_bts13262.c | 4 + .../tests/e-acsl-runtime/oracle/gen_bts1390.c | 12 ++- .../e-acsl-runtime/oracle/gen_bts13902.c | 12 ++- .../tests/e-acsl-runtime/oracle/gen_bts1398.c | 6 +- .../e-acsl-runtime/oracle/gen_bts13982.c | 6 +- .../tests/e-acsl-runtime/oracle/gen_bts1399.c | 8 +- .../e-acsl-runtime/oracle/gen_bts13992.c | 8 +- .../tests/e-acsl-runtime/oracle/gen_bts1478.c | 4 + .../e-acsl-runtime/oracle/gen_bts14782.c | 4 + .../tests/e-acsl-runtime/oracle/gen_call.c | 4 + .../tests/e-acsl-runtime/oracle/gen_call2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_cast.c | 4 + .../tests/e-acsl-runtime/oracle/gen_cast2.c | 4 + .../e-acsl-runtime/oracle/gen_comparison.c | 4 + .../e-acsl-runtime/oracle/gen_comparison2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_false.c | 4 + .../tests/e-acsl-runtime/oracle/gen_false2.c | 4 + .../oracle/gen_function_contract.c | 4 + .../oracle/gen_function_contract2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_ghost.c | 4 + .../tests/e-acsl-runtime/oracle/gen_ghost2.c | 4 + .../oracle/gen_integer_constant.c | 4 + .../oracle/gen_integer_constant2.c | 4 + .../e-acsl-runtime/oracle/gen_invariant.c | 4 + .../e-acsl-runtime/oracle/gen_invariant2.c | 4 + .../e-acsl-runtime/oracle/gen_labeled_stmt.c | 6 +- .../e-acsl-runtime/oracle/gen_labeled_stmt2.c | 6 +- .../tests/e-acsl-runtime/oracle/gen_lazy.c | 4 + .../tests/e-acsl-runtime/oracle/gen_lazy2.c | 4 + .../e-acsl-runtime/oracle/gen_linear_search.c | 16 ++-- .../oracle/gen_linear_search2.c | 16 ++-- .../oracle/gen_literal_string.c | 4 + .../oracle/gen_literal_string2.c | 4 + .../e-acsl-runtime/oracle/gen_localvar.c | 4 + .../e-acsl-runtime/oracle/gen_localvar2.c | 4 + .../e-acsl-runtime/oracle/gen_longlong.c | 6 +- .../e-acsl-runtime/oracle/gen_longlong2.c | 6 +- .../tests/e-acsl-runtime/oracle/gen_loop.c | 8 +- .../tests/e-acsl-runtime/oracle/gen_loop2.c | 8 +- .../oracle/gen_nested_code_annot.c | 4 + .../oracle/gen_nested_code_annot2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_not.c | 4 + .../tests/e-acsl-runtime/oracle/gen_not2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_null.c | 4 + .../tests/e-acsl-runtime/oracle/gen_null2.c | 4 + .../oracle/gen_other_constants.c | 4 + .../oracle/gen_other_constants2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_ptr.c | 4 + .../tests/e-acsl-runtime/oracle/gen_ptr2.c | 4 + .../e-acsl-runtime/oracle/gen_ptr_init.c | 4 + .../e-acsl-runtime/oracle/gen_ptr_init2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_quantif.c | 20 +++-- .../e-acsl-runtime/oracle/gen_quantif2.c | 20 +++-- .../tests/e-acsl-runtime/oracle/gen_result.c | 4 + .../tests/e-acsl-runtime/oracle/gen_result2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_sizeof.c | 4 + .../tests/e-acsl-runtime/oracle/gen_sizeof2.c | 4 + .../e-acsl-runtime/oracle/gen_stmt_contract.c | 4 + .../oracle/gen_stmt_contract2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_true.c | 4 + .../tests/e-acsl-runtime/oracle/gen_true2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_typedef.c | 4 + .../e-acsl-runtime/oracle/gen_typedef2.c | 4 + .../tests/e-acsl-runtime/oracle/gen_valid.c | 8 +- .../tests/e-acsl-runtime/oracle/gen_valid2.c | 8 +- .../e-acsl-runtime/oracle/gen_valid_alias.c | 8 +- .../e-acsl-runtime/oracle/gen_valid_alias2.c | 8 +- .../oracle/gen_valid_in_contract.c | 6 +- .../oracle/gen_valid_in_contract2.c | 6 +- .../tests/e-acsl-runtime/oracle/gen_vector.c | 8 +- .../tests/e-acsl-runtime/oracle/gen_vector2.c | 8 +- .../e-acsl-runtime/oracle/ghost.1.res.oracle | 34 +++++++- .../e-acsl-runtime/oracle/ghost.res.oracle | 39 +++++++++- .../oracle/integer_constant.1.res.oracle | 10 ++- .../oracle/integer_constant.res.oracle | 10 ++- .../oracle/invariant.1.res.oracle | 13 ++-- .../oracle/invariant.res.oracle | 10 ++- .../oracle/labeled_stmt.1.res.oracle | 12 +-- .../oracle/labeled_stmt.res.oracle | 12 +-- .../e-acsl-runtime/oracle/lazy.1.res.oracle | 16 ++-- .../e-acsl-runtime/oracle/lazy.res.oracle | 10 ++- .../oracle/linear_search.1.res.oracle | 14 ++-- .../oracle/linear_search.res.oracle | 12 +-- .../oracle/literal_string.1.res.oracle | 24 +++--- .../oracle/literal_string.res.oracle | 24 +++--- .../oracle/localvar.1.res.oracle | 30 ++++++- .../e-acsl-runtime/oracle/localvar.res.oracle | 30 ++++++- .../oracle/longlong.1.res.oracle | 11 ++- .../e-acsl-runtime/oracle/longlong.res.oracle | 11 ++- .../e-acsl-runtime/oracle/loop.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/loop.res.oracle | 20 ++--- .../oracle/nested_code_annot.1.res.oracle | 10 ++- .../oracle/nested_code_annot.res.oracle | 10 ++- .../e-acsl-runtime/oracle/not.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/not.res.oracle | 10 ++- .../e-acsl-runtime/oracle/null.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/null.res.oracle | 10 ++- .../oracle/other_constants.1.res.oracle | 10 ++- .../oracle/other_constants.res.oracle | 10 ++- .../e-acsl-runtime/oracle/ptr.1.res.oracle | 12 +-- .../e-acsl-runtime/oracle/ptr.res.oracle | 10 ++- .../oracle/ptr_init.1.res.oracle | 14 ++-- .../e-acsl-runtime/oracle/ptr_init.res.oracle | 14 ++-- .../oracle/quantif.1.res.oracle | 14 ++-- .../e-acsl-runtime/oracle/quantif.res.oracle | 10 ++- .../e-acsl-runtime/oracle/result.1.res.oracle | 12 +-- .../e-acsl-runtime/oracle/result.res.oracle | 12 +-- .../e-acsl-runtime/oracle/sizeof.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/sizeof.res.oracle | 10 ++- .../oracle/stmt_contract.1.res.oracle | 10 ++- .../oracle/stmt_contract.res.oracle | 10 ++- .../e-acsl-runtime/oracle/true.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/true.res.oracle | 10 ++- .../oracle/typedef.1.res.oracle | 10 ++- .../e-acsl-runtime/oracle/typedef.res.oracle | 10 ++- .../e-acsl-runtime/oracle/valid.1.res.oracle | 78 ++++++++++++++++++- .../e-acsl-runtime/oracle/valid.res.oracle | 78 ++++++++++++++++++- .../oracle/valid_alias.1.res.oracle | 56 ++++++++++++- .../oracle/valid_alias.res.oracle | 62 ++++++++++++++- .../oracle/valid_in_contract.1.res.oracle | 36 ++++++++- .../oracle/valid_in_contract.res.oracle | 36 ++++++++- .../e-acsl-runtime/oracle/vector.1.res.oracle | 34 +++++++- .../e-acsl-runtime/oracle/vector.res.oracle | 43 +++++++++- .../e-acsl/tests/e-acsl-runtime/test_config | 4 +- src/plugins/e-acsl/typing.ml | 4 +- 180 files changed, 1662 insertions(+), 545 deletions(-) diff --git a/src/plugins/e-acsl/VERSION b/src/plugins/e-acsl/VERSION index be586341736..52c43259d20 100644 --- a/src/plugins/e-acsl/VERSION +++ b/src/plugins/e-acsl/VERSION @@ -1 +1 @@ -0.3 +0.3+dev diff --git a/src/plugins/e-acsl/configure.ac b/src/plugins/e-acsl/configure.ac index 85782b90731..cb00b0fc14c 100644 --- a/src/plugins/e-acsl/configure.ac +++ b/src/plugins/e-acsl/configure.ac @@ -61,12 +61,12 @@ if test $VERSION_NUMBER -lt 20130601; then fi # at the time being, must use the Frama-C development version -# DEV=`echo $DEV_VERSION_NUMBER | sed -e 's/.*\(+dev\)/\1/' ` -# if test "$DEV" != "+dev"; then -# AC_MSG_ERROR(Frama-C version must be the current SVN version.); -# else -# AC_MSG_RESULT($FRAMAC_VERSION) -# fi +DEV=`echo $DEV_VERSION_NUMBER | sed -e 's/.*\(+dev\)/\1/' ` +if test "$DEV" != "+dev"; then + AC_MSG_ERROR(Frama-C version must be the current SVN version.); +else + AC_MSG_RESULT($FRAMAC_VERSION) +fi # OCaml version ############### diff --git a/src/plugins/e-acsl/options.mli b/src/plugins/e-acsl/options.mli index edaae0ccd81..c8f4dbdc7cd 100644 --- a/src/plugins/e-acsl/options.mli +++ b/src/plugins/e-acsl/options.mli @@ -34,10 +34,10 @@ module Project_name: String val must_visit: unit -> bool -val dkey_analysis: (*Log.*)category -val dkey_dup: (*Log.*)category -val dkey_translation: (*Log.*)category -val dkey_typing: (*Log.*)category +val dkey_analysis: Log.category +val dkey_dup: Log.category +val dkey_translation: Log.category +val dkey_typing: Log.category (* Local Variables: diff --git a/src/plugins/e-acsl/pre_analysis.ml b/src/plugins/e-acsl/pre_analysis.ml index 76e12cfcbea..6ef2c0f3122 100644 --- a/src/plugins/e-acsl/pre_analysis.ml +++ b/src/plugins/e-acsl/pre_analysis.ml @@ -380,9 +380,10 @@ module rec Transfer | None -> state | Some init -> do_init vi init state in -(* Globals.Vars.fold_in_file_rev_order do_one state*) - let l = Globals.Vars.fold_in_file_order (fun v i l -> (v, i) :: l) [] in - List.fold_left (fun state (v, i) -> do_one v i state) state l + Globals.Vars.fold_in_file_rev_order do_one state +(* below: compatibility with Fluorine *) +(* let l = Globals.Vars.fold_in_file_order (fun v i l -> (v, i) :: l) [] in + List.fold_left (fun state (v, i) -> do_one v i state) state l*) (** The (backwards) transfer function for a branch. The [(Cil.CurrentLoc.get ())] is set before calling this. If it returns None, then we have some diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle index b14dd6973d6..8773d06ed29 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init tests/e-acsl-runtime/addrOf.i:12:[value] Assertion got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle index b14dd6973d6..8773d06ed29 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/addrOf.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init tests/e-acsl-runtime/addrOf.i:12:[value] Assertion got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle index dc647059c4c..569a317907e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/arith.i:12:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. @@ -53,6 +55,7 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:157:[value] Function __gmpz_mul: precondition g FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:158:[value] Function __gmpz_mul: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:159:[value] Function __gmpz_mul: precondition got status valid. tests/e-acsl-runtime/arith.i:19:[value] Assertion got status valid. +tests/e-acsl-runtime/arith.i:19:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function __gmpz_tdiv_q FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:164:[value] Function __gmpz_tdiv_q: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:165:[value] Function __gmpz_tdiv_q: precondition got status valid. @@ -62,13 +65,17 @@ tests/e-acsl-runtime/arith.i:20:[value] Assertion got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:73:[value] Function __gmpz_init_set_str: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:75:[value] Function __gmpz_init_set_str: postcondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:76:[value] Function __gmpz_init_set_str: postcondition got status unknown. +tests/e-acsl-runtime/arith.i:20:[value] Assertion 'E_ACSL' got status valid. tests/e-acsl-runtime/arith.i:21:[value] Assertion got status valid. +tests/e-acsl-runtime/arith.i:21:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function __gmpz_tdiv_r FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:171:[value] Function __gmpz_tdiv_r: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:172:[value] Function __gmpz_tdiv_r: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:173:[value] Function __gmpz_tdiv_r: precondition got status valid. tests/e-acsl-runtime/arith.i:22:[value] Assertion got status valid. +tests/e-acsl-runtime/arith.i:22:[value] Assertion 'E_ACSL' got status valid. tests/e-acsl-runtime/arith.i:23:[value] Assertion got status valid. +tests/e-acsl-runtime/arith.i:23:[value] Assertion 'E_ACSL' got status valid. tests/e-acsl-runtime/arith.i:25:[value] Assertion got status valid. tests/e-acsl-runtime/arith.i:27:[value] Assertion got status valid. tests/e-acsl-runtime/arith.i:28:[value] Assertion got status valid. @@ -76,5 +83,6 @@ tests/e-acsl-runtime/arith.i:29:[value] Assertion got status valid. tests/e-acsl-runtime/arith.i:30:[value] Assertion got status valid. tests/e-acsl-runtime/arith.i:32:[value] Assertion got status valid. tests/e-acsl-runtime/arith.i:33:[value] Assertion got status valid. +tests/e-acsl-runtime/arith.i:33:[value] Assertion 'E_ACSL' got status valid. [value] done for function main [value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle index 1a71de02a9b..9d33b17f15c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/arith.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/arith.i:12:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle index 30e491a42ba..c4cd42d3ae3 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.1.res.oracle @@ -10,12 +10,14 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - T1[0..2] ∈ {0} - T2[0..3] ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + T1[0..2] ∈ {0} + T2[0..3] ∈ {0} tests/e-acsl-runtime/array.i:12:[value] entering loop for the first time tests/e-acsl-runtime/array.i:13:[value] entering loop for the first time tests/e-acsl-runtime/array.i:15:[value] Assertion got status unknown. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle index 9faaf5bf3fb..9c76d866663 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/array.res.oracle @@ -10,12 +10,14 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - T1[0..2] ∈ {0} - T2[0..3] ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + T1[0..2] ∈ {0} + T2[0..3] ∈ {0} tests/e-acsl-runtime/array.i:12:[value] entering loop for the first time tests/e-acsl-runtime/array.i:13:[value] entering loop for the first time tests/e-acsl-runtime/array.i:15:[value] Assertion got status unknown. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle index 9642a9b51a7..a05225b59c2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.1.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - A ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + A ∈ {0} [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __delete_block diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle index 356ade14ae5..8ca19010e11 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/at.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - A ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + A ∈ {0} [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __delete_block diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.1.res.oracle index e6a020e2bd0..1cb0bf21fee 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block tests/e-acsl-runtime/bts1304.i:23:[value] entering loop for the first time [value] using specification for function __initialize @@ -21,7 +23,7 @@ tests/e-acsl-runtime/bts1304.i:23:[value] entering loop for the first time tests/e-acsl-runtime/bts1304.i:25:[value] Assertion got status unknown. [value] using specification for function __initialized FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. -FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. [value] using specification for function __e_acsl_memory_clean diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.res.oracle index e6a020e2bd0..1cb0bf21fee 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1304.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block tests/e-acsl-runtime/bts1304.i:23:[value] entering loop for the first time [value] using specification for function __initialize @@ -21,7 +23,7 @@ tests/e-acsl-runtime/bts1304.i:23:[value] entering loop for the first time tests/e-acsl-runtime/bts1304.i:25:[value] Assertion got status unknown. [value] using specification for function __initialized FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. -FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. [value] using specification for function __e_acsl_memory_clean diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.1.res.oracle index 19ec21e0231..11f4a771e50 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.1.res.oracle @@ -13,10 +13,12 @@ tests/e-acsl-runtime/bts1307.i:31:[e-acsl] warning: approximating a real number [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init tests/e-acsl-runtime/bts1307.i:7:[value] Function __e_acsl_foo: precondition got status valid. @@ -43,7 +45,7 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition g [value] using specification for function __gmpz_init FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:39:[value] Function __gmpz_init: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:40:[value] Function __gmpz_init: postcondition got status valid. -tests/e-acsl-runtime/bts1307.i:13:[value] Assertion got status valid. +tests/e-acsl-runtime/bts1307.i:13:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function __gmpz_tdiv_q FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:164:[value] Function __gmpz_tdiv_q: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:165:[value] Function __gmpz_tdiv_q: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.res.oracle index 22e2561b1d8..c95f7403f10 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1307.res.oracle @@ -13,10 +13,12 @@ tests/e-acsl-runtime/bts1307.i:31:[e-acsl] warning: approximating a real number [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init tests/e-acsl-runtime/bts1307.i:7:[value] Function __e_acsl_foo: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.1.res.oracle index 3ee02b1adb7..a0f5710bcda 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __initialize [value] using specification for function __gmpz_init diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.res.oracle index 220781889ac..5198e195ed6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1324.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __initialize tests/e-acsl-runtime/bts1324.i:8:[value] entering loop for the first time diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.1.res.oracle index 6578312a83a..94b221716da 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __initialize [value] using specification for function __delete_block @@ -32,7 +34,7 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:145:[value] Function __gmpz_add: precondition g [value] using specification for function __gmpz_cmp FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. -tests/e-acsl-runtime/bts1326.i:11:[value] Assertion got status valid. +tests/e-acsl-runtime/bts1326.i:11:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. [value] using specification for function __gmpz_tdiv_q diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.res.oracle index dfd41592e10..8b2fe09a5f9 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1326.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __initialize [value] using specification for function __delete_block diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.1.res.oracle index e81b97ea040..dc531550cdf 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.1.res.oracle @@ -11,10 +11,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __literal_string @@ -27,21 +29,13 @@ FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got tests/e-acsl-runtime/bts1390.c:11:[value] entering loop for the first time tests/e-acsl-runtime/bts1390.c:20:[value] entering loop for the first time [value] using specification for function __delete_block -tests/e-acsl-runtime/bts1390.c:13:[value] Function memchr, behavior exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/bts1390.c:13:[value] Function memchr, behavior exists: postcondition got status valid. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:16:[value] Function memchr, behavior not_exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:13:[value] entering loop for the first time [value] using specification for function __offset -tests/e-acsl-runtime/bts1390.c:13:[value] cannot evaluate ACSL term, unsupported ACSL construct: \offset function FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:112:[value] Function __offset: postcondition got status unknown. -tests/e-acsl-runtime/bts1390.c:13:[value] Reading left-value __e_acsl_offset. - It contains a garbled mix of {"toto"} because of Arithmetic - {tests/e-acsl-runtime/bts1390.c:13}. -tests/e-acsl-runtime/bts1390.c:13:[kernel] warning: pointer comparison: - assert - \pointer_comparable((void *)__e_acsl_j, - (void *)((unsigned int)__e_acsl_offset)); FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. -tests/e-acsl-runtime/bts1390.c:13:[value] Function __e_acsl_memchr, behavior exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/bts1390.c:13:[value] Function __e_acsl_memchr, behavior exists: postcondition got status valid. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:16:[value] Function __e_acsl_memchr, behavior not_exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:21:[kernel] warning: out of bounds read. assert \valid_read(s); tests/e-acsl-runtime/bts1390.c:16:[value] Function memchr, behavior not_exists: postcondition got status valid. (Behavior may be inactive, no reduction performed.) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.res.oracle index e03f5c59747..46aa73f9818 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1390.res.oracle @@ -11,10 +11,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __literal_string @@ -49,23 +51,15 @@ tests/e-acsl-runtime/bts1390.c:11:[value] entering loop for the first time tests/e-acsl-runtime/bts1390.c:11:[kernel] warning: out of bounds read. assert \valid_read((char *)buf+__e_acsl_i_2); tests/e-acsl-runtime/bts1390.c:20:[value] entering loop for the first time [value] using specification for function __delete_block -tests/e-acsl-runtime/bts1390.c:13:[value] Function memchr, behavior exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/bts1390.c:13:[value] Function memchr, behavior exists: postcondition got status valid. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:16:[value] Function memchr, behavior not_exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:13:[value] entering loop for the first time [value] using specification for function __offset -tests/e-acsl-runtime/bts1390.c:13:[value] cannot evaluate ACSL term, unsupported ACSL construct: \offset function FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:112:[value] Function __offset: postcondition got status unknown. -tests/e-acsl-runtime/bts1390.c:13:[value] Reading left-value __e_acsl_offset. - It contains a garbled mix of {"toto"} because of Arithmetic - {tests/e-acsl-runtime/bts1390.c:13}. -tests/e-acsl-runtime/bts1390.c:13:[value] Reading left-value __e_acsl_lt_2. - It contains a garbled mix of {"toto"} because of Arithmetic - {tests/e-acsl-runtime/bts1390.c:13; tests/e-acsl-runtime/bts1390.c:13}. -tests/e-acsl-runtime/bts1390.c:13:[kernel] warning: pointer comparison: assert \pointer_comparable((void *)__e_acsl_lt_2, 0); tests/e-acsl-runtime/bts1390.c:13:[kernel] warning: out of bounds read. assert \valid_read((char *)__e_acsl_at_2+__e_acsl_j_2); [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. -tests/e-acsl-runtime/bts1390.c:13:[value] Function __e_acsl_memchr, behavior exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/bts1390.c:13:[value] Function __e_acsl_memchr, behavior exists: postcondition got status valid. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:16:[value] Function __e_acsl_memchr, behavior not_exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/bts1390.c:21:[kernel] warning: out of bounds read. assert \valid_read(s); tests/e-acsl-runtime/bts1390.c:16:[value] Function memchr, behavior not_exists: postcondition got status valid. (Behavior may be inactive, no reduction performed.) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.1.res.oracle index f68a9040ea7..9fabd606e3d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.1.res.oracle @@ -11,43 +11,45 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - __fc_stdout ∈ {{ NULL ; &S___fc_stdout }} - S___fc_stdout[0]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ - [--..--] - [0].__fc_inode ∈ {{ NULL ; &S___fc_inode_0_S___fc_stdout }} - [1]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ - [--..--] - [1].__fc_inode ∈ {{ NULL ; &S___fc_inode_1_S___fc_stdout }} - S___fc_inode_0_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ - [--..--] - [0].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_0_S___fc_inode_0_S___fc_stdout }} - {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ - [--..--] - [1].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_1_S___fc_inode_0_S___fc_stdout }} - [1].__fc_real_data_max_size ∈ [--..--] - S___fc_real_data_0_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] - S___fc_real_data_1_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] - S___fc_inode_1_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ - [--..--] - [0].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_0_S___fc_inode_1_S___fc_stdout }} - {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ - [--..--] - [1].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_1_S___fc_inode_1_S___fc_stdout }} - [1].__fc_real_data_max_size ∈ [--..--] - S___fc_real_data_0_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] - S___fc_real_data_1_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + __fc_stdout ∈ {{ NULL ; &S___fc_stdout }} + S___fc_stdout[0]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ + [--..--] + [0].__fc_inode ∈ {{ NULL ; &S___fc_inode_0_S___fc_stdout }} + [1]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ + [--..--] + [1].__fc_inode ∈ {{ NULL ; &S___fc_inode_1_S___fc_stdout }} + S___fc_inode_0_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ + [--..--] + [0].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_0_S___fc_inode_0_S___fc_stdout }} + {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ + [--..--] + [1].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_1_S___fc_inode_0_S___fc_stdout }} + [1].__fc_real_data_max_size ∈ [--..--] + S___fc_real_data_0_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] + S___fc_real_data_1_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] + S___fc_inode_1_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ + [--..--] + [0].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_0_S___fc_inode_1_S___fc_stdout }} + {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ + [--..--] + [1].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_1_S___fc_inode_1_S___fc_stdout }} + [1].__fc_real_data_max_size ∈ [--..--] + S___fc_real_data_0_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] + S___fc_real_data_1_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __literal_string diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.res.oracle index f68a9040ea7..9fabd606e3d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1398.res.oracle @@ -11,43 +11,45 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - __fc_stdout ∈ {{ NULL ; &S___fc_stdout }} - S___fc_stdout[0]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ - [--..--] - [0].__fc_inode ∈ {{ NULL ; &S___fc_inode_0_S___fc_stdout }} - [1]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ - [--..--] - [1].__fc_inode ∈ {{ NULL ; &S___fc_inode_1_S___fc_stdout }} - S___fc_inode_0_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ - [--..--] - [0].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_0_S___fc_inode_0_S___fc_stdout }} - {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ - [--..--] - [1].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_1_S___fc_inode_0_S___fc_stdout }} - [1].__fc_real_data_max_size ∈ [--..--] - S___fc_real_data_0_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] - S___fc_real_data_1_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] - S___fc_inode_1_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ - [--..--] - [0].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_0_S___fc_inode_1_S___fc_stdout }} - {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ - [--..--] - [1].__fc_real_data ∈ - {{ NULL ; - &S___fc_real_data_1_S___fc_inode_1_S___fc_stdout }} - [1].__fc_real_data_max_size ∈ [--..--] - S___fc_real_data_0_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] - S___fc_real_data_1_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + __fc_stdout ∈ {{ NULL ; &S___fc_stdout }} + S___fc_stdout[0]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ + [--..--] + [0].__fc_inode ∈ {{ NULL ; &S___fc_inode_0_S___fc_stdout }} + [1]{.__fc_stdio_id; .__fc_maxsz; .__fc_writepos; .__fc_readpos; .__fc_is_a_socket; .mode} ∈ + [--..--] + [1].__fc_inode ∈ {{ NULL ; &S___fc_inode_1_S___fc_stdout }} + S___fc_inode_0_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ + [--..--] + [0].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_0_S___fc_inode_0_S___fc_stdout }} + {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ + [--..--] + [1].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_1_S___fc_inode_0_S___fc_stdout }} + [1].__fc_real_data_max_size ∈ [--..--] + S___fc_real_data_0_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] + S___fc_real_data_1_S___fc_inode_0_S___fc_stdout[0..1] ∈ [--..--] + S___fc_inode_1_S___fc_stdout[0]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks} ∈ + [--..--] + [0].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_0_S___fc_inode_1_S___fc_stdout }} + {[0].__fc_real_data_max_size; [1]{.st_dev; .st_ino; .st_mode; .st_nlink; .st_uid; .st_gid; .st_rdev; .st_size; .st_atime; .st_mtime; .st_ctime; .st_blksize; .st_blocks}} ∈ + [--..--] + [1].__fc_real_data ∈ + {{ NULL ; + &S___fc_real_data_1_S___fc_inode_1_S___fc_stdout }} + [1].__fc_real_data_max_size ∈ [--..--] + S___fc_real_data_0_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] + S___fc_real_data_1_S___fc_inode_1_S___fc_stdout[0..1] ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __literal_string diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.1.res.oracle index c0010f4152d..0c60e78c609 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.1.res.oracle @@ -20,5 +20,34 @@ tests/e-acsl-runtime/bts1399.c:19:[e-acsl] warning: E-ACSL construct `logic func tests/e-acsl-runtime/bts1399.c:19:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/bts1399.c:19:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __initialize +tests/e-acsl-runtime/bts1399.c:24:[value] Assertion got status valid. +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.res.oracle index c0010f4152d..306b4962959 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1399.res.oracle @@ -20,5 +20,53 @@ tests/e-acsl-runtime/bts1399.c:19:[e-acsl] warning: E-ACSL construct `logic func tests/e-acsl-runtime/bts1399.c:19:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/bts1399.c:19:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __initialize +tests/e-acsl-runtime/bts1399.c:24:[value] Assertion got status valid. +[value] using specification for function __gmpz_init_set_ui +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:55:[value] Function __gmpz_init_set_ui: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:57:[value] Function __gmpz_init_set_ui: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:58:[value] Function __gmpz_init_set_ui: postcondition got status unknown. +[value] using specification for function __gmpz_init_set_si +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:66:[value] Function __gmpz_init_set_si: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:67:[value] Function __gmpz_init_set_si: postcondition got status unknown. +[value] using specification for function __gmpz_cmp +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. +[value] using specification for function __gmpz_init +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:39:[value] Function __gmpz_init: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:40:[value] Function __gmpz_init: postcondition got status valid. +tests/e-acsl-runtime/bts1399.c:24:[value] Assertion 'E_ACSL' got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __gmpz_tdiv_q +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:164:[value] Function __gmpz_tdiv_q: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:165:[value] Function __gmpz_tdiv_q: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:166:[value] Function __gmpz_tdiv_q: precondition got status valid. +[value] using specification for function __gmpz_get_ui +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:198:[value] Function __gmpz_get_ui: precondition got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +[value] using specification for function __gmpz_clear +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:117:[value] Function __gmpz_clear: precondition got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.1.res.oracle index c97f203a330..88faa36b80d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.1.res.oracle @@ -11,12 +11,14 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - global_i ∈ {0} - global_i_ptr ∈ {{ &global_i }} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + global_i ∈ {0} + global_i_ptr ∈ {{ &global_i }} [value] using specification for function __store_block tests/e-acsl-runtime/bts1478.c:10:[value] Function __e_acsl_loop: precondition got status valid. tests/e-acsl-runtime/bts1478.c:11:[value] Function __e_acsl_loop: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.res.oracle index 23d5f9acf66..a4cfba3e7c9 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/bts1478.res.oracle @@ -11,12 +11,14 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - global_i ∈ {0} - global_i_ptr ∈ {{ &global_i }} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + global_i ∈ {0} + global_i_ptr ∈ {{ &global_i }} [value] using specification for function __store_block tests/e-acsl-runtime/bts1478.c:10:[value] Function __e_acsl_loop: precondition got status valid. tests/e-acsl-runtime/bts1478.c:11:[value] Function __e_acsl_loop: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.1.res.oracle index 11e5503cb74..fb0c93452fc 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.1.res.oracle @@ -16,5 +16,29 @@ tests/e-acsl-runtime/call.c:18:[e-acsl] warning: E-ACSL construct `assigns claus tests/e-acsl-runtime/call.c:18:[e-acsl] warning: E-ACSL construct `logic function application' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __initialize +tests/e-acsl-runtime/call.c:12:[value] Function f: postcondition got status valid. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +tests/e-acsl-runtime/call.c:12:[value] Function __e_acsl_f: postcondition got status valid. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.res.oracle index 11e5503cb74..fb0c93452fc 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/call.res.oracle @@ -16,5 +16,29 @@ tests/e-acsl-runtime/call.c:18:[e-acsl] warning: E-ACSL construct `assigns claus tests/e-acsl-runtime/call.c:18:[e-acsl] warning: E-ACSL construct `logic function application' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __initialize +tests/e-acsl-runtime/call.c:12:[value] Function f: postcondition got status valid. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +tests/e-acsl-runtime/call.c:12:[value] Function __e_acsl_f: postcondition got status valid. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle index 1945eb95312..20ae38c9e7f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/cast.i:12:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle index 34947a95d55..6ed92f56e1f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/cast.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/cast.i:12:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle index e924c0a50b9..6961112718f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/comparison.i:9:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle index 7cf7b3e89c9..e77b42acb2e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/comparison.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/comparison.i:9:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.1.res.oracle index 0ee1d35df05..bd18e36abde 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.1.res.oracle @@ -34,6 +34,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.res.oracle index 0ee1d35df05..bd18e36abde 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/empty.res.oracle @@ -34,6 +34,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle index 974d46c91e8..dbb2932fc8d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.1.res.oracle @@ -10,9 +10,11 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] done for function main [value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle index 974d46c91e8..dbb2932fc8d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/false.res.oracle @@ -10,9 +10,11 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] done for function main [value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle index 0ca3a71c5c8..8889978e5cf 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.1.res.oracle @@ -10,12 +10,14 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - X ∈ {0} - Y ∈ {2} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + X ∈ {0} + Y ∈ {2} tests/e-acsl-runtime/function_contract.i:10:[value] Function f: postcondition got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle index f4b6df7293d..874df546bf0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/function_contract.res.oracle @@ -10,12 +10,14 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - X ∈ {0} - Y ∈ {2} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + X ∈ {0} + Y ∈ {2} tests/e-acsl-runtime/function_contract.i:10:[value] Function f: postcondition got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c index 2707c4526b6..1e622200510 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -48,6 +50,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c index 2707c4526b6..1e622200510 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_addrOf2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -48,6 +50,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c index 7f0776e2056..36ab63332e1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c index 66765153e30..89fa5f21b5b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_arith2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -139,6 +141,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_tdiv_r(__mpz_struct * /*[1]* extern __attribute__((__FC_BUILTIN__)) int __gmpz_com(__mpz_struct * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c index 8eaeec90e58..015b35c243a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c index ba0292ba09c..87fb64c5b7a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_array2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c index 49e9b050c19..4c602ab97f6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c index b3a44d99035..00e3ebcd609 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_at2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -102,6 +104,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1304.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1304.c index f3d54ce2f38..3f26caf2671 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1304.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1304.c @@ -46,6 +46,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -65,6 +67,8 @@ extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -96,12 +100,13 @@ int main(void) read_sensor_4((unsigned int *)(buf) + i); i ++; } - /*@ assert \initialized((union msg *)buf); */ + /*@ assert \initialized((union msg *)((unsigned char *)buf)); */ { int __e_acsl_initialized; __e_acsl_initialized = __initialized((void *)(buf),sizeof(union msg)); e_acsl_assert(__e_acsl_initialized,(char *)"Assertion",(char *)"main", - (char *)"\\initialized((union msg *)buf)",25); + (char *)"\\initialized((union msg *)((unsigned char *)buf))", + 25); } __retres = 0; __delete_block((void *)(buf)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13042.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13042.c index f3d54ce2f38..3f26caf2671 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13042.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13042.c @@ -46,6 +46,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -65,6 +67,8 @@ extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -96,12 +100,13 @@ int main(void) read_sensor_4((unsigned int *)(buf) + i); i ++; } - /*@ assert \initialized((union msg *)buf); */ + /*@ assert \initialized((union msg *)((unsigned char *)buf)); */ { int __e_acsl_initialized; __e_acsl_initialized = __initialized((void *)(buf),sizeof(union msg)); e_acsl_assert(__e_acsl_initialized,(char *)"Assertion",(char *)"main", - (char *)"\\initialized((union msg *)buf)",25); + (char *)"\\initialized((union msg *)((unsigned char *)buf))", + 25); } __retres = 0; __delete_block((void *)(buf)); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1307.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1307.c index 6889314fa32..0160cac5eaa 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1307.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1307.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -58,6 +60,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13072.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13072.c index 14e1653e93c..b872ad3acc4 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13072.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13072.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -112,6 +114,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1324.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1324.c index cd1e26b5c9c..f44557de11f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1324.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1324.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -49,6 +51,8 @@ extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -82,7 +86,7 @@ int sorted(int *t, int n) b ++; } __retres = 1; - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ behavior yes: @@ -122,7 +126,7 @@ int __e_acsl_sorted(int *t, int n) } __e_acsl_i ++; } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; __e_acsl_at = __e_acsl_forall; } __retres = sorted(t,n); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13242.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13242.c index 55d724b3518..5911ab58328 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13242.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13242.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -103,6 +105,8 @@ extern __attribute__((__FC_BUILTIN__)) void __delete_block(void *ptr); extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -136,7 +140,7 @@ int sorted(int *t, int n) b ++; } __retres = 1; - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ behavior yes: @@ -217,7 +221,7 @@ int __e_acsl_sorted(int *t, int n) __gmpz_clear(__e_acsl_add_2); } } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; __e_acsl_at = __e_acsl_forall; __gmpz_clear(__e_acsl_i); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1326.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1326.c index 22276a0cc57..1b88864c5e3 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1326.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1326.c @@ -31,6 +31,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -50,6 +52,8 @@ extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13262.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13262.c index 90e403174d6..2fda90e2b44 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13262.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13262.c @@ -31,6 +31,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -92,6 +94,8 @@ extern __attribute__((__FC_BUILTIN__)) void __delete_block(void *ptr); extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1390.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1390.c index fb64eea835e..4c531e56922 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1390.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1390.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -55,6 +57,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, assigns \result \from ptr; */ extern __attribute__((__FC_BUILTIN__)) int __offset(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -100,7 +104,7 @@ void *memchr(void const *buf, int c, size_t n) } __full_init((void *)(& __retres)); __retres = (void *)0; - return_label: /* internal */ + return_label: __delete_block((void *)(& buf)); __delete_block((void *)(& s)); __delete_block((void *)(& __retres)); @@ -149,7 +153,7 @@ void *__e_acsl_memchr(void const *buf, int c, size_t n) } __e_acsl_k ++; } - e_acsl_end_loop3: /* internal */ ; + e_acsl_end_loop3: ; __e_acsl_at_4 = __e_acsl_forall_2; } __e_acsl_at_3 = c; @@ -177,7 +181,7 @@ void *__e_acsl_memchr(void const *buf, int c, size_t n) } __e_acsl_i ++; } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; __e_acsl_at = __e_acsl_exists; } __retres = memchr(buf,c,n); @@ -212,7 +216,7 @@ void *__e_acsl_memchr(void const *buf, int c, size_t n) } __e_acsl_j ++; } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; __e_acsl_implies = __e_acsl_forall; } e_acsl_assert(__e_acsl_implies,(char *)"Postcondition",(char *)"memchr", diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13902.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13902.c index fbceac6fac7..e56b1063601 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13902.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13902.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -109,6 +111,8 @@ extern __attribute__((__FC_BUILTIN__)) void __literal_string(void *ptr); assigns \result \from ptr; */ extern __attribute__((__FC_BUILTIN__)) int __offset(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -154,7 +158,7 @@ void *memchr(void const *buf, int c, size_t n) } __full_init((void *)(& __retres)); __retres = (void *)0; - return_label: /* internal */ + return_label: __delete_block((void *)(& buf)); __delete_block((void *)(& s)); __delete_block((void *)(& __retres)); @@ -233,7 +237,7 @@ void *__e_acsl_memchr(void const *buf, int c, size_t n) __gmpz_clear(__e_acsl_add_3); } } - e_acsl_end_loop3: /* internal */ ; + e_acsl_end_loop3: ; __e_acsl_at_4 = __e_acsl_forall_2; __gmpz_clear(__e_acsl_k); } @@ -292,7 +296,7 @@ void *__e_acsl_memchr(void const *buf, int c, size_t n) __gmpz_clear(__e_acsl_add); } } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; __e_acsl_at = __e_acsl_exists; __gmpz_clear(__e_acsl_i); } @@ -355,7 +359,7 @@ void *__e_acsl_memchr(void const *buf, int c, size_t n) __gmpz_clear(__e_acsl_add_2); } } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; __e_acsl_implies = __e_acsl_forall; __gmpz_clear(__e_acsl_j); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1398.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1398.c index bc499362304..8a8c27d00a5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1398.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1398.c @@ -16,7 +16,7 @@ typedef unsigned int blksize_t; typedef unsigned int dev_t; typedef unsigned int mode_t; typedef unsigned int nlink_t; -typedef unsigned int off_t; +typedef long off_t; struct stat { dev_t st_dev ; ino_t st_ino ; @@ -59,6 +59,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -69,6 +71,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); /*@ assigns \nothing; */ extern __attribute__((__FC_BUILTIN__)) void __literal_string(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13982.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13982.c index bc499362304..8a8c27d00a5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13982.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13982.c @@ -16,7 +16,7 @@ typedef unsigned int blksize_t; typedef unsigned int dev_t; typedef unsigned int mode_t; typedef unsigned int nlink_t; -typedef unsigned int off_t; +typedef long off_t; struct stat { dev_t st_dev ; ino_t st_ino ; @@ -59,6 +59,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -69,6 +71,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); /*@ assigns \nothing; */ extern __attribute__((__FC_BUILTIN__)) void __literal_string(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1399.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1399.c index 29cf273d3db..ad98bcaa035 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1399.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1399.c @@ -65,7 +65,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -80,6 +80,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -110,6 +112,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -153,7 +157,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13992.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13992.c index 66b54ed873b..a822b5d1d22 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13992.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts13992.c @@ -65,7 +65,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -80,6 +80,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -156,6 +158,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -199,7 +203,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1478.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1478.c index 578753953e2..8c31c2be641 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1478.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts1478.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -43,6 +45,8 @@ extern __attribute__((__FC_BUILTIN__)) void __delete_block(void *ptr); */ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts14782.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts14782.c index f17a1c1e8c3..45e2779238a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts14782.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_bts14782.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -65,6 +67,8 @@ extern __attribute__((__FC_BUILTIN__)) void __delete_block(void *ptr); */ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call.c index 0aae3e59dbe..22cc9127f74 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call.c @@ -53,6 +53,8 @@ axiomatic */ extern void *__malloc(size_t size); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -73,6 +75,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); */ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call2.c index 0aae3e59dbe..22cc9127f74 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_call2.c @@ -53,6 +53,8 @@ axiomatic */ extern void *__malloc(size_t size); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -73,6 +75,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); */ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c index 8e255d3da16..0e0116db4b0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c index 3d9930d27d3..f0380484b9a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_cast2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -78,6 +80,8 @@ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1 assigns \result \from *z; */ extern __attribute__((__FC_BUILTIN__)) unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c index 36783733cca..9f6b718deff 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -40,6 +42,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); /*@ assigns \nothing; */ extern __attribute__((__FC_BUILTIN__)) void __literal_string(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c index 53e85c001fb..242e3ed9de1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_comparison2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -78,6 +80,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); /*@ assigns \nothing; */ extern __attribute__((__FC_BUILTIN__)) void __literal_string(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c index 5439ab7379f..d58163f6eae 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c index 5439ab7379f..d58163f6eae 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_false2.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c index 18177517191..065fcd3a5af 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c index 96f6ab68479..439d27cdee2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_function_contract2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -70,6 +72,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_add(__mpz_struct * /*[1]*/ z __mpz_struct const * /*[1]*/ z2, __mpz_struct const * /*[1]*/ z3); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost.c index f3ccb0ade47..2639706e849 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -66,6 +68,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost2.c index 39684527410..86886d6ea0f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ghost2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -80,6 +82,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c index a6be05b5af1..c402d80e4b0 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -54,6 +56,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c index 447723ff3b9..db41d63ff1b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_integer_constant2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -64,6 +66,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c index 71ab8970f20..36bb23f2f4a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c index 51983d50296..99b21692ac6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_invariant2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c index 86a4fab89fb..78eb6439248 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -64,7 +68,7 @@ int __e_acsl_main(void) goto return_label; } __retres = 0; - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ ensures X ≡ 3; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c index b3f50e88eb6..49e3d41cd17 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_labeled_stmt2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -117,7 +121,7 @@ int __e_acsl_main(void) goto return_label; } __retres = 0; - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ ensures X ≡ 3; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c index b76078d5b6e..0214f345a1a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c index 85f9e470e16..20f32dc1f19 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_lazy2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -80,6 +82,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_tdiv_q(__mpz_struct * /*[1]* __mpz_struct const * /*[1]*/ z2, __mpz_struct const * /*[1]*/ z3); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c index c36f8e64a91..339de2ad9a8 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -71,7 +75,7 @@ int search(int elt) } __e_acsl_i ++; } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; e_acsl_assert(__e_acsl_forall,(char *)"Invariant",(char *)"search", (char *)"\\forall integer i; 0 <= i && i < k ==> A[i] < elt", 20); @@ -114,7 +118,7 @@ int search(int elt) } __e_acsl_i_2 ++; } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; e_acsl_assert(__e_acsl_forall_2,(char *)"Invariant",(char *)"search", (char *)"\\forall integer i; 0 <= i && i < k ==> A[i] < elt", 20); @@ -122,7 +126,7 @@ int search(int elt) } } __retres = 0; - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ requires ∀ ℤ i; 0 ≤ i ∧ i < 9 ⇒ A[i] ≤ A[i+1]; @@ -162,7 +166,7 @@ int __e_acsl_search(int elt) } __e_acsl_i ++; } - e_acsl_end_loop3: /* internal */ ; + e_acsl_end_loop3: ; e_acsl_assert(__e_acsl_forall,(char *)"Precondition",(char *)"search", (char *)"\\forall integer i; 0 <= i && i < 9 ==> A[i] <= A[i+1]", 9); @@ -184,7 +188,7 @@ int __e_acsl_search(int elt) } __e_acsl_j_2 ++; } - e_acsl_end_loop5: /* internal */ ; + e_acsl_end_loop5: ; __e_acsl_at_2 = __e_acsl_forall_2; } { @@ -205,7 +209,7 @@ int __e_acsl_search(int elt) } __e_acsl_j ++; } - e_acsl_end_loop4: /* internal */ ; + e_acsl_end_loop4: ; __e_acsl_at = __e_acsl_exists; } __retres = search(elt); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c index 50488e57504..90634371c74 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_linear_search2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -82,6 +84,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_add(__mpz_struct * /*[1]*/ z assigns \result \from *z; */ extern __attribute__((__FC_BUILTIN__)) unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -159,7 +163,7 @@ int search(int elt) __gmpz_clear(__e_acsl_add); } } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; e_acsl_assert(__e_acsl_forall,(char *)"Invariant",(char *)"search", (char *)"\\forall integer i; 0 <= i && i < k ==> A[i] < elt", 20); @@ -273,7 +277,7 @@ int search(int elt) __gmpz_clear(__e_acsl_add_2); } } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; e_acsl_assert(__e_acsl_forall_2,(char *)"Invariant",(char *)"search", (char *)"\\forall integer i; 0 <= i && i < k ==> A[i] < elt", 20); @@ -284,7 +288,7 @@ int search(int elt) } } __retres = 0; - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ requires ∀ ℤ i; 0 ≤ i ∧ i < 9 ⇒ A[i] ≤ A[i+1]; @@ -363,7 +367,7 @@ int __e_acsl_search(int elt) __gmpz_clear(__e_acsl_add_2); } } - e_acsl_end_loop3: /* internal */ ; + e_acsl_end_loop3: ; e_acsl_assert(__e_acsl_forall,(char *)"Precondition",(char *)"search", (char *)"\\forall integer i; 0 <= i && i < 9 ==> A[i] <= A[i+1]", 9); @@ -419,7 +423,7 @@ int __e_acsl_search(int elt) __gmpz_clear(__e_acsl_add_4); } } - e_acsl_end_loop5: /* internal */ ; + e_acsl_end_loop5: ; __e_acsl_at_2 = __e_acsl_forall_2; __gmpz_clear(__e_acsl_j_3); } @@ -474,7 +478,7 @@ int __e_acsl_search(int elt) __gmpz_clear(__e_acsl_add_3); } } - e_acsl_end_loop4: /* internal */ ; + e_acsl_end_loop4: ; __e_acsl_at = __e_acsl_exists; __gmpz_clear(__e_acsl_j); } diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string.c index b21053ff40a..60cd8c741c2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -65,6 +67,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string2.c index b8460b4b6e7..1a56981dacf 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_literal_string2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -87,6 +89,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar.c index 3b0c62c06fe..a747e0f120e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar.c @@ -57,6 +57,8 @@ axiomatic */ extern void *__malloc(size_t size); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -85,6 +87,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar2.c index 3b0c62c06fe..a747e0f120e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_localvar2.c @@ -57,6 +57,8 @@ axiomatic */ extern void *__malloc(size_t size); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -85,6 +87,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong.c index de922fd5400..ac20ccb0b85 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -107,6 +109,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_tdiv_r(__mpz_struct * /*[1]* assigns \result \from *z; */ extern __attribute__((__FC_BUILTIN__)) unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -133,7 +137,7 @@ unsigned long long my_pow(unsigned int x, unsigned int n) goto return_label; } __retres = (unsigned long long)(x * (unsigned int)tmp); - return_label: /* internal */ return __retres; + return_label: return __retres; } int main(void) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong2.c index 47fff5444ff..d43da113978 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_longlong2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -103,6 +105,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_tdiv_r(__mpz_struct * /*[1]* __mpz_struct const * /*[1]*/ z2, __mpz_struct const * /*[1]*/ z3); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -129,7 +133,7 @@ unsigned long long my_pow(unsigned int x, unsigned int n) goto return_label; } __retres = (unsigned long long)(x * (unsigned int)tmp); - return_label: /* internal */ return __retres; + return_label: return __retres; } int main(void) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop.c index fe60b3eaa54..793907b521a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -113,7 +117,7 @@ void nested_loops(void) } __e_acsl_k ++; } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; e_acsl_assert(__e_acsl_forall,(char *)"Invariant", (char *)"nested_loops", (char *)"\\forall integer k, integer l;\n (0 <= k && k < i) && (0 <= l && l < j) ==> t[k][l] == k*l", @@ -169,7 +173,7 @@ void nested_loops(void) } __e_acsl_k_2 ++; } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; e_acsl_assert(__e_acsl_forall_2,(char *)"Invariant", (char *)"nested_loops", (char *)"\\forall integer k, integer l;\n (0 <= k && k < i) && (0 <= l && l < j) ==> t[k][l] == k*l", diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop2.c index d14e5ce392f..658a5be7b19 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_loop2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -92,6 +94,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_mul(__mpz_struct * /*[1]*/ z assigns \result \from *z; */ extern __attribute__((__FC_BUILTIN__)) unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -294,7 +298,7 @@ void nested_loops(void) __gmpz_clear(__e_acsl_add_2); } } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; e_acsl_assert(__e_acsl_forall,(char *)"Invariant", (char *)"nested_loops", (char *)"\\forall integer k, integer l;\n (0 <= k && k < i) && (0 <= l && l < j) ==> t[k][l] == k*l", @@ -448,7 +452,7 @@ void nested_loops(void) __gmpz_clear(__e_acsl_add_4); } } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; e_acsl_assert(__e_acsl_forall_2,(char *)"Invariant", (char *)"nested_loops", (char *)"\\forall integer k, integer l;\n (0 <= k && k < i) && (0 <= l && l < j) ==> t[k][l] == k*l", diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c index 13a62b01b0c..533e4005411 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c index 66f88dd17e5..0ced9c9df11 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_nested_code_annot2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c index 66c265b4029..ae8fc87a09c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c index 4e037a217d8..07ed6a8b54a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_not2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c index eb791d5575c..622632d2f58 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c index eb791d5575c..622632d2f58 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_null2.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c index d4ad3f7f170..82119838d46 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants.c @@ -34,6 +34,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c index c26246b74ee..cbf8fc10b2c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_other_constants2.c @@ -34,6 +34,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -56,6 +58,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c index c53022af5d8..74807c6ded6 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -60,6 +62,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c index 3d24d15d950..8badf9bff2f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -118,6 +120,8 @@ extern __attribute__((__FC_BUILTIN__)) void __initialize(void *ptr, /*@ assigns \nothing; */ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init.c index f118961b076..1b69d5b87f9 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init.c @@ -53,6 +53,8 @@ axiomatic */ extern void *__malloc(size_t size); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -71,6 +73,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init2.c index f118961b076..1b69d5b87f9 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_ptr_init2.c @@ -53,6 +53,8 @@ axiomatic */ extern void *__malloc(size_t size); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -71,6 +73,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c index 4be0295c487..9d5de4c6142 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -59,7 +63,7 @@ int main(void) } __e_acsl_x ++; } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; e_acsl_assert(__e_acsl_forall,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 <= x && x <= 1 ==> x == 0 || x == 1", 11); @@ -79,7 +83,7 @@ int main(void) } __e_acsl_x_2 ++; } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; e_acsl_assert(__e_acsl_forall_2,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 < x && x <= 1 ==> x == 1", 12); @@ -99,7 +103,7 @@ int main(void) } __e_acsl_x_3 ++; } - e_acsl_end_loop3: /* internal */ ; + e_acsl_end_loop3: ; e_acsl_assert(__e_acsl_forall_3,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 < x && x < 1 ==> \\false", 13); @@ -119,7 +123,7 @@ int main(void) } __e_acsl_x_4 ++; } - e_acsl_end_loop4: /* internal */ ; + e_acsl_end_loop4: ; e_acsl_assert(__e_acsl_forall_4,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 <= x && x < 1 ==> x == 0", 14); @@ -155,7 +159,7 @@ int main(void) } __e_acsl_x_5 ++; } - e_acsl_end_loop5: /* internal */ ; + e_acsl_end_loop5: ; e_acsl_assert(__e_acsl_forall_5,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x, integer y, integer z;\n ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n x+z <= y+1", 18); @@ -175,7 +179,7 @@ int main(void) } __e_acsl_x_6 ++; } - e_acsl_end_loop6: /* internal */ ; + e_acsl_end_loop6: ; e_acsl_assert(__e_acsl_exists,(char *)"Assertion",(char *)"main", (char *)"\\exists int x; (0 <= x && x < 10) && x == 5",23); } @@ -208,7 +212,7 @@ int main(void) } __e_acsl_y_2 ++; } - e_acsl_end_loop7: /* internal */ ; + e_acsl_end_loop7: ; __e_acsl_implies = __e_acsl_exists_2; } if (__e_acsl_implies) ; @@ -219,7 +223,7 @@ int main(void) } __e_acsl_x_7 ++; } - e_acsl_end_loop8: /* internal */ ; + e_acsl_end_loop8: ; e_acsl_assert(__e_acsl_forall_6,(char *)"Assertion",(char *)"main", (char *)"\\forall int x;\n 0 <= x && x < 10 ==>\n (x%2 == 0 ==> (\\exists integer y; (0 <= y && y <= x/2) && x == 2*y))", 27); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c index 226a852e9bf..f22fcce7a0e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_quantif2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -108,6 +110,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_tdiv_r(__mpz_struct * /*[1]* __mpz_struct const * /*[1]*/ z2, __mpz_struct const * /*[1]*/ z3); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ @@ -175,7 +179,7 @@ int main(void) __gmpz_clear(__e_acsl_add); } } - e_acsl_end_loop1: /* internal */ ; + e_acsl_end_loop1: ; e_acsl_assert(__e_acsl_forall,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 <= x && x <= 1 ==> x == 0 || x == 1", 11); @@ -236,7 +240,7 @@ int main(void) __gmpz_clear(__e_acsl_add_3); } } - e_acsl_end_loop2: /* internal */ ; + e_acsl_end_loop2: ; e_acsl_assert(__e_acsl_forall_2,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 < x && x <= 1 ==> x == 1", 12); @@ -289,7 +293,7 @@ int main(void) __gmpz_clear(__e_acsl_add_5); } } - e_acsl_end_loop3: /* internal */ ; + e_acsl_end_loop3: ; e_acsl_assert(__e_acsl_forall_3,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 < x && x < 1 ==> \\false", 13); @@ -342,7 +346,7 @@ int main(void) __gmpz_clear(__e_acsl_add_6); } } - e_acsl_end_loop4: /* internal */ ; + e_acsl_end_loop4: ; e_acsl_assert(__e_acsl_forall_4,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x; 0 <= x && x < 1 ==> x == 0", 14); @@ -466,7 +470,7 @@ int main(void) __gmpz_clear(__e_acsl_add_11); } } - e_acsl_end_loop5: /* internal */ ; + e_acsl_end_loop5: ; e_acsl_assert(__e_acsl_forall_5,(char *)"Assertion",(char *)"main", (char *)"\\forall integer x, integer y, integer z;\n ((0 <= x && x < 2) && (0 <= y && y < 5)) && (0 <= z && z <= y) ==>\n x+z <= y+1", 18); @@ -521,7 +525,7 @@ int main(void) __gmpz_clear(__e_acsl_add_12); } } - e_acsl_end_loop6: /* internal */ ; + e_acsl_end_loop6: ; e_acsl_assert(__e_acsl_exists,(char *)"Assertion",(char *)"main", (char *)"\\exists int x; (0 <= x && x < 10) && x == 5",23); __gmpz_clear(__e_acsl_x_6); @@ -640,7 +644,7 @@ int main(void) __gmpz_clear(__e_acsl_add_13); } } - e_acsl_end_loop7: /* internal */ ; + e_acsl_end_loop7: ; __e_acsl_implies = __e_acsl_exists_2; __gmpz_clear(__e_acsl_y_2); } @@ -665,7 +669,7 @@ int main(void) __gmpz_clear(__e_acsl_add_14); } } - e_acsl_end_loop8: /* internal */ ; + e_acsl_end_loop8: ; e_acsl_assert(__e_acsl_forall_6,(char *)"Assertion",(char *)"main", (char *)"\\forall int x;\n 0 <= x && x < 10 ==>\n (x%2 == 0 ==> (\\exists integer y; (0 <= y && y <= x/2) && x == 2*y))", 27); diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c index 8736ca7afaf..afc317085a4 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c index 4fba67eaec4..af96189d5f5 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_result2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -74,6 +76,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_sub(__mpz_struct * /*[1]*/ z assigns \result \from *z; */ extern __attribute__((__FC_BUILTIN__)) unsigned long __gmpz_get_ui(__mpz_struct const * /*[1]*/ z); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c index ab6ffe476eb..af9745bdbba 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c index 3f0b837015a..cb3a469567b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_sizeof2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -52,6 +54,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c index d46f5d5db72..b5b19adb7d1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c index 1e13251f3b5..958c110111f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_stmt_contract2.c @@ -30,6 +30,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); assigns *z; @@ -70,6 +72,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_add(__mpz_struct * /*[1]*/ z __mpz_struct const * /*[1]*/ z2, __mpz_struct const * /*[1]*/ z3); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c index 20dd1e6cd84..69b21a7190f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c index 20dd1e6cd84..69b21a7190f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_true2.c @@ -30,6 +30,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c index 3ed990d7c02..055b304e4d7 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef.c @@ -31,6 +31,10 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c index 5bfd90f5bc6..18406e17f11 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_typedef2.c @@ -31,6 +31,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -63,6 +65,8 @@ extern __attribute__((__FC_BUILTIN__)) void __gmpz_clear(__mpz_struct * /*[1]*/ extern __attribute__((__FC_BUILTIN__)) int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1, __mpz_struct const * /*[1]*/ z2); +/*@ ghost extern int __e_acsl_internal_heap; */ + extern size_t __memory_size; /*@ diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid.c index 42889ab8706..650bf234c54 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid.c @@ -59,7 +59,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -74,6 +74,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -106,6 +108,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -149,7 +153,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid2.c index 42889ab8706..650bf234c54 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid2.c @@ -59,7 +59,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -74,6 +74,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -106,6 +108,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -149,7 +153,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias.c index 5b2d48cb7aa..8be2b64352b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias.c @@ -59,7 +59,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -74,6 +74,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -110,6 +112,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -153,7 +157,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias2.c index 3e085dc28bd..206cdf6b927 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_alias2.c @@ -59,7 +59,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -74,6 +74,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -124,6 +126,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid(void *ptr, size_t size); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -167,7 +171,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract.c index c4f0e429fcf..376bde687ed 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract.c @@ -34,6 +34,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -63,6 +65,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -95,7 +99,7 @@ struct list *f(struct list *l) goto return_label; } __retres = (struct list *)((void *)0); - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ behavior B1: diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract2.c index c4f0e429fcf..376bde687ed 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_valid_in_contract2.c @@ -34,6 +34,8 @@ axiomatic } */ +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -63,6 +65,8 @@ extern __attribute__((__FC_BUILTIN__)) int __valid_read(void *ptr, extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -95,7 +99,7 @@ struct list *f(struct list *l) goto return_label; } __retres = (struct list *)((void *)0); - return_label: /* internal */ return __retres; + return_label: return __retres; } /*@ behavior B1: diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector.c index 57f3b1fcac0..a58e7d18889 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector.c @@ -59,7 +59,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -74,6 +74,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ assigns \result \from *((char *)ptr+(0..size-1)); */ extern __attribute__((__FC_BUILTIN__)) void *__store_block(void *ptr, size_t size); @@ -96,6 +98,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -139,7 +143,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector2.c b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector2.c index fd524261c24..bb49efe02e3 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector2.c +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/gen_vector2.c @@ -59,7 +59,7 @@ extern void *__malloc(size_t size); behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; @@ -74,6 +74,8 @@ extern void *__malloc(size_t size); */ extern void __free(void *p); +/*@ ghost extern int __e_acsl_init; */ + /*@ requires ¬\initialized(z); ensures \valid(\old(z)); ensures \initialized(\old(z)); @@ -118,6 +120,8 @@ extern __attribute__((__FC_BUILTIN__)) void __full_init(void *ptr); extern __attribute__((__FC_BUILTIN__)) int __initialized(void *ptr, size_t size); +/*@ ghost extern int __e_acsl_internal_heap; */ + /*@ assigns __e_acsl_internal_heap; assigns __e_acsl_internal_heap \from __e_acsl_internal_heap; */ @@ -161,7 +165,7 @@ void *__e_acsl_malloc(size_t size) behavior deallocation: assumes p ≢ \null; - requires \freeable(p); + requires freeable: \freeable(p); ensures \allocable(\old(p)); assigns __fc_heap_status; assigns __fc_heap_status \from __fc_heap_status; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.1.res.oracle index 9f712212bcf..dcd294fb4af 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.1.res.oracle @@ -6,5 +6,35 @@ [kernel] preprocessing with "gcc -C -E -I. -IFRAMAC_SHARE/e-acsl -DE_ACSL_MACHDEP=x86_32 -IFRAMAC_SHARE/libc -IFRAMAC_SHARE/libc FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h" [e-acsl] beginning translation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + G ∈ {0} + P ∈ {0} +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __initialize +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +tests/e-acsl-runtime/ghost.i:17:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +[value] using specification for function __delete_block +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.res.oracle index 9f712212bcf..6fd50ebee3c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ghost.res.oracle @@ -6,5 +6,40 @@ [kernel] preprocessing with "gcc -C -E -I. -IFRAMAC_SHARE/e-acsl -DE_ACSL_MACHDEP=x86_32 -IFRAMAC_SHARE/libc -IFRAMAC_SHARE/libc FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h" [e-acsl] beginning translation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + G ∈ {0} + P ∈ {0} +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __initialize +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +tests/e-acsl-runtime/ghost.i:17:[value] Assertion got status valid. +[value] using specification for function __gmpz_init_set_si +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:66:[value] Function __gmpz_init_set_si: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:67:[value] Function __gmpz_init_set_si: postcondition got status unknown. +[value] using specification for function __gmpz_cmp +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. +[value] using specification for function __gmpz_clear +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:117:[value] Function __gmpz_clear: precondition got status valid. +[value] using specification for function __delete_block +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle index 3521d14fcef..698e1380734 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/integer_constant.i:8:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle index 9b1b69bd32b..060220d92e7 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/integer_constant.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/integer_constant.i:8:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle index 59a4daecbaf..1533e5e39e3 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/invariant.i:8:[value] entering loop for the first time [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. @@ -22,10 +24,9 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:67:[value] Function __gmpz_init_set_si: postcon [value] using specification for function __gmpz_cmp FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. -[value] using specification for function e_acsl_assert -FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status invalid. [value] using specification for function __gmpz_clear FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:117:[value] Function __gmpz_clear: precondition got status valid. +[value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. tests/e-acsl-runtime/invariant.i:10:[kernel] warning: signed overflow. assert x+i ≤ 2147483647; [value] done for function main diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle index 4b6774c6ba9..248c8af9cc2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/invariant.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/invariant.i:8:[value] entering loop for the first time [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle index b33659494b0..28f904648cb 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.1.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - X ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + X ∈ {0} tests/e-acsl-runtime/labeled_stmt.i:12:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle index 3d680db4f18..2d59ce2eeda 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/labeled_stmt.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - X ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + X ∈ {0} tests/e-acsl-runtime/labeled_stmt.i:12:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle index c7eadaa2d29..f47b81bc824 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/lazy.i:11:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. @@ -30,14 +32,14 @@ tests/e-acsl-runtime/lazy.i:12:[value] Assertion got status valid. [value] using specification for function __gmpz_init FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:39:[value] Function __gmpz_init: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:40:[value] Function __gmpz_init: postcondition got status valid. -tests/e-acsl-runtime/lazy.i:12:[value] Assertion got status invalid (stopping propagation). +tests/e-acsl-runtime/lazy.i:12:[value] Assertion 'E_ACSL' got status invalid (stopping propagation). FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. tests/e-acsl-runtime/lazy.i:13:[value] Assertion got status valid. tests/e-acsl-runtime/lazy.i:14:[value] Assertion got status valid. -tests/e-acsl-runtime/lazy.i:14:[value] Assertion got status invalid (stopping propagation). +tests/e-acsl-runtime/lazy.i:14:[value] Assertion 'E_ACSL' got status invalid (stopping propagation). tests/e-acsl-runtime/lazy.i:15:[value] Assertion got status valid. tests/e-acsl-runtime/lazy.i:16:[value] Assertion got status valid. -tests/e-acsl-runtime/lazy.i:16:[value] Assertion got status invalid (stopping propagation). +tests/e-acsl-runtime/lazy.i:16:[value] Assertion 'E_ACSL' got status invalid (stopping propagation). tests/e-acsl-runtime/lazy.i:17:[value] Assertion got status unknown. tests/e-acsl-runtime/lazy.i:18:[value] Assertion got status unknown. tests/e-acsl-runtime/lazy.i:19:[value] Assertion got status unknown. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle index b47ab48e53f..c1ab49ed8ff 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/lazy.res.oracle @@ -13,10 +13,12 @@ tests/e-acsl-runtime/lazy.i:16:[rte] warning: divisor assert broken: 0 ≢ 0 [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/lazy.i:11:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle index 83aa41c697a..27fbd7dfebd 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.1.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - A[0..9] ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + A[0..9] ∈ {0} tests/e-acsl-runtime/linear_search.i:30:[value] entering loop for the first time tests/e-acsl-runtime/linear_search.i:9:[value] Function __e_acsl_search: precondition got status unknown. [value] using specification for function __gmpz_init @@ -53,8 +55,6 @@ tests/e-acsl-runtime/linear_search.i:20:[kernel] warning: accessing out of bound tests/e-acsl-runtime/linear_search.i:19:[value] Loop invariant got status valid. tests/e-acsl-runtime/linear_search.i:20:[value] Loop invariant got status unknown. tests/e-acsl-runtime/linear_search.i:21:[value] entering loop for the first time -FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status invalid. -FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. tests/e-acsl-runtime/linear_search.i:20:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_i_4 < 10; tests/e-acsl-runtime/linear_search.i:12:[value] Function search, behavior exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) tests/e-acsl-runtime/linear_search.i:15:[value] Function search, behavior not_exists: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle index f3426153f7c..4fe509716ad 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/linear_search.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - A[0..9] ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + A[0..9] ∈ {0} tests/e-acsl-runtime/linear_search.i:30:[value] entering loop for the first time tests/e-acsl-runtime/linear_search.i:9:[value] Function __e_acsl_search: precondition got status unknown. tests/e-acsl-runtime/linear_search.i:9:[value] entering loop for the first time diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.1.res.oracle index 56868167456..097753bfe55 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.1.res.oracle @@ -10,17 +10,19 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - T ∈ {0} - G ∈ {0} - S ∈ {0} - S2 ∈ {0} - IDX ∈ {1} - G2 ∈ {2} - U ∈ {{ "baz" }} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + T ∈ {0} + G ∈ {0} + S ∈ {0} + S2 ∈ {0} + IDX ∈ {1} + G2 ∈ {2} + U ∈ {{ "baz" }} [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __literal_string diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.res.oracle index 5ef29c5916a..57c1ac1c53f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/literal_string.res.oracle @@ -10,17 +10,19 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - T ∈ {0} - G ∈ {0} - S ∈ {0} - S2 ∈ {0} - IDX ∈ {1} - G2 ∈ {2} - U ∈ {{ "baz" }} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + T ∈ {0} + G ∈ {0} + S ∈ {0} + S2 ∈ {0} + IDX ∈ {1} + G2 ∈ {2} + U ∈ {{ "baz" }} [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __literal_string diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.1.res.oracle index 736560a1bfe..3347f9ea204 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.1.res.oracle @@ -16,5 +16,31 @@ tests/e-acsl-runtime/localvar.c:26:[e-acsl] warning: E-ACSL construct `assigns c tests/e-acsl-runtime/localvar.c:26:[e-acsl] warning: E-ACSL construct `logic function application' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/localvar.c:20:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __initialize +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.res.oracle index 736560a1bfe..3347f9ea204 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/localvar.res.oracle @@ -16,5 +16,31 @@ tests/e-acsl-runtime/localvar.c:26:[e-acsl] warning: E-ACSL construct `assigns c tests/e-acsl-runtime/localvar.c:26:[e-acsl] warning: E-ACSL construct `logic function application' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/localvar.c:20:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __initialize +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.1.res.oracle index 89638337fa9..b4be92d36aa 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/longlong.i:11:[value] warning: recursive call during value analysis of my_pow (my_pow <- my_pow :: tests/e-acsl-runtime/longlong.i:18 <- main). Using specification of my_pow. @@ -44,6 +46,7 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:145:[value] Function __gmpz_add: precondition g [value] using specification for function __gmpz_cmp FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. +tests/e-acsl-runtime/longlong.i:19:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. [value] using specification for function __gmpz_tdiv_r diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.res.oracle index 0b5c07cf8b0..bf00755202c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/longlong.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/longlong.i:11:[value] warning: recursive call during value analysis of my_pow (my_pow <- my_pow :: tests/e-acsl-runtime/longlong.i:18 <- main). Using specification of my_pow. @@ -44,6 +46,7 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:145:[value] Function __gmpz_add: precondition g [value] using specification for function __gmpz_cmp FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. +tests/e-acsl-runtime/longlong.i:19:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. [value] using specification for function __gmpz_tdiv_r diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.1.res.oracle index 3865c8054d4..67423ac21da 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. tests/e-acsl-runtime/loop.i:10:[value] Loop invariant got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.res.oracle index 3f54e0735fd..fe99e93ad60 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/loop.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:66:[value] Function __gmpz_init_set_si: postcondition got status valid. @@ -34,13 +36,8 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:40:[value] Function __gmpz_init: postcondition [value] using specification for function __gmpz_set FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:94:[value] Function __gmpz_set: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:95:[value] Function __gmpz_set: precondition got status valid. -FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. [value] using specification for function __gmpz_get_ui FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:198:[value] Function __gmpz_get_ui: precondition got status valid. -[value] using specification for function __gmpz_add -FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:143:[value] Function __gmpz_add: precondition got status valid. -FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:144:[value] Function __gmpz_add: precondition got status valid. -FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:145:[value] Function __gmpz_add: precondition got status valid. tests/e-acsl-runtime/loop.i:21:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_k_2 < 10; tests/e-acsl-runtime/loop.i:21:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_l_2 < 15; tests/e-acsl-runtime/loop.i:21:[kernel] warning: accessing uninitialized left-value: @@ -48,6 +45,11 @@ tests/e-acsl-runtime/loop.i:21:[kernel] warning: accessing uninitialized left-va tests/e-acsl-runtime/loop.i:21:[kernel] warning: completely indeterminate value in t with offsets [0..4768],0%32. tests/e-acsl-runtime/loop.i:21:[value] all evaluations are invalid for function call argument (long)t[__e_acsl_k_2][__e_acsl_l_2] +[value] using specification for function __gmpz_add +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:143:[value] Function __gmpz_add: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:144:[value] Function __gmpz_add: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:145:[value] Function __gmpz_add: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. tests/e-acsl-runtime/loop.i:19:[value] Loop invariant got status valid. tests/e-acsl-runtime/loop.i:21:[value] Loop invariant got status unknown. tests/e-acsl-runtime/loop.i:21:[kernel] warning: accessing out of bounds index [0..4294967295]. assert __e_acsl_k_4 < 10; diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle index f92e89066f3..534c38767c1 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/nested_code_annot.i:9:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle index 2166b223e74..e5c23161271 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/nested_code_annot.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/nested_code_annot.i:9:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle index f1cfc4d32db..c4f9ff2db62 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/not.i:8:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle index c1025d1596b..40316cdce21 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/not.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/not.i:8:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle index b1972de1c2a..f166bba7846 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/null.i:8:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle index b1972de1c2a..f166bba7846 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/null.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/null.i:8:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle index 58848c8f2cf..9693e41b97b 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/other_constants.i:12:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle index 533565439bc..2042277c0a8 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/other_constants.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/other_constants.i:12:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle index c048f308b2e..73e6d73c9e8 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __initialize @@ -39,7 +41,7 @@ FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:40:[value] Function __gmpz_init: postcondition FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:157:[value] Function __gmpz_mul: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:158:[value] Function __gmpz_mul: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:159:[value] Function __gmpz_mul: precondition got status valid. -tests/e-acsl-runtime/ptr.i:16:[value] Assertion got status valid. +tests/e-acsl-runtime/ptr.i:16:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function __gmpz_tdiv_q FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:164:[value] Function __gmpz_tdiv_q: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:165:[value] Function __gmpz_tdiv_q: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle index f274db26fa5..05ae42c747a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __store_block [value] using specification for function __full_init [value] using specification for function __initialize diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.1.res.oracle index 8193c11e55c..118bcb8d2ee 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.1.res.oracle @@ -20,12 +20,14 @@ tests/e-acsl-runtime/ptr_init.c:22:[e-acsl] warning: E-ACSL construct `logic fun [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - A ∈ {0} - B ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + A ∈ {0} + B ∈ {0} [value] using specification for function __store_block [value] using specification for function __malloc FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.res.oracle index 8193c11e55c..118bcb8d2ee 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/ptr_init.res.oracle @@ -20,12 +20,14 @@ tests/e-acsl-runtime/ptr_init.c:22:[e-acsl] warning: E-ACSL construct `logic fun [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - A ∈ {0} - B ∈ {0} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + A ∈ {0} + B ∈ {0} [value] using specification for function __store_block [value] using specification for function __malloc FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle index 92c5480a1bf..850eee44a2a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/quantif.i:11:[value] Assertion got status unknown. [value] using specification for function __gmpz_init FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:39:[value] Function __gmpz_init: precondition got status valid. @@ -49,13 +51,13 @@ tests/e-acsl-runtime/quantif.i:23:[value] Assertion got status unknown. tests/e-acsl-runtime/quantif.i:23:[value] entering loop for the first time tests/e-acsl-runtime/quantif.i:27:[value] Assertion got status unknown. tests/e-acsl-runtime/quantif.i:27:[value] entering loop for the first time -tests/e-acsl-runtime/quantif.i:28:[value] Assertion got status valid. +tests/e-acsl-runtime/quantif.i:28:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function __gmpz_tdiv_r FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:171:[value] Function __gmpz_tdiv_r: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:172:[value] Function __gmpz_tdiv_r: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:173:[value] Function __gmpz_tdiv_r: precondition got status valid. tests/e-acsl-runtime/quantif.i:28:[value] entering loop for the first time -tests/e-acsl-runtime/quantif.i:28:[value] Assertion got status valid. +tests/e-acsl-runtime/quantif.i:28:[value] Assertion 'E_ACSL' got status valid. [value] using specification for function __gmpz_tdiv_q FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:164:[value] Function __gmpz_tdiv_q: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:165:[value] Function __gmpz_tdiv_q: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle index 52c34493d05..330bd859fb7 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/quantif.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/quantif.i:11:[value] Assertion got status unknown. tests/e-acsl-runtime/quantif.i:11:[value] entering loop for the first time [value] using specification for function e_acsl_assert diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle index a338ae350ce..0c5e00fef6d 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.1.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - Y ∈ {1} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + Y ∈ {1} tests/e-acsl-runtime/result.i:7:[value] Function f: postcondition got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle index 9b69c1076e9..013d4c42c5c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/result.res.oracle @@ -10,11 +10,13 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] - Y ∈ {1} + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + Y ∈ {1} tests/e-acsl-runtime/result.i:7:[value] Function f: postcondition got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle index 6303748ac9d..46bfad9226f 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/sizeof.i:10:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle index d2a407fc51e..f4b58164d5e 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/sizeof.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/sizeof.i:10:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle index 2494e84cefc..4b5936cb976 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function __gmpz_init_set_si FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:66:[value] Function __gmpz_init_set_si: postcondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle index ee9dd20f8d0..525695a8f82 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/stmt_contract.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. [value] done for function main diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle index d08cb4ab9ee..27bf5852675 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/true.i:10:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle index d08cb4ab9ee..27bf5852675 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/true.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/true.i:10:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle index 9c1c0adfedb..b4764b2c963 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.1.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/typedef.i:11:[value] Assertion got status valid. [value] using specification for function __gmpz_init_set_ui FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:55:[value] Function __gmpz_init_set_ui: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle index ec1ae59f488..7d4f021a945 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/typedef.res.oracle @@ -10,10 +10,12 @@ [value] Computing initial state [value] Initial state computed [value] Values of globals at initialization - __fc_random_counter ∈ {0} - __fc_rand_max ∈ {32767} - __fc_heap_status ∈ [--..--] - __memory_size ∈ [--..--] + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] tests/e-acsl-runtime/typedef.i:11:[value] Assertion got status valid. [value] using specification for function e_acsl_assert FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.1.res.oracle index 9a9a2a772b7..4bfe1992b97 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.1.res.oracle @@ -20,5 +20,79 @@ tests/e-acsl-runtime/valid.c:33:[e-acsl] warning: E-ACSL construct `logic functi tests/e-acsl-runtime/valid.c:33:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/valid.c:33:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + X ∈ {0} + Z ∈ {0} +[value] using specification for function __store_block +[value] using specification for function __full_init +tests/e-acsl-runtime/valid.c:35:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +tests/e-acsl-runtime/valid.c:35:[kernel] warning: accessing uninitialized left-value: assert \initialized(&a); +tests/e-acsl-runtime/valid.c:35:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid.c:35:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid.c:35:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid.c:35:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid.c:35:[value] all evaluations are invalid for function call argument + (void *)b +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status unknown. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/valid.c:37:[value] Assertion got status valid. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +tests/e-acsl-runtime/valid.c:37:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid.c:37:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid.c:37:[value] all evaluations are invalid for function call argument + (void *)b +tests/e-acsl-runtime/valid.c:39:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:39:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid.c:39:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid.c:39:[value] all evaluations are invalid for function call argument + (void *)b +tests/e-acsl-runtime/valid.c:15:[value] Function __e_acsl_f: precondition got status valid. +tests/e-acsl-runtime/valid.c:15:[value] Function f: precondition got status valid. +tests/e-acsl-runtime/valid.c:19:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:19:[kernel] warning: accessing uninitialized left-value: assert \initialized(&y); +tests/e-acsl-runtime/valid.c:19:[kernel] warning: completely indeterminate value in y. +tests/e-acsl-runtime/valid.c:19:[value] all evaluations are invalid for function call argument + (void *)y +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +tests/e-acsl-runtime/valid.c:21:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:16:[value] Function f: postcondition got status valid. +tests/e-acsl-runtime/valid.c:16:[value] Function __e_acsl_f: postcondition got status valid. +tests/e-acsl-runtime/valid.c:41:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:43:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:46:[value] Assertion got status valid. +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status valid. +tests/e-acsl-runtime/valid.c:47:[value] Assertion got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +tests/e-acsl-runtime/valid.c:49:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:49:[kernel] warning: accessing left-value that contains escaping addresses; assert(\defined(&a)) +tests/e-acsl-runtime/valid.c:49:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid.c:49:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid.c:50:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:30:[value] Assertion got status valid. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.res.oracle index 9a9a2a772b7..4bfe1992b97 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid.res.oracle @@ -20,5 +20,79 @@ tests/e-acsl-runtime/valid.c:33:[e-acsl] warning: E-ACSL construct `logic functi tests/e-acsl-runtime/valid.c:33:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/valid.c:33:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + X ∈ {0} + Z ∈ {0} +[value] using specification for function __store_block +[value] using specification for function __full_init +tests/e-acsl-runtime/valid.c:35:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +tests/e-acsl-runtime/valid.c:35:[kernel] warning: accessing uninitialized left-value: assert \initialized(&a); +tests/e-acsl-runtime/valid.c:35:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid.c:35:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid.c:35:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid.c:35:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid.c:35:[value] all evaluations are invalid for function call argument + (void *)b +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status unknown. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/valid.c:37:[value] Assertion got status valid. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +tests/e-acsl-runtime/valid.c:37:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid.c:37:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid.c:37:[value] all evaluations are invalid for function call argument + (void *)b +tests/e-acsl-runtime/valid.c:39:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:39:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid.c:39:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid.c:39:[value] all evaluations are invalid for function call argument + (void *)b +tests/e-acsl-runtime/valid.c:15:[value] Function __e_acsl_f: precondition got status valid. +tests/e-acsl-runtime/valid.c:15:[value] Function f: precondition got status valid. +tests/e-acsl-runtime/valid.c:19:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:19:[kernel] warning: accessing uninitialized left-value: assert \initialized(&y); +tests/e-acsl-runtime/valid.c:19:[kernel] warning: completely indeterminate value in y. +tests/e-acsl-runtime/valid.c:19:[value] all evaluations are invalid for function call argument + (void *)y +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +tests/e-acsl-runtime/valid.c:21:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:16:[value] Function f: postcondition got status valid. +tests/e-acsl-runtime/valid.c:16:[value] Function __e_acsl_f: postcondition got status valid. +tests/e-acsl-runtime/valid.c:41:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:43:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:46:[value] Assertion got status valid. +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status valid. +tests/e-acsl-runtime/valid.c:47:[value] Assertion got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +tests/e-acsl-runtime/valid.c:49:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:49:[kernel] warning: accessing left-value that contains escaping addresses; assert(\defined(&a)) +tests/e-acsl-runtime/valid.c:49:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid.c:49:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid.c:50:[value] Assertion got status valid. +tests/e-acsl-runtime/valid.c:30:[value] Assertion got status valid. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.1.res.oracle index 656f0925ee9..e0dd4c1d7d9 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.1.res.oracle @@ -20,5 +20,57 @@ tests/e-acsl-runtime/valid_alias.c:10:[e-acsl] warning: E-ACSL construct `logic tests/e-acsl-runtime/valid_alias.c:10:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/valid_alias.c:10:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +tests/e-acsl-runtime/valid_alias.c:12:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: accessing uninitialized left-value: assert \initialized(&a); +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid_alias.c:12:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid_alias.c:12:[value] all evaluations are invalid for function call argument + (void *)b +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __initialize +tests/e-acsl-runtime/valid_alias.c:16:[value] Assertion got status valid. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +tests/e-acsl-runtime/valid_alias.c:17:[value] Assertion got status valid. +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +tests/e-acsl-runtime/valid_alias.c:19:[value] Assertion got status valid. +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: accessing left-value that contains escaping addresses; assert(\defined(&a)) +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid_alias.c:19:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: accessing left-value that contains escaping addresses; assert(\defined(&b)) +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid_alias.c:19:[value] all evaluations are invalid for function call argument + (void *)b +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.res.oracle index 656f0925ee9..c8d51bac99c 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_alias.res.oracle @@ -20,5 +20,63 @@ tests/e-acsl-runtime/valid_alias.c:10:[e-acsl] warning: E-ACSL construct `logic tests/e-acsl-runtime/valid_alias.c:10:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/valid_alias.c:10:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +tests/e-acsl-runtime/valid_alias.c:12:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: accessing uninitialized left-value: assert \initialized(&a); +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid_alias.c:12:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: accessing uninitialized left-value: assert \initialized(&b); +tests/e-acsl-runtime/valid_alias.c:12:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid_alias.c:12:[value] all evaluations are invalid for function call argument + (void *)b +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __initialize +tests/e-acsl-runtime/valid_alias.c:16:[value] Assertion got status valid. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +tests/e-acsl-runtime/valid_alias.c:17:[value] Assertion got status valid. +[value] using specification for function __gmpz_init_set_si +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:66:[value] Function __gmpz_init_set_si: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:67:[value] Function __gmpz_init_set_si: postcondition got status unknown. +[value] using specification for function __gmpz_cmp +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. +[value] using specification for function __gmpz_clear +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:117:[value] Function __gmpz_clear: precondition got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +tests/e-acsl-runtime/valid_alias.c:19:[value] Assertion got status valid. +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: accessing left-value that contains escaping addresses; assert(\defined(&a)) +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: completely indeterminate value in a. +tests/e-acsl-runtime/valid_alias.c:19:[value] all evaluations are invalid for function call argument + (void *)a +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: accessing left-value that contains escaping addresses; assert(\defined(&b)) +tests/e-acsl-runtime/valid_alias.c:19:[kernel] warning: completely indeterminate value in b. +tests/e-acsl-runtime/valid_alias.c:19:[value] all evaluations are invalid for function call argument + (void *)b +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.1.res.oracle index e6e559209d3..389e3dfbfb2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.1.res.oracle @@ -7,5 +7,37 @@ [kernel] preprocessing with "gcc -C -E -I. -DE_ACSL_MACHDEP=x86_32 -IFRAMAC_SHARE/libc -IFRAMAC_SHARE/libc tests/e-acsl-runtime/valid_in_contract.c" [e-acsl] beginning translation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status unknown. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status unknown. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +tests/e-acsl-runtime/valid_in_contract.c:21:[kernel] warning: out of bounds read. assert \valid_read(&l->next); +tests/e-acsl-runtime/valid_in_contract.c:21:[value] all evaluations are invalid for function call argument + (void *)l->next +tests/e-acsl-runtime/valid_in_contract.c:18:[value] Function f, behavior B1: postcondition got status valid. +tests/e-acsl-runtime/valid_in_contract.c:22:[value] Function f, behavior B2: postcondition got status valid. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +[value] using specification for function __delete_block +tests/e-acsl-runtime/valid_in_contract.c:18:[value] Function __e_acsl_f, behavior B1: postcondition got status valid. +tests/e-acsl-runtime/valid_in_contract.c:22:[value] Function __e_acsl_f, behavior B2: postcondition got status valid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.res.oracle index e6e559209d3..389e3dfbfb2 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/valid_in_contract.res.oracle @@ -7,5 +7,37 @@ [kernel] preprocessing with "gcc -C -E -I. -DE_ACSL_MACHDEP=x86_32 -IFRAMAC_SHARE/libc -IFRAMAC_SHARE/libc tests/e-acsl-runtime/valid_in_contract.c" [e-acsl] beginning translation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] +[value] using specification for function __store_block +[value] using specification for function __valid +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:86:[value] Function __valid: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:87:[value] Function __valid: postcondition got status unknown. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status unknown. +[value] using specification for function __valid_read +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:93:[value] Function __valid_read: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:94:[value] Function __valid_read: postcondition got status unknown. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +tests/e-acsl-runtime/valid_in_contract.c:21:[kernel] warning: out of bounds read. assert \valid_read(&l->next); +tests/e-acsl-runtime/valid_in_contract.c:21:[value] all evaluations are invalid for function call argument + (void *)l->next +tests/e-acsl-runtime/valid_in_contract.c:18:[value] Function f, behavior B1: postcondition got status valid. +tests/e-acsl-runtime/valid_in_contract.c:22:[value] Function f, behavior B2: postcondition got status valid. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status valid. +[value] using specification for function __delete_block +tests/e-acsl-runtime/valid_in_contract.c:18:[value] Function __e_acsl_f, behavior B1: postcondition got status valid. +tests/e-acsl-runtime/valid_in_contract.c:22:[value] Function __e_acsl_f, behavior B2: postcondition got status valid. (Behavior may be inactive, no reduction performed.) +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.1.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.1.res.oracle index 15f19a5e71b..5f5e0475f8a 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.1.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.1.res.oracle @@ -20,5 +20,35 @@ tests/e-acsl-runtime/vector.c:21:[e-acsl] warning: E-ACSL construct `logic funct tests/e-acsl-runtime/vector.c:21:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/vector.c:21:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + LAST ∈ {0} +[value] using specification for function __store_block +[value] using specification for function __initialize +tests/e-acsl-runtime/vector.c:26:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/vector.c:16:[value] entering loop for the first time +tests/e-acsl-runtime/vector.c:29:[value] Assertion got status unknown. +tests/e-acsl-runtime/vector.c:30:[value] Assertion got status unknown. +tests/e-acsl-runtime/vector.c:30:[kernel] warning: accessing uninitialized left-value: assert \initialized(&LAST); +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.res.oracle b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.res.oracle index 15f19a5e71b..be91aed2708 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.res.oracle +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/oracle/vector.res.oracle @@ -20,5 +20,44 @@ tests/e-acsl-runtime/vector.c:21:[e-acsl] warning: E-ACSL construct `logic funct tests/e-acsl-runtime/vector.c:21:[e-acsl] warning: E-ACSL construct `\free' is not yet supported. Ignoring annotation. tests/e-acsl-runtime/vector.c:21:[e-acsl] warning: E-ACSL construct `\allocate' is not yet supported. Ignoring annotation. [e-acsl] translation done in project "e-acsl". -[value] user error: option '-val-builtin __free:Frama_C_free': undeclared builtin 'Frama_C_free' -[kernel] Plug-in value aborted: invalid user input. +[value] Analyzing a complete application starting at main +[value] Computing initial state +[value] Initial state computed +[value] Values of globals at initialization + __fc_random_counter ∈ {0} + __fc_rand_max ∈ {32767} + __fc_heap_status ∈ [--..--] + __e_acsl_init ∈ [--..--] + __e_acsl_internal_heap ∈ [--..--] + __memory_size ∈ [--..--] + LAST ∈ {0} +[value] using specification for function __store_block +[value] using specification for function __initialize +tests/e-acsl-runtime/vector.c:26:[value] Assertion got status valid. +[value] using specification for function __initialized +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:118:[value] Function __initialized: postcondition got status unknown. +FRAMAC_SHARE/e-acsl/memory_model/e_acsl_mmodel.h:119:[value] Function __initialized: postcondition got status valid. +[value] using specification for function e_acsl_assert +FRAMAC_SHARE/e-acsl/e_acsl.h:34:[value] Function e_acsl_assert: precondition got status unknown. +[value] using specification for function __full_init +[value] using specification for function __delete_block +FRAMAC_SHARE/libc/stdlib.h:127:[value] Function __e_acsl_malloc, behavior allocation: postcondition got status unknown. (Behavior may be inactive, no reduction performed.) +FRAMAC_SHARE/libc/stdlib.h:132:[value] Function __e_acsl_malloc, behavior no_allocation: postcondition got status invalid. (Behavior may be inactive, no reduction performed.) +tests/e-acsl-runtime/vector.c:16:[value] entering loop for the first time +tests/e-acsl-runtime/vector.c:29:[value] Assertion got status unknown. +tests/e-acsl-runtime/vector.c:30:[value] Assertion got status unknown. +tests/e-acsl-runtime/vector.c:30:[kernel] warning: accessing uninitialized left-value: assert \initialized(&LAST); +[value] using specification for function __gmpz_init_set_si +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:64:[value] Function __gmpz_init_set_si: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:66:[value] Function __gmpz_init_set_si: postcondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:67:[value] Function __gmpz_init_set_si: postcondition got status unknown. +[value] using specification for function __gmpz_cmp +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:127:[value] Function __gmpz_cmp: precondition got status valid. +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:128:[value] Function __gmpz_cmp: precondition got status valid. +[value] using specification for function __gmpz_clear +FRAMAC_SHARE/e-acsl/e_acsl_gmp.h:117:[value] Function __gmpz_clear: precondition got status valid. +FRAMAC_SHARE/libc/stdlib.h:142:[value] Function __e_acsl_free, behavior deallocation: precondition 'freeable' got status unknown. +FRAMAC_SHARE/libc/stdlib.h:144:[value] Function __e_acsl_free, behavior deallocation: postcondition got status unknown. +[value] using specification for function __e_acsl_memory_clean +[value] done for function main +[value] ====== VALUES COMPUTED ====== diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/test_config b/src/plugins/e-acsl/tests/e-acsl-runtime/test_config index 90f794f4ae2..bcf70a16ce7 100644 --- a/src/plugins/e-acsl/tests/e-acsl-runtime/test_config +++ b/src/plugins/e-acsl/tests/e-acsl-runtime/test_config @@ -1,2 +1,2 @@ -OPT: -e-acsl -then-on e-acsl -val -no-val-show-progress -no-results -OPT: -e-acsl -e-acsl-gmp-only -then-on e-acsl -val -no-val-show-progress -no-results +OPT: -check -e-acsl -then-on e-acsl -val -no-val-show-progress -no-results +OPT: -check -e-acsl -e-acsl-gmp-only -then-on e-acsl -val -no-val-show-progress -no-results diff --git a/src/plugins/e-acsl/typing.ml b/src/plugins/e-acsl/typing.ml index cb3c275b087..98b950b4750 100644 --- a/src/plugins/e-acsl/typing.ml +++ b/src/plugins/e-acsl/typing.ml @@ -239,7 +239,8 @@ let type_constant ty = function | LStr _ | LWStr _ | LReal _ | LEnum _ -> No_integral ty let size_of ty = - try int_to_interv (*(Cil.bytesSizeOf ty)*) (Cil.sizeOf_int ty) + try int_to_interv (Cil.bytesSizeOf ty) (* Fluorine version: + (Cil.sizeOf_int ty) *) with Cil.SizeOfError _ -> eacsl_typ_of_typ Cil.ulongLongType let align_of ty = int_to_interv (Cil.bytesAlignOf ty) @@ -385,7 +386,6 @@ and type_term_lhost = function (try Logic_var_env.find lv with Not_found -> (* C variable *) - (* match lty with*) (* don't work yet: see bts #1064 *) match lv.lv_type with | Ctype ty -> eacsl_typ_of_typ ty | _ -> -- GitLab