From f6ac1ca92f95dd708a58586f61636555b3fe93f9 Mon Sep 17 00:00:00 2001
From: Julien Signoles <julien.signoles@cea.fr>
Date: Wed, 23 Nov 2011 10:28:37 +0000
Subject: [PATCH] [e-acsl] tests compatible with strange behavior of gcc 4.6
 (linking order) [e-acsl] all tests are now executed with gcc [e-acsl] fix bug
 with integer division and modulo [e-acsl] untested support of most logic
 labels [e-acsl]

---
 src/plugins/e-acsl/TODO                       |   5 +-
 src/plugins/e-acsl/env.ml                     |  18 +
 src/plugins/e-acsl/env.mli                    |   2 +
 src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h  |   4 +-
 .../e-acsl/tests/e-acsl-runtime/arith.i       |   2 +-
 .../e-acsl/tests/e-acsl-runtime/array.i       |   2 +-
 src/plugins/e-acsl/tests/e-acsl-runtime/at.i  |   3 +-
 .../e-acsl/tests/e-acsl-runtime/cast.i        |   2 +-
 .../e-acsl/tests/e-acsl-runtime/comparison.i  |   2 +-
 .../tests/e-acsl-runtime/function_contract.i  |   2 +-
 .../tests/e-acsl-runtime/integer_constant.i   |   2 +-
 .../e-acsl/tests/e-acsl-runtime/lazy.i        |   2 +-
 .../tests/e-acsl-runtime/nested_code_annot.i  |   2 +-
 .../e-acsl/tests/e-acsl-runtime/null.i        |   2 +-
 .../e-acsl-runtime/oracle/arith.res.oracle    | 531 ++++++++++--------
 .../e-acsl-runtime/oracle/array.res.oracle    |  30 +-
 .../tests/e-acsl-runtime/oracle/at.res.oracle | 101 ++--
 .../e-acsl-runtime/oracle/cast.res.oracle     |  32 +-
 .../oracle/comparison.res.oracle              | 195 ++++---
 .../e-acsl-runtime/oracle/false.res.oracle    |   4 +-
 .../oracle/function_contract.res.oracle       | 405 +++++++------
 .../tests/e-acsl-runtime/oracle/gen_addrOf.c  | 101 +++-
 .../tests/e-acsl-runtime/oracle/gen_arith.c   | 249 +++++---
 .../tests/e-acsl-runtime/oracle/gen_array.c   | 117 +++-
 .../tests/e-acsl-runtime/oracle/gen_at.c      | 126 +++--
 .../tests/e-acsl-runtime/oracle/gen_cast.c    | 115 ++--
 .../e-acsl-runtime/oracle/gen_comparison.c    | 146 +++--
 .../tests/e-acsl-runtime/oracle/gen_false.c   | 105 +++-
 .../oracle/gen_function_contract.c            | 216 +++++--
 .../oracle/gen_integer_constant.c             | 108 +++-
 .../tests/e-acsl-runtime/oracle/gen_lazy.c    | 155 +++--
 .../oracle/gen_nested_code_annot.c            | 154 +++--
 .../tests/e-acsl-runtime/oracle/gen_not.c     | 101 +++-
 .../tests/e-acsl-runtime/oracle/gen_null.c    | 101 +++-
 .../oracle/gen_other_constants.c              | 105 +++-
 .../tests/e-acsl-runtime/oracle/gen_ptr.c     | 179 ++++--
 .../tests/e-acsl-runtime/oracle/gen_sizeof.c  | 123 ++--
 .../e-acsl-runtime/oracle/gen_stmt_contract.c | 227 ++++++--
 .../tests/e-acsl-runtime/oracle/gen_true.c    | 101 +++-
 .../oracle/integer_constant.res.oracle        |  15 +-
 .../e-acsl-runtime/oracle/lazy.res.oracle     | 174 +++---
 .../oracle/nested_code_annot.res.oracle       | 125 +++--
 .../oracle/other_constants.res.oracle         |  14 +-
 .../e-acsl-runtime/oracle/ptr.res.oracle      | 364 ++++++------
 .../e-acsl-runtime/oracle/sizeof.res.oracle   |  51 +-
 .../oracle/stmt_contract.res.oracle           | 397 +++++++------
 .../tests/e-acsl-runtime/other_constants.i    |   2 +-
 src/plugins/e-acsl/tests/e-acsl-runtime/ptr.i |   2 +-
 .../e-acsl/tests/e-acsl-runtime/sizeof.i      |   5 +-
 .../tests/e-acsl-runtime/stmt_contract.i      |   2 +-
 src/plugins/e-acsl/visit.ml                   |  10 +-
 51 files changed, 3305 insertions(+), 1733 deletions(-)

diff --git a/src/plugins/e-acsl/TODO b/src/plugins/e-acsl/TODO
index 4e5823c9269..1e2f8cd0034 100644
--- a/src/plugins/e-acsl/TODO
+++ b/src/plugins/e-acsl/TODO
@@ -1,7 +1,6 @@
 à traiter avant la 1ère release:
 - quantifications sans exentension de syntaxe
 - \return
-- \old et \at
 
 ########
 # CODE #
@@ -20,11 +19,15 @@
 - constante entière longue: utiliser la représentation sous forme de string et 
   rechercher la base appropriée.
 - introduire feature wishes Bernard (voir mail du 9 juin)
+- arithmetic overflows
 
 #########
 # TESTS #
 #########
 
+- plus de tests de divisions et modulos entières
+- exécuter rte
+- testing logic labels
 - tester plusieurs fonctions contenant des annotations
 - améliorer test "integer_constant.i" quand bug fixed #745
 - test sizeof.i devraient être plus précis quand logic_typing plus précis
diff --git a/src/plugins/e-acsl/env.ml b/src/plugins/e-acsl/env.ml
index 7a1c717eb58..4802eae6c52 100644
--- a/src/plugins/e-acsl/env.ml
+++ b/src/plugins/e-acsl/env.ml
@@ -215,6 +215,24 @@ let pop_and_get env stmt ~global_clear where =
 
 let get_generated_variables env = List.rev env.new_global_vars
 
+let stmt_of_label env = function
+  | StmtLabel { contents = stmt } -> stmt
+  | LogicLabel(_, label) when label = "Here" -> 
+    (match env.visitor#current_stmt with
+    | None -> Misc.not_yet "label \"Here\" in function contract"
+    | Some s -> s)
+  | LogicLabel(_, label) when label = "Old" || label = "Pre" -> 
+    (try 
+       Kernel_function.find_first_stmt (Extlib.the env.visitor#current_kf)
+     with Kernel_function.No_Statement ->
+       Misc.not_yet (Format.sprintf "label %S in function without code" label))
+  | LogicLabel(_, label) when label = "Post" -> 
+    (try
+       Kernel_function.find_return (Extlib.the env.visitor#current_kf)
+     with Kernel_function.No_Statement ->
+       Misc.not_yet "label \"Post\" in function without code")
+  | LogicLabel(_, _label) -> assert false
+
 (*
 Local Variables:
 compile-command: "make"
diff --git a/src/plugins/e-acsl/env.mli b/src/plugins/e-acsl/env.mli
index 48372d074a3..4d56dd6a070 100644
--- a/src/plugins/e-acsl/env.mli
+++ b/src/plugins/e-acsl/env.mli
@@ -78,6 +78,8 @@ val get_generated_variables: t -> varinfo list
 
 val get_visitor: t -> Visitor.generic_frama_c_visitor
 
+val stmt_of_label: t -> logic_label -> stmt
+
 (*
 Local Variables:
 compile-command: "make"
diff --git a/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h b/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h
index f9a3f179ca4..5290f586777 100644
--- a/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h
+++ b/src/plugins/e-acsl/share/e-acsl/e_acsl_gmp.h
@@ -70,13 +70,13 @@ extern void mpz_mul(mpz_t z1, const mpz_t z2, const mpz_t z3);
   @ requires \valid(z2);
   @ requires \valid(z3);
   @ assigns *z1; */
-extern void mpz_cdiv_q(mpz_t z1, const mpz_t z2, const mpz_t z3);
+extern void mpz_tdiv_q(mpz_t z1, const mpz_t z2, const mpz_t z3);
 
 /*@ requires \valid(z1);
   @ requires \valid(z2);
   @ requires \valid(z3);
   @ assigns *z1; */
-extern void mpz_mod(mpz_t z1, const mpz_t z2, const mpz_t z3);
+extern void mpz_tdiv_r(mpz_t z1, const mpz_t z2, const mpz_t z3);
 
 // coercions to C int
 
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/arith.i b/src/plugins/e-acsl/tests/e-acsl-runtime/arith.i
index 4bb84237ff3..bb4f376fc7b 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/arith.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/arith.i
@@ -1,7 +1,7 @@
 /* run.config
    COMMENT: arithmetic operations
    COMMENT: add the last assertion when fixing BTS #751
-   EXECNOW: LOG gen_arith.c BIN gen_arith.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/arith.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_arith.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_arith.out -lgmp ./tests/e-acsl-runtime/result/gen_arith.c
+   EXECNOW: LOG gen_arith.c BIN gen_arith.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/arith.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_arith.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_arith.out ./tests/e-acsl-runtime/result/gen_arith.c -lgmp && ./tests/e-acsl-runtime/result/gen_arith.out
 */
 
 int main(void) {
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/array.i b/src/plugins/e-acsl/tests/e-acsl-runtime/array.i
index daca1bb83b9..4c688bfe8d0 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/array.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/array.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: arrays
-   EXECNOW: LOG gen_array.c BIN gen_array.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/array.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_array.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_array.out -lgmp ./tests/e-acsl-runtime/result/gen_array.c && ./tests/e-acsl-runtime/result/gen_array.out
+   EXECNOW: LOG gen_array.c BIN gen_array.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/array.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_array.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_array.out ./tests/e-acsl-runtime/result/gen_array.c -lgmp && ./tests/e-acsl-runtime/result/gen_array.out
 */
 
 int T1[3],T2[4];
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/at.i b/src/plugins/e-acsl/tests/e-acsl-runtime/at.i
index acb467ed941..4ee9f57e13c 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/at.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/at.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: \at
-   EXECNOW: LOG gen_at.c BIN gen_at.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/at.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_at.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_at.out -lgmp ./tests/e-acsl-runtime/result/gen_at.c && ./tests/e-acsl-runtime/result/gen_at.out
+   EXECNOW: LOG gen_at.c BIN gen_at.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/at.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_at.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_at.out ./tests/e-acsl-runtime/result/gen_at.c -lgmp && ./tests/e-acsl-runtime/result/gen_at.out
 */
 
 int main(void) {
@@ -10,6 +10,7 @@ int main(void) {
   x = 0;
  L: /*@ assert x == 0; */ x = 1;
   x = 2;
+
   /*@ assert \at(x,L) == 0; */
   /*@ assert \at(x+1,L) == 1; */
   /*@ assert \at(x,L)+1 == 1; */
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/cast.i b/src/plugins/e-acsl/tests/e-acsl-runtime/cast.i
index 0fd9b5f0a69..ebd2e6d97c0 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/cast.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/cast.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: cast
-   EXECNOW: LOG gen_cast.c BIN gen_cast.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/cast.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_cast.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_cast.out -lgmp ./tests/e-acsl-runtime/result/gen_cast.c && ./tests/e-acsl-runtime/result/gen_cast.out
+   EXECNOW: LOG gen_cast.c BIN gen_cast.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/cast.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_cast.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_cast.out ./tests/e-acsl-runtime/result/gen_cast.c -lgmp && ./tests/e-acsl-runtime/result/gen_cast.out
 */
 
 int main(void) {
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/comparison.i b/src/plugins/e-acsl/tests/e-acsl-runtime/comparison.i
index 96b7e95cf59..b3b772e3767 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/comparison.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/comparison.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: comparison operators
-   EXECNOW: LOG gen_comparison.c BIN gen_comparison.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/comparison.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_comparison.c > /dev/null &&  gcc -o ./tests/e-acsl-runtime/result/gen_comparison.out -lgmp ./tests/e-acsl-runtime/result/gen_comparison.c && ./tests/e-acsl-runtime/result/gen_comparison.out
+   EXECNOW: LOG gen_comparison.c BIN gen_comparison.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/comparison.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_comparison.c > /dev/null &&  gcc -o ./tests/e-acsl-runtime/result/gen_comparison.out ./tests/e-acsl-runtime/result/gen_comparison.c -lgmp && ./tests/e-acsl-runtime/result/gen_comparison.out
 */
 
 int main(void) {
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/function_contract.i b/src/plugins/e-acsl/tests/e-acsl-runtime/function_contract.i
index f82d2d40472..d60e8c729b1 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/function_contract.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/function_contract.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: function contract
-   EXECNOW: LOG gen_function_contract.c BIN gen_function_contract.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/function_contract.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_function_contract.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_function_contract.out -lgmp ./tests/e-acsl-runtime/result/gen_function_contract.c && ./tests/e-acsl-runtime/result/gen_function_contract.out
+   EXECNOW: LOG gen_function_contract.c BIN gen_function_contract.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/function_contract.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_function_contract.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_function_contract.out ./tests/e-acsl-runtime/result/gen_function_contract.c -lgmp && ./tests/e-acsl-runtime/result/gen_function_contract.out
 */
 
 int X = 0, Y = 2;
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/integer_constant.i b/src/plugins/e-acsl/tests/e-acsl-runtime/integer_constant.i
index ecbe431cb85..ad3b125def1 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/integer_constant.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/integer_constant.i
@@ -1,7 +1,7 @@
 /* run.config
    COMMENT: integer constant + a stmt after the assertion
    COMMENT: waiting for fixing BTS #745
-   EXECNOW: LOG gen_integer_constant.c BIN gen_integer_constant.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/integer_constant.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_integer_constant.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_integer_constant.out -lgmp ./tests/e-acsl-runtime/result/gen_integer_constant.c && ./tests/e-acsl-runtime/result/gen_integer_constant.out
+   EXECNOW: LOG gen_integer_constant.c BIN gen_integer_constant.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/integer_constant.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_integer_constant.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_integer_constant.out ./tests/e-acsl-runtime/result/gen_integer_constant.c -lgmp && ./tests/e-acsl-runtime/result/gen_integer_constant.out
 */
 int main(void) {
   int x;
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/lazy.i b/src/plugins/e-acsl/tests/e-acsl-runtime/lazy.i
index 8faa4e72823..df25a0847f1 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/lazy.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/lazy.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: predicate using lazy operators
-   EXECNOW: LOG gen_lazy.c BIN gen_lazy.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/lazy.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_lazy.c > /dev/null &&  gcc -o ./tests/e-acsl-runtime/result/gen_lazy.out -lgmp ./tests/e-acsl-runtime/result/gen_lazy.c 2> /dev/null && ./tests/e-acsl-runtime/result/gen_lazy.out
+   EXECNOW: LOG gen_lazy.c BIN gen_lazy.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/lazy.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_lazy.c > /dev/null &&  gcc -o ./tests/e-acsl-runtime/result/gen_lazy.out ./tests/e-acsl-runtime/result/gen_lazy.c -lgmp 2> /dev/null && ./tests/e-acsl-runtime/result/gen_lazy.out
 */
 
 int main(void) {
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/nested_code_annot.i b/src/plugins/e-acsl/tests/e-acsl-runtime/nested_code_annot.i
index 3b524ce7828..3d3b2ef6960 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/nested_code_annot.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/nested_code_annot.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: structured stmt with several code annotations inside
-   EXECNOW: LOG gen_nested_code_annot.c BIN gen_nested_code_annot.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/nested_code_annot.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_nested_code_annot.c > /dev/null &&  gcc -o ./tests/e-acsl-runtime/result/gen_nested_code_annot.out -lgmp ./tests/e-acsl-runtime/result/gen_nested_code_annot.c && ./tests/e-acsl-runtime/result/gen_nested_code_annot.out
+   EXECNOW: LOG gen_nested_code_annot.c BIN gen_nested_code_annot.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/nested_code_annot.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_nested_code_annot.c > /dev/null &&  gcc -o ./tests/e-acsl-runtime/result/gen_nested_code_annot.out ./tests/e-acsl-runtime/result/gen_nested_code_annot.c -lgmp && ./tests/e-acsl-runtime/result/gen_nested_code_annot.out
 */
 
 int main(void) {
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/null.i b/src/plugins/e-acsl/tests/e-acsl-runtime/null.i
index 3ffb6169483..32f28ac1131 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/null.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/null.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: assert \null == 0
-   EXECNOW: LOG gen_null.c BIN gen_null.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/null.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_null.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_null.out -lgmp ./tests/e-acsl-runtime/result/gen_null.c && ./tests/e-acsl-runtime/result/gen_null.out
+   EXECNOW: LOG gen_null.c BIN gen_null.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/null.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_null.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_null.out ./tests/e-acsl-runtime/result/gen_null.c -lgmp && ./tests/e-acsl-runtime/result/gen_null.out
 */
 
 int main(void) {
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 781df5b3ebc..da3dcf24e6c 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
@@ -5,28 +5,28 @@
 [value] Values of globals at initialization
 PROJECT_FILE.i:138:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:144.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:145.
 PROJECT_FILE.i:21:[value] Function mpz_init: postcondition got status valid.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:141.
+        Called from PROJECT_FILE.i:146.
 PROJECT_FILE.i:59:[value] Function mpz_neg: precondition got status valid.
 PROJECT_FILE.i:60:[value] Function mpz_neg: precondition got status valid.
 [value] Done for function mpz_neg
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:141.
+        Called from PROJECT_FILE.i:147.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:148.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:149.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -37,33 +37,33 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:150.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:151.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:152.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:147:[value] Assertion got status valid.
+PROJECT_FILE.i:156:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:162.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:163.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:150.
+        Called from PROJECT_FILE.i:164.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:150.
+        Called from PROJECT_FILE.i:165.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:151.
+        Called from PROJECT_FILE.i:166.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:167.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -73,30 +73,30 @@ PROJECT_FILE.i:147:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:168.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:169.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:170.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:156:[value] Assertion got status valid.
+PROJECT_FILE.i:174:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:158.
+        Called from PROJECT_FILE.i:179.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:158.
+        Called from PROJECT_FILE.i:180.
 [value] Done for function mpz_init
 [value] computing for function mpz_com <- main.
-        Called from PROJECT_FILE.i:159.
+        Called from PROJECT_FILE.i:181.
 [kernel] warning: No code for function mpz_com, default assigns generated
 [value] Done for function mpz_com
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:182.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:161.
+        Called from PROJECT_FILE.i:183.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -106,41 +106,41 @@ PROJECT_FILE.i:156:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:184.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:185.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:165:[value] Assertion got status valid.
+PROJECT_FILE.i:189:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:167.
+        Called from PROJECT_FILE.i:197.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:168.
+        Called from PROJECT_FILE.i:198.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:168.
+        Called from PROJECT_FILE.i:199.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:169.
+        Called from PROJECT_FILE.i:200.
 PROJECT_FILE.i:64:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:65:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Done for function mpz_add
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:169.
+        Called from PROJECT_FILE.i:201.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:170.
+        Called from PROJECT_FILE.i:202.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:170.
+        Called from PROJECT_FILE.i:203.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:171.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:172.
+        Called from PROJECT_FILE.i:205.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -150,50 +150,50 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:206.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:207.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:208.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:174.
+        Called from PROJECT_FILE.i:209.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:174.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:177:[value] Assertion got status valid.
+PROJECT_FILE.i:214:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:179.
+        Called from PROJECT_FILE.i:222.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:224.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:225.
 PROJECT_FILE.i:70:[value] Function mpz_sub: precondition got status valid.
 PROJECT_FILE.i:71:[value] Function mpz_sub: precondition got status valid.
 PROJECT_FILE.i:72:[value] Function mpz_sub: precondition got status valid.
 [value] Done for function mpz_sub
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:226.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:227.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:228.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:229.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:184.
+        Called from PROJECT_FILE.i:230.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -203,50 +203,50 @@ PROJECT_FILE.i:72:[value] Function mpz_sub: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:185.
+        Called from PROJECT_FILE.i:231.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:185.
+        Called from PROJECT_FILE.i:232.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:185.
+        Called from PROJECT_FILE.i:233.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:186.
+        Called from PROJECT_FILE.i:234.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:186.
+        Called from PROJECT_FILE.i:235.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:189:[value] Assertion got status valid.
+PROJECT_FILE.i:239:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:191.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:248.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function mpz_init
 [value] computing for function mpz_mul <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:250.
 PROJECT_FILE.i:76:[value] Function mpz_mul: precondition got status valid.
 PROJECT_FILE.i:77:[value] Function mpz_mul: precondition got status valid.
 PROJECT_FILE.i:78:[value] Function mpz_mul: precondition got status valid.
 [value] Done for function mpz_mul
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:251.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:252.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:253.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:195.
+        Called from PROJECT_FILE.i:254.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:196.
+        Called from PROJECT_FILE.i:255.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -256,37 +256,37 @@ PROJECT_FILE.i:78:[value] Function mpz_mul: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:256.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:258.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:201:[value] Assertion got status valid.
+PROJECT_FILE.i:264:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_get_si <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:275.
 PROJECT_FILE.i:96:[value] Function mpz_get_si: precondition got status valid.
 [value] Done for function mpz_get_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function mpz_init
-PROJECT_FILE.i:206:[value] Assertion got status valid.
+PROJECT_FILE.i:277:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:278.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -295,26 +295,26 @@ PROJECT_FILE.i:206:[value] Assertion got status valid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
-[value] computing for function mpz_cdiv_q <- main.
-        Called from PROJECT_FILE.i:208.
-PROJECT_FILE.i:82:[value] Function mpz_cdiv_q: precondition got status valid.
-PROJECT_FILE.i:83:[value] Function mpz_cdiv_q: precondition got status valid.
-PROJECT_FILE.i:84:[value] Function mpz_cdiv_q: precondition got status valid.
-[value] Done for function mpz_cdiv_q
+[value] computing for function mpz_tdiv_q <- main.
+        Called from PROJECT_FILE.i:279.
+PROJECT_FILE.i:82:[value] Function mpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:83:[value] Function mpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:84:[value] Function mpz_tdiv_q: precondition got status valid.
+[value] Done for function mpz_tdiv_q
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:280.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:281.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:282.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:283.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:284.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -324,37 +324,37 @@ PROJECT_FILE.i:84:[value] Function mpz_cdiv_q: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:285.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:286.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:287.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:288.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:289.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:216:[value] Assertion got status valid.
+PROJECT_FILE.i:293:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:301.
 PROJECT_FILE.i:37:[value] Function mpz_init_set_str: postcondition got status valid.
 [value] Done for function mpz_init_set_str
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:302.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:221.
+        Called from PROJECT_FILE.i:303.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:221.
+        Called from PROJECT_FILE.i:304.
 [value] Done for function mpz_init
-PROJECT_FILE.i:222:[value] Assertion got status valid.
+PROJECT_FILE.i:305:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:306.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -363,17 +363,17 @@ PROJECT_FILE.i:222:[value] Assertion got status valid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
-[value] computing for function mpz_cdiv_q <- main.
-        Called from PROJECT_FILE.i:224.
-[value] Done for function mpz_cdiv_q
+[value] computing for function mpz_tdiv_q <- main.
+        Called from PROJECT_FILE.i:307.
+[value] Done for function mpz_tdiv_q
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:308.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:309.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:311.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -383,33 +383,33 @@ PROJECT_FILE.i:222:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:313.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:314.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:315.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:316.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:232:[value] Assertion got status valid.
+PROJECT_FILE.i:320:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:329.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:330.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_get_si <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:331.
 [value] Done for function mpz_get_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:332.
 [value] Done for function mpz_init
-PROJECT_FILE.i:237:[value] Assertion got status valid.
+PROJECT_FILE.i:333:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:334.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -418,24 +418,26 @@ PROJECT_FILE.i:237:[value] Assertion got status valid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
-[value] computing for function mpz_mod_ui <- main.
-        Called from PROJECT_FILE.i:239.
-[kernel] warning: No code for function mpz_mod_ui, default assigns generated
-[value] Done for function mpz_mod_ui
+[value] computing for function mpz_tdiv_r <- main.
+        Called from PROJECT_FILE.i:335.
+PROJECT_FILE.i:88:[value] Function mpz_tdiv_r: precondition got status valid.
+PROJECT_FILE.i:89:[value] Function mpz_tdiv_r: precondition got status valid.
+PROJECT_FILE.i:90:[value] Function mpz_tdiv_r: precondition got status valid.
+[value] Done for function mpz_tdiv_r
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:239.
+        Called from PROJECT_FILE.i:336.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:240.
+        Called from PROJECT_FILE.i:337.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:240.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:241.
+        Called from PROJECT_FILE.i:339.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:242.
+        Called from PROJECT_FILE.i:340.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -445,86 +447,86 @@ PROJECT_FILE.i:237:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:342.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:343.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:344.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:345.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:247:[value] Assertion got status valid.
+PROJECT_FILE.i:349:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:251.
+        Called from PROJECT_FILE.i:365.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:252.
+        Called from PROJECT_FILE.i:366.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:252.
+        Called from PROJECT_FILE.i:367.
 [value] Done for function mpz_init
 [value] computing for function mpz_mul <- main.
-        Called from PROJECT_FILE.i:253.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function mpz_mul
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:253.
+        Called from PROJECT_FILE.i:369.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:254.
+        Called from PROJECT_FILE.i:370.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:254.
+        Called from PROJECT_FILE.i:371.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:255.
+        Called from PROJECT_FILE.i:372.
 [value] Done for function mpz_add
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:255.
+        Called from PROJECT_FILE.i:373.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:256.
+        Called from PROJECT_FILE.i:374.
 [value] Done for function mpz_add
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:256.
+        Called from PROJECT_FILE.i:375.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:257.
+        Called from PROJECT_FILE.i:376.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:257.
+        Called from PROJECT_FILE.i:377.
 [value] Done for function mpz_sub
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:258.
+        Called from PROJECT_FILE.i:378.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:258.
+        Called from PROJECT_FILE.i:379.
 [value] Done for function mpz_sub
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:259.
+        Called from PROJECT_FILE.i:380.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:259.
+        Called from PROJECT_FILE.i:381.
 [value] Done for function mpz_add
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:260.
+        Called from PROJECT_FILE.i:382.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:260.
+        Called from PROJECT_FILE.i:383.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:384.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:262.
+        Called from PROJECT_FILE.i:385.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:263.
+        Called from PROJECT_FILE.i:386.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -534,63 +536,63 @@ PROJECT_FILE.i:247:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:388.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:389.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:390.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:391.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:393.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:394.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:395.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:396.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:397.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:398.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:267.
+        Called from PROJECT_FILE.i:399.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:400.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:271:[value] Assertion got status valid.
-PROJECT_FILE.i:274:[value] Assertion got status valid.
+PROJECT_FILE.i:404:[value] Assertion got status valid.
+PROJECT_FILE.i:407:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:413.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:414.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:415.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:416.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:278.
+        Called from PROJECT_FILE.i:417.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:279.
+        Called from PROJECT_FILE.i:418.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -600,32 +602,32 @@ PROJECT_FILE.i:274:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:420.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:421.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:422.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:283:[value] Assertion got status valid.
+PROJECT_FILE.i:426:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:285.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:285.
+        Called from PROJECT_FILE.i:433.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:286.
+        Called from PROJECT_FILE.i:434.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:286.
+        Called from PROJECT_FILE.i:435.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:287.
+        Called from PROJECT_FILE.i:436.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:289.
+        Called from PROJECT_FILE.i:438.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -635,16 +637,16 @@ PROJECT_FILE.i:283:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:440.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:441.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:442.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:293:[value] Assertion got status valid.
-PROJECT_FILE.i:296:[value] Assertion got status valid.
+PROJECT_FILE.i:446:[value] Assertion got status valid.
+PROJECT_FILE.i:449:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
@@ -715,7 +717,15 @@ extern void mpz_mul(__mpz_struct * /*[1]*/ z1,
     requires \valid(z3);
     assigns *z1; 
 */
-extern void mpz_cdiv_q(__mpz_struct * /*[1]*/ z1,
+extern void mpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                       __mpz_struct const * /*[1]*/ z2,
+                       __mpz_struct const * /*[1]*/ z3);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void mpz_tdiv_r(__mpz_struct * /*[1]*/ z1,
                        __mpz_struct const * /*[1]*/ z2,
                        __mpz_struct const * /*[1]*/ z3);
 /*@ requires \valid(z);
@@ -737,9 +747,6 @@ void e_acsl_fail(char *msg)
 /*@ behavior generated:
       assigns \at(\result,Post) \from \nothing;  */
 extern int ( /* missing proto */ mpz_com)();
-/*@ behavior generated:
-      assigns \at(\result,Post) \from \nothing;  */
-extern int ( /* missing proto */ mpz_mod_ui)();
 int main(void)
 {
   int __retres;
@@ -748,7 +755,11 @@ int main(void)
   x = -3;
   y = 2;
   /*@ assert -3 ≡ x; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; mpz_t e_acsl_3; int e_acsl_4;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    mpz_t e_acsl_3;
+    int e_acsl_4;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)3);
     mpz_init((__mpz_struct *)(e_acsl_2));
     mpz_neg((__mpz_struct *)(e_acsl_2),(__mpz_struct const *)(e_acsl_1));
@@ -762,7 +773,11 @@ int main(void)
   }
   
   /*@ assert x ≡ -3; */ ;
-  { mpz_t e_acsl_5; mpz_t e_acsl_6; mpz_t e_acsl_7; int e_acsl_8;
+  {
+    mpz_t e_acsl_5;
+    mpz_t e_acsl_6;
+    mpz_t e_acsl_7;
+    int e_acsl_8;
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_6),(long)3);
     mpz_init((__mpz_struct *)(e_acsl_7));
@@ -776,9 +791,13 @@ int main(void)
   }
   
   /*@ assert 0 ≢ ~0; */ ;
-  { mpz_t e_acsl_9; mpz_t e_acsl_10; int e_acsl_11;
+  {
+    mpz_t e_acsl_9;
+    mpz_t e_acsl_10;
+    int e_acsl_11;
     mpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)0);
-    mpz_init((__mpz_struct *)(e_acsl_10)); mpz_com(e_acsl_10,e_acsl_9);
+    mpz_init((__mpz_struct *)(e_acsl_10));
+    mpz_com(e_acsl_10,e_acsl_9);
     e_acsl_11 = mpz_cmp((__mpz_struct const *)(e_acsl_9),
                         (__mpz_struct const *)(e_acsl_10));
     if (! (e_acsl_11 != 0)) { e_acsl_fail((char *)"(0 != ~0)"); }
@@ -787,8 +806,13 @@ int main(void)
   }
   
   /*@ assert x+1 ≡ -2; */ ;
-  { mpz_t e_acsl_12; mpz_t e_acsl_13; mpz_t e_acsl_14; mpz_t e_acsl_15;
-    mpz_t e_acsl_16; int e_acsl_17;
+  {
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    mpz_t e_acsl_14;
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    int e_acsl_17;
     mpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_14));
@@ -808,8 +832,13 @@ int main(void)
   }
   
   /*@ assert x-1 ≡ -4; */ ;
-  { mpz_t e_acsl_18; mpz_t e_acsl_19; mpz_t e_acsl_20; mpz_t e_acsl_21;
-    mpz_t e_acsl_22; int e_acsl_23;
+  {
+    mpz_t e_acsl_18;
+    mpz_t e_acsl_19;
+    mpz_t e_acsl_20;
+    mpz_t e_acsl_21;
+    mpz_t e_acsl_22;
+    int e_acsl_23;
     mpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_19),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_20));
@@ -829,8 +858,13 @@ int main(void)
   }
   
   /*@ assert x*3 ≡ -9; */ ;
-  { mpz_t e_acsl_24; mpz_t e_acsl_25; mpz_t e_acsl_26; mpz_t e_acsl_27;
-    mpz_t e_acsl_28; int e_acsl_29;
+  {
+    mpz_t e_acsl_24;
+    mpz_t e_acsl_25;
+    mpz_t e_acsl_26;
+    mpz_t e_acsl_27;
+    mpz_t e_acsl_28;
+    int e_acsl_29;
     mpz_init_set_si((__mpz_struct *)(e_acsl_24),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_25),(long)3);
     mpz_init((__mpz_struct *)(e_acsl_26));
@@ -850,14 +884,21 @@ int main(void)
   }
   
   /*@ assert x/3 ≡ -1; */ ;
-  { mpz_t e_acsl_30; mpz_t e_acsl_31; int e_acsl_32; mpz_t e_acsl_33;
-    mpz_t e_acsl_34; mpz_t e_acsl_35; int e_acsl_36;
+  {
+    mpz_t e_acsl_30;
+    mpz_t e_acsl_31;
+    int e_acsl_32;
+    mpz_t e_acsl_33;
+    mpz_t e_acsl_34;
+    mpz_t e_acsl_35;
+    int e_acsl_36;
     mpz_init_set_si((__mpz_struct *)(e_acsl_30),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_31),(long)3);
     e_acsl_32 = (int)mpz_get_si((__mpz_struct const *)(e_acsl_31));
-    mpz_init((__mpz_struct *)(e_acsl_33)); /*@ assert 3 ≢ 0; */ ;
+    mpz_init((__mpz_struct *)(e_acsl_33));
+    /*@ assert 3 ≢ 0; */ ;
     if (e_acsl_32 == 0) { e_acsl_fail((char *)"(3 == 0)"); }
-    mpz_cdiv_q((__mpz_struct *)(e_acsl_33),(__mpz_struct const *)(e_acsl_30),
+    mpz_tdiv_q((__mpz_struct *)(e_acsl_33),(__mpz_struct const *)(e_acsl_30),
                (__mpz_struct const *)(e_acsl_31));
     mpz_init_set_si((__mpz_struct *)(e_acsl_34),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_35));
@@ -873,8 +914,13 @@ int main(void)
   }
   
   /*@ assert 0xfffffffffff/0xfffffffffff ≡ 1; */ ;
-  { mpz_t e_acsl_37; mpz_t e_acsl_38; int e_acsl_39; mpz_t e_acsl_40;
-    mpz_t e_acsl_41; int e_acsl_42;
+  {
+    mpz_t e_acsl_37;
+    mpz_t e_acsl_38;
+    int e_acsl_39;
+    mpz_t e_acsl_40;
+    mpz_t e_acsl_41;
+    int e_acsl_42;
     mpz_init_set_str((__mpz_struct *)(e_acsl_37),"17592186044415",10);
     mpz_init_set_si((__mpz_struct *)(e_acsl_38),(long)0);
     e_acsl_39 = mpz_cmp((__mpz_struct const *)(e_acsl_37),
@@ -882,28 +928,37 @@ int main(void)
     mpz_init((__mpz_struct *)(e_acsl_40));
     /*@ assert 0xfffffffffff ≢ 0; */ ;
     if (e_acsl_39 == 0) { e_acsl_fail((char *)"(0xfffffffffff == 0)"); }
-    mpz_cdiv_q((__mpz_struct *)(e_acsl_40),(__mpz_struct const *)(e_acsl_37),
+    mpz_tdiv_q((__mpz_struct *)(e_acsl_40),(__mpz_struct const *)(e_acsl_37),
                (__mpz_struct const *)(e_acsl_37));
     mpz_init_set_si((__mpz_struct *)(e_acsl_41),(long)1);
     e_acsl_42 = mpz_cmp((__mpz_struct const *)(e_acsl_40),
                         (__mpz_struct const *)(e_acsl_41));
     if (! (e_acsl_42 == 0)) {
       e_acsl_fail((char *)"(0xfffffffffff/0xfffffffffff == 1)");
-    } mpz_clear((__mpz_struct *)(e_acsl_37));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_37));
     mpz_clear((__mpz_struct *)(e_acsl_38));
     mpz_clear((__mpz_struct *)(e_acsl_40));
     mpz_clear((__mpz_struct *)(e_acsl_41));
   }
   
   /*@ assert x%2 ≡ -1; */ ;
-  { mpz_t e_acsl_43; mpz_t e_acsl_44; int e_acsl_45; mpz_t e_acsl_46;
-    mpz_t e_acsl_47; mpz_t e_acsl_48; int e_acsl_49;
+  {
+    mpz_t e_acsl_43;
+    mpz_t e_acsl_44;
+    int e_acsl_45;
+    mpz_t e_acsl_46;
+    mpz_t e_acsl_47;
+    mpz_t e_acsl_48;
+    int e_acsl_49;
     mpz_init_set_si((__mpz_struct *)(e_acsl_43),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_44),(long)2);
     e_acsl_45 = (int)mpz_get_si((__mpz_struct const *)(e_acsl_44));
-    mpz_init((__mpz_struct *)(e_acsl_46)); /*@ assert 2 ≢ 0; */ ;
+    mpz_init((__mpz_struct *)(e_acsl_46));
+    /*@ assert 2 ≢ 0; */ ;
     if (e_acsl_45 == 0) { e_acsl_fail((char *)"(2 == 0)"); }
-    mpz_mod_ui(e_acsl_46,e_acsl_43,e_acsl_44);
+    mpz_tdiv_r((__mpz_struct *)(e_acsl_46),(__mpz_struct const *)(e_acsl_43),
+               (__mpz_struct const *)(e_acsl_44));
     mpz_init_set_si((__mpz_struct *)(e_acsl_47),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_48));
     mpz_neg((__mpz_struct *)(e_acsl_48),(__mpz_struct const *)(e_acsl_47));
@@ -918,10 +973,21 @@ int main(void)
   }
   
   /*@ assert ((x*2+(3+y))-4)+(x-y) ≡ -10; */ ;
-  { mpz_t e_acsl_50; mpz_t e_acsl_51; mpz_t e_acsl_52; mpz_t e_acsl_53;
-    mpz_t e_acsl_54; mpz_t e_acsl_55; mpz_t e_acsl_56; mpz_t e_acsl_57;
-    mpz_t e_acsl_58; mpz_t e_acsl_59; mpz_t e_acsl_60; mpz_t e_acsl_61;
-    mpz_t e_acsl_62; int e_acsl_63;
+  {
+    mpz_t e_acsl_50;
+    mpz_t e_acsl_51;
+    mpz_t e_acsl_52;
+    mpz_t e_acsl_53;
+    mpz_t e_acsl_54;
+    mpz_t e_acsl_55;
+    mpz_t e_acsl_56;
+    mpz_t e_acsl_57;
+    mpz_t e_acsl_58;
+    mpz_t e_acsl_59;
+    mpz_t e_acsl_60;
+    mpz_t e_acsl_61;
+    mpz_t e_acsl_62;
+    int e_acsl_63;
     mpz_init_set_si((__mpz_struct *)(e_acsl_50),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_51),(long)2);
     mpz_init((__mpz_struct *)(e_acsl_52));
@@ -952,7 +1018,8 @@ int main(void)
                         (__mpz_struct const *)(e_acsl_62));
     if (! (e_acsl_63 == 0)) {
       e_acsl_fail((char *)"(((x*2+(3+y))-4)+(x-y) == -10)");
-    } mpz_clear((__mpz_struct *)(e_acsl_50));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_50));
     mpz_clear((__mpz_struct *)(e_acsl_51));
     mpz_clear((__mpz_struct *)(e_acsl_52));
     mpz_clear((__mpz_struct *)(e_acsl_53));
@@ -972,7 +1039,11 @@ int main(void)
     e_acsl_fail((char *)"((0==1) == !(0==0))");
   }
   /*@ assert (0≤-1) ≡ (0>0); */ ;
-  { mpz_t e_acsl_64; mpz_t e_acsl_65; mpz_t e_acsl_66; int e_acsl_67;
+  {
+    mpz_t e_acsl_64;
+    mpz_t e_acsl_65;
+    mpz_t e_acsl_66;
+    int e_acsl_67;
     mpz_init_set_si((__mpz_struct *)(e_acsl_64),(long)0);
     mpz_init_set_si((__mpz_struct *)(e_acsl_65),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_66));
@@ -981,13 +1052,18 @@ int main(void)
                         (__mpz_struct const *)(e_acsl_66));
     if (! ((e_acsl_67 <= 0) == (0 > 0))) {
       e_acsl_fail((char *)"((0<=-1) == (0>0))");
-    } mpz_clear((__mpz_struct *)(e_acsl_64));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_64));
     mpz_clear((__mpz_struct *)(e_acsl_65));
     mpz_clear((__mpz_struct *)(e_acsl_66));
   }
   
   /*@ assert (0≥-1) ≡ (0≤0); */ ;
-  { mpz_t e_acsl_68; mpz_t e_acsl_69; mpz_t e_acsl_70; int e_acsl_71;
+  {
+    mpz_t e_acsl_68;
+    mpz_t e_acsl_69;
+    mpz_t e_acsl_70;
+    int e_acsl_71;
     mpz_init_set_si((__mpz_struct *)(e_acsl_68),(long)0);
     mpz_init_set_si((__mpz_struct *)(e_acsl_69),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_70));
@@ -996,7 +1072,8 @@ int main(void)
                         (__mpz_struct const *)(e_acsl_70));
     if (! ((e_acsl_71 >= 0) == (0 <= 0))) {
       e_acsl_fail((char *)"((0>=-1) == (0<=0))");
-    } mpz_clear((__mpz_struct *)(e_acsl_68));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_68));
     mpz_clear((__mpz_struct *)(e_acsl_69));
     mpz_clear((__mpz_struct *)(e_acsl_70));
   }
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 7966f0e2238..71c56e656d7 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
@@ -8,12 +8,12 @@ tests/e-acsl-runtime/array.i:14:[e-acsl] warning: missing guard for ensuring tha
 [value] Values of globals at initialization
         T1[0..2] ∈ {0}
         T2[0..3] ∈ {0}
-PROJECT_FILE.i:136:[value] entering loop for the first time
-PROJECT_FILE.i:136:[value] assigning non deterministic value for the first time
-PROJECT_FILE.i:139:[value] entering loop for the first time
-PROJECT_FILE.i:142:[value] Assertion got status unknown.
+PROJECT_FILE.i:138:[value] entering loop for the first time
+PROJECT_FILE.i:142:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:147:[value] entering loop for the first time
+PROJECT_FILE.i:154:[value] Assertion got status unknown.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:155.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -23,9 +23,9 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
-PROJECT_FILE.i:145:[value] Assertion got status unknown.
+PROJECT_FILE.i:157:[value] Assertion got status unknown.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:146.
+        Called from PROJECT_FILE.i:158.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -64,10 +64,20 @@ int T2[4];
 int main(void)
 {
   int __retres;
-  { int i; i = 0; while (1) { if (! (i < 3)) { break; } T1[i] = i; i ++; } }
+  { int i;
+    i = 0;
+    while (1) {
+      if (! (i < 3)) { break; }
+      T1[i] = i;
+      i ++; } }
   
-  { int i_0; i_0 = 0;
-    while (1) { if (! (i_0 < 4)) { break; } T2[i_0] = 2 * i_0; i_0 ++; }
+  {
+    int i_0;
+    i_0 = 0;
+    while (1) {
+      if (! (i_0 < 4)) { break; }
+      T2[i_0] = 2 * i_0;
+      i_0 ++; }
   }
   
   /*@ assert T1[0] ≡ T2[0]; */ ;
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 46d637a5ee5..ade495e3beb 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
@@ -3,50 +3,50 @@
 [value] Initial state computed
 [value] Values of globals at initialization
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:145.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:146.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:147.
 PROJECT_FILE.i:21:[value] Function mpz_init: postcondition got status valid.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:148.
 PROJECT_FILE.i:64:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:65:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Done for function mpz_add
 [value] computing for function mpz_init_set <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:149.
 PROJECT_FILE.i:25:[value] Function mpz_init_set: postcondition got status valid.
 [value] Done for function mpz_init_set
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:150.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:151.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:152.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:149:[value] Assertion got status valid.
+PROJECT_FILE.i:156:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:151.
+        Called from PROJECT_FILE.i:161.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:151.
+        Called from PROJECT_FILE.i:162.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:163.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:164.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -57,23 +57,23 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:165.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:166.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:159:[value] Assertion got status unknown.
+PROJECT_FILE.i:172:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:161.
+        Called from PROJECT_FILE.i:177.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:161.
+        Called from PROJECT_FILE.i:178.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:179.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:163.
+        Called from PROJECT_FILE.i:180.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -83,20 +83,20 @@ PROJECT_FILE.i:159:[value] Assertion got status unknown.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:164.
+        Called from PROJECT_FILE.i:181.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:164.
+        Called from PROJECT_FILE.i:182.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:167:[value] Assertion got status unknown.
+PROJECT_FILE.i:186:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:168.
+        Called from PROJECT_FILE.i:190.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:169.
+        Called from PROJECT_FILE.i:191.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:170.
+        Called from PROJECT_FILE.i:192.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -106,26 +106,26 @@ PROJECT_FILE.i:167:[value] Assertion got status unknown.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:171.
+        Called from PROJECT_FILE.i:193.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:174:[value] Assertion got status unknown.
+PROJECT_FILE.i:197:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:176.
+        Called from PROJECT_FILE.i:203.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:176.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:177.
+        Called from PROJECT_FILE.i:205.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:177.
+        Called from PROJECT_FILE.i:206.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:178.
+        Called from PROJECT_FILE.i:207.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:179.
+        Called from PROJECT_FILE.i:208.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -135,16 +135,16 @@ PROJECT_FILE.i:174:[value] Assertion got status unknown.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:209.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:211.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:184.
+        Called from PROJECT_FILE.i:216.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -214,7 +214,10 @@ int main(void)
   int e_acsl_14;
   x = 0;
   L: e_acsl_14 = x;
-  { mpz_t e_acsl_8; mpz_t e_acsl_9; mpz_t e_acsl_10;
+  {
+    mpz_t e_acsl_8;
+    mpz_t e_acsl_9;
+    mpz_t e_acsl_10;
     mpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_10));
@@ -229,7 +232,10 @@ int main(void)
   
   e_acsl_4 = x;
   /*@ assert x ≡ 0; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -242,7 +248,10 @@ int main(void)
   x = 1;
   x = 2;
   /*@ assert \at(x,L) ≡ 0; */ ;
-  { mpz_t e_acsl_5; mpz_t e_acsl_6; int e_acsl_7;
+  {
+    mpz_t e_acsl_5;
+    mpz_t e_acsl_6;
+    int e_acsl_7;
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)e_acsl_4);
     mpz_init_set_si((__mpz_struct *)(e_acsl_6),(long)0);
     e_acsl_7 = mpz_cmp((__mpz_struct const *)(e_acsl_5),
@@ -253,7 +262,9 @@ int main(void)
   }
   
   /*@ assert \at(x+1,L) ≡ 1; */ ;
-  { mpz_t e_acsl_12; int e_acsl_13;
+  {
+    mpz_t e_acsl_12;
+    int e_acsl_13;
     mpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)1);
     e_acsl_13 = mpz_cmp((__mpz_struct const *)(e_acsl_11),
                         (__mpz_struct const *)(e_acsl_12));
@@ -262,7 +273,11 @@ int main(void)
   }
   
   /*@ assert \at(x,L)+1 ≡ 1; */ ;
-  { mpz_t e_acsl_15; mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18;
+  {
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
     mpz_init_set_si((__mpz_struct *)(e_acsl_15),(long)e_acsl_14);
     mpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)1);
     mpz_init((__mpz_struct *)(e_acsl_17));
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 37c29a46fae..aa0fd63006d 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
@@ -6,15 +6,15 @@ tests/e-acsl-runtime/cast.i:18:[e-acsl] warning: missing guard for ensuring that
 [value] Values of globals at initialization
 PROJECT_FILE.i:138:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:142.
 PROJECT_FILE.i:37:[value] Function mpz_init_set_str: postcondition got status valid.
 [value] Done for function mpz_init_set_str
 [value] computing for function mpz_get_si <- main.
-        Called from PROJECT_FILE.i:141.
+        Called from PROJECT_FILE.i:143.
 PROJECT_FILE.i:96:[value] Function mpz_get_si: precondition got status valid.
 [value] Done for function mpz_get_si
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:144.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -25,19 +25,19 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:145.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:146:[value] Assertion got status valid.
+PROJECT_FILE.i:149:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:153.
 [value] Done for function mpz_init_set_str
 [value] computing for function mpz_get_ui <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:154.
 PROJECT_FILE.i:100:[value] Function mpz_get_ui: precondition got status valid.
 [value] Done for function mpz_get_ui
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:151.
+        Called from PROJECT_FILE.i:156.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -47,7 +47,7 @@ PROJECT_FILE.i:100:[value] Function mpz_get_ui: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:158.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -100,21 +100,27 @@ int main(void)
   x = (long)0;
   y = 0;
   /*@ assert y ≢ (int)0xfffffffffffffff; */ ;
-  { mpz_t e_acsl_1; int e_acsl_2;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
     mpz_init_set_str((__mpz_struct *)(e_acsl_1),"1152921504606846975",10);
     e_acsl_2 = (int)mpz_get_si((__mpz_struct const *)(e_acsl_1));
     if (! (y != e_acsl_2)) {
       e_acsl_fail((char *)"(y != (int)0xfffffffffffffff)");
-    } mpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_1));
   }
   
   /*@ assert (unsigned int)y ≢ (unsigned int)0xfffffffffffffff; */ ;
-  { mpz_t e_acsl_3; unsigned int e_acsl_4;
+  {
+    mpz_t e_acsl_3;
+    unsigned int e_acsl_4;
     mpz_init_set_str((__mpz_struct *)(e_acsl_3),"1152921504606846975",10);
     e_acsl_4 = (unsigned int)mpz_get_ui((__mpz_struct const *)(e_acsl_3));
     if (! ((unsigned int)y != e_acsl_4)) {
       e_acsl_fail((char *)"((unsigned int)y != (unsigned int)0xfffffffffffffff)");
-    } mpz_clear((__mpz_struct *)(e_acsl_3));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_3));
   }
   
   __retres = 0;
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 9870f828ee1..1bac2ca8dcc 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
@@ -6,19 +6,19 @@ PROJECT_FILE.i:139:[value] Assertion got status valid.
 PROJECT_FILE.i:142:[value] Assertion got status valid.
 PROJECT_FILE.i:145:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:147.
+        Called from PROJECT_FILE.i:150.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:147.
+        Called from PROJECT_FILE.i:151.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:152.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:153.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -29,24 +29,24 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:154.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:150.
+        Called from PROJECT_FILE.i:155.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:153:[value] Assertion got status valid.
+PROJECT_FILE.i:159:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:155.
+        Called from PROJECT_FILE.i:164.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:155.
+        Called from PROJECT_FILE.i:165.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:156.
+        Called from PROJECT_FILE.i:166.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:157.
+        Called from PROJECT_FILE.i:167.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -56,40 +56,40 @@ PROJECT_FILE.i:153:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:157.
+        Called from PROJECT_FILE.i:168.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:158.
+        Called from PROJECT_FILE.i:169.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:162:[value] Assertion got status valid.
-PROJECT_FILE.i:165:[value] Assertion got status unknown.
-PROJECT_FILE.i:168:[value] Assertion got status valid.
-PROJECT_FILE.i:171:[value] Assertion got status valid.
 PROJECT_FILE.i:174:[value] Assertion got status valid.
-PROJECT_FILE.i:177:[value] Assertion got status valid.
+PROJECT_FILE.i:177:[value] Assertion got status unknown.
 PROJECT_FILE.i:180:[value] Assertion got status valid.
 PROJECT_FILE.i:183:[value] Assertion got status valid.
 PROJECT_FILE.i:186:[value] Assertion got status valid.
+PROJECT_FILE.i:189:[value] Assertion got status valid.
+PROJECT_FILE.i:192:[value] Assertion got status valid.
+PROJECT_FILE.i:195:[value] Assertion got status valid.
+PROJECT_FILE.i:198:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:188.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:188.
+        Called from PROJECT_FILE.i:205.
 PROJECT_FILE.i:21:[value] Function mpz_init: postcondition got status valid.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:189.
+        Called from PROJECT_FILE.i:206.
 PROJECT_FILE.i:59:[value] Function mpz_neg: precondition got status valid.
 PROJECT_FILE.i:60:[value] Function mpz_neg: precondition got status valid.
 [value] Done for function mpz_neg
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:189.
+        Called from PROJECT_FILE.i:207.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:190.
+        Called from PROJECT_FILE.i:208.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:191.
+        Called from PROJECT_FILE.i:209.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -99,32 +99,32 @@ PROJECT_FILE.i:60:[value] Function mpz_neg: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:191.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:211.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:212.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:195:[value] Assertion got status valid.
+PROJECT_FILE.i:216:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:222.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:223.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:224.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:225.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:199.
+        Called from PROJECT_FILE.i:226.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:200.
+        Called from PROJECT_FILE.i:227.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -134,32 +134,32 @@ PROJECT_FILE.i:195:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:201.
+        Called from PROJECT_FILE.i:228.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:201.
+        Called from PROJECT_FILE.i:229.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:201.
+        Called from PROJECT_FILE.i:230.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:204:[value] Assertion got status valid.
+PROJECT_FILE.i:234:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:206.
+        Called from PROJECT_FILE.i:240.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:206.
+        Called from PROJECT_FILE.i:241.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:242.
 [value] Done for function mpz_neg
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:243.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:244.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:245.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -169,32 +169,32 @@ PROJECT_FILE.i:204:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:248.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:213:[value] Assertion got status valid.
+PROJECT_FILE.i:252:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:258.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:261.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:218.
+        Called from PROJECT_FILE.i:263.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -204,29 +204,29 @@ PROJECT_FILE.i:213:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:222:[value] Assertion got status valid.
+PROJECT_FILE.i:270:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:275.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:278.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:279.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -236,29 +236,29 @@ PROJECT_FILE.i:222:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:280.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:281.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:231:[value] Assertion got status valid.
+PROJECT_FILE.i:285:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:293.
 [value] Done for function mpz_init
 [value] computing for function mpz_neg <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:294.
 [value] Done for function mpz_neg
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:296.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -268,13 +268,13 @@ PROJECT_FILE.i:231:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:297.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:299.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -340,7 +340,10 @@ int main(void)
   /*@ assert y > x; */ ;
   if (! (y > x)) { e_acsl_fail((char *)"(y > x)"); }
   /*@ assert x ≤ 0; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -351,7 +354,10 @@ int main(void)
   }
   
   /*@ assert y ≥ 1; */ ;
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)y);
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)1);
     e_acsl_6 = mpz_cmp((__mpz_struct const *)(e_acsl_4),
@@ -380,7 +386,11 @@ int main(void)
   /*@ assert 1 ≢ 2; */ ;
   if (! (1 != 2)) { e_acsl_fail((char *)"(1 != 2)"); }
   /*@ assert -5 < 18; */ ;
-  { mpz_t e_acsl_7; mpz_t e_acsl_8; mpz_t e_acsl_9; int e_acsl_10;
+  {
+    mpz_t e_acsl_7;
+    mpz_t e_acsl_8;
+    mpz_t e_acsl_9;
+    int e_acsl_10;
     mpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)5);
     mpz_init((__mpz_struct *)(e_acsl_8));
     mpz_neg((__mpz_struct *)(e_acsl_8),(__mpz_struct const *)(e_acsl_7));
@@ -394,7 +404,11 @@ int main(void)
   }
   
   /*@ assert 32 > -3; */ ;
-  { mpz_t e_acsl_11; mpz_t e_acsl_12; mpz_t e_acsl_13; int e_acsl_14;
+  {
+    mpz_t e_acsl_11;
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    int e_acsl_14;
     mpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)32);
     mpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)3);
     mpz_init((__mpz_struct *)(e_acsl_13));
@@ -408,7 +422,11 @@ int main(void)
   }
   
   /*@ assert -12 ≤ 13; */ ;
-  { mpz_t e_acsl_15; mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18;
+  {
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
     mpz_init_set_si((__mpz_struct *)(e_acsl_15),(long)12);
     mpz_init((__mpz_struct *)(e_acsl_16));
     mpz_neg((__mpz_struct *)(e_acsl_16),(__mpz_struct const *)(e_acsl_15));
@@ -422,7 +440,11 @@ int main(void)
   }
   
   /*@ assert 123 ≥ -12; */ ;
-  { mpz_t e_acsl_19; mpz_t e_acsl_20; mpz_t e_acsl_21; int e_acsl_22;
+  {
+    mpz_t e_acsl_19;
+    mpz_t e_acsl_20;
+    mpz_t e_acsl_21;
+    int e_acsl_22;
     mpz_init_set_si((__mpz_struct *)(e_acsl_19),(long)123);
     mpz_init_set_si((__mpz_struct *)(e_acsl_20),(long)12);
     mpz_init((__mpz_struct *)(e_acsl_21));
@@ -436,7 +458,10 @@ int main(void)
   }
   
   /*@ assert -0xff ≡ -0xff; */ ;
-  { mpz_t e_acsl_23; mpz_t e_acsl_24; int e_acsl_25;
+  {
+    mpz_t e_acsl_23;
+    mpz_t e_acsl_24;
+    int e_acsl_25;
     mpz_init_set_si((__mpz_struct *)(e_acsl_23),(long)0xff);
     mpz_init((__mpz_struct *)(e_acsl_24));
     mpz_neg((__mpz_struct *)(e_acsl_24),(__mpz_struct const *)(e_acsl_23));
@@ -448,7 +473,11 @@ int main(void)
   }
   
   /*@ assert 1 ≢ -2; */ ;
-  { mpz_t e_acsl_26; mpz_t e_acsl_27; mpz_t e_acsl_28; int e_acsl_29;
+  {
+    mpz_t e_acsl_26;
+    mpz_t e_acsl_27;
+    mpz_t e_acsl_28;
+    int e_acsl_29;
     mpz_init_set_si((__mpz_struct *)(e_acsl_26),(long)1);
     mpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)2);
     mpz_init((__mpz_struct *)(e_acsl_28));
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 24253371af6..beab2cdef0d 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
@@ -27,7 +27,9 @@ int main(void)
   int __retres;
   int x;
   x = 0;
-  if (x) { /*@ assert \false; */ ; e_acsl_fail((char *)"(\\false)"); }
+  if (x) {
+    /*@ assert \false; */ ;
+    e_acsl_fail((char *)"(\\false)"); }
   __retres = 0;
   return (__retres);
 }
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 0b7f470c704..da4b9214c0a 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
@@ -5,21 +5,21 @@
         X ∈ {0}
         Y ∈ {2}
 [value] computing for function f <- main.
-        Called from PROJECT_FILE.i:347.
+        Called from PROJECT_FILE.i:445.
 [value] computing for function mpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:138.
+        Called from PROJECT_FILE.i:141.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- f <- main.
-        Called from PROJECT_FILE.i:138.
+        Called from PROJECT_FILE.i:142.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- f <- main.
-        Called from PROJECT_FILE.i:139.
+        Called from PROJECT_FILE.i:143.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- f <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:144.
 [value] computing for function printf <- e_acsl_fail <- f <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -30,28 +30,28 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:145.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- f <- main.
-        Called from PROJECT_FILE.i:141.
+        Called from PROJECT_FILE.i:146.
 [value] Done for function mpz_clear
 PROJECT_FILE.i:133:[value] Function f: postcondition got status valid.
 [value] Recording results for f
 [value] Done for function f
 [value] computing for function g <- main.
-        Called from PROJECT_FILE.i:348.
+        Called from PROJECT_FILE.i:446.
 [value] computing for function mpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:163.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:164.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- g <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:165.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:166.
 [value] computing for function printf <- e_acsl_fail <- g <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -61,13 +61,13 @@ PROJECT_FILE.i:133:[value] Function f: postcondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- g <- main.
-        Called from PROJECT_FILE.i:155.
+        Called from PROJECT_FILE.i:167.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- g <- main.
-        Called from PROJECT_FILE.i:155.
+        Called from PROJECT_FILE.i:168.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- g <- main.
-        Called from PROJECT_FILE.i:156.
+        Called from PROJECT_FILE.i:169.
 [value] computing for function printf <- e_acsl_fail <- g <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -77,32 +77,32 @@ PROJECT_FILE.i:133:[value] Function f: postcondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:156.
+        Called from PROJECT_FILE.i:170.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:157.
+        Called from PROJECT_FILE.i:171.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- g <- main.
-        Called from PROJECT_FILE.i:157.
+        Called from PROJECT_FILE.i:172.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:146:[value] Function g: postcondition got status valid.
-PROJECT_FILE.i:147:[value] Function g: postcondition got status valid.
+PROJECT_FILE.i:152:[value] Function g: postcondition got status valid.
+PROJECT_FILE.i:153:[value] Function g: postcondition got status valid.
 [value] Recording results for g
 [value] Done for function g
 [value] computing for function h <- main.
-        Called from PROJECT_FILE.i:349.
-PROJECT_FILE.i:162:[value] Function h: precondition got status valid.
+        Called from PROJECT_FILE.i:447.
+PROJECT_FILE.i:178:[value] Function h: precondition got status valid.
 [value] computing for function mpz_init_set_si <- h <- main.
-        Called from PROJECT_FILE.i:166.
+        Called from PROJECT_FILE.i:185.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- h <- main.
-        Called from PROJECT_FILE.i:166.
+        Called from PROJECT_FILE.i:186.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- h <- main.
-        Called from PROJECT_FILE.i:167.
+        Called from PROJECT_FILE.i:187.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- h <- main.
-        Called from PROJECT_FILE.i:168.
+        Called from PROJECT_FILE.i:188.
 [value] computing for function printf <- e_acsl_fail <- h <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -112,28 +112,28 @@ PROJECT_FILE.i:162:[value] Function h: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- h <- main.
-        Called from PROJECT_FILE.i:168.
+        Called from PROJECT_FILE.i:189.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- h <- main.
-        Called from PROJECT_FILE.i:169.
+        Called from PROJECT_FILE.i:190.
 [value] Done for function mpz_clear
 [value] Recording results for h
 [value] Done for function h
 [value] computing for function i <- main.
-        Called from PROJECT_FILE.i:350.
-PROJECT_FILE.i:175:[value] Function i: precondition got status valid.
-PROJECT_FILE.i:176:[value] Function i: precondition got status valid.
+        Called from PROJECT_FILE.i:448.
+PROJECT_FILE.i:197:[value] Function i: precondition got status valid.
+PROJECT_FILE.i:198:[value] Function i: precondition got status valid.
 [value] computing for function mpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:208.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:209.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- i <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:211.
 [value] computing for function printf <- e_acsl_fail <- i <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -143,16 +143,16 @@ PROJECT_FILE.i:176:[value] Function i: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:212.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- i <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:213.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- i <- main.
-        Called from PROJECT_FILE.i:184.
+        Called from PROJECT_FILE.i:214.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- i <- main.
-        Called from PROJECT_FILE.i:185.
+        Called from PROJECT_FILE.i:215.
 [value] computing for function printf <- e_acsl_fail <- i <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -162,35 +162,35 @@ PROJECT_FILE.i:176:[value] Function i: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:185.
+        Called from PROJECT_FILE.i:216.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:186.
+        Called from PROJECT_FILE.i:217.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:186.
+        Called from PROJECT_FILE.i:218.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- i <- main.
-        Called from PROJECT_FILE.i:186.
+        Called from PROJECT_FILE.i:219.
 [value] Done for function mpz_clear
 [value] Recording results for i
 [value] Done for function i
 [value] computing for function j <- main.
-        Called from PROJECT_FILE.i:351.
-PROJECT_FILE.i:193:[value] Function j, behavior b1: precondition got status valid.
-PROJECT_FILE.i:197:[value] Function j, behavior b2: precondition got status valid.
-PROJECT_FILE.i:198:[value] Function j, behavior b2: precondition got status valid.
+        Called from PROJECT_FILE.i:449.
+PROJECT_FILE.i:227:[value] Function j, behavior b1: precondition got status valid.
+PROJECT_FILE.i:231:[value] Function j, behavior b2: precondition got status valid.
+PROJECT_FILE.i:232:[value] Function j, behavior b2: precondition got status valid.
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:250.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:251.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:252.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -200,26 +200,26 @@ PROJECT_FILE.i:198:[value] Function j, behavior b2: precondition got status vali
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:253.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:254.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- j <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:255.
 PROJECT_FILE.i:21:[value] Function mpz_init: postcondition got status valid.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- j <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:256.
 PROJECT_FILE.i:64:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:65:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:258.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -229,13 +229,13 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:214.
+        Called from PROJECT_FILE.i:259.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:214.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:261.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -245,34 +245,34 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:217.
+        Called from PROJECT_FILE.i:267.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:279.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:280.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:281.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:282.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -282,22 +282,22 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:283.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- j <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:284.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- j <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:285.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- j <- main.
-        Called from PROJECT_FILE.i:226.
+        Called from PROJECT_FILE.i:286.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- j <- main.
-        Called from PROJECT_FILE.i:227.
+        Called from PROJECT_FILE.i:287.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- j <- main.
-        Called from PROJECT_FILE.i:228.
+        Called from PROJECT_FILE.i:288.
 [value] computing for function printf <- e_acsl_fail <- j <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -307,56 +307,56 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:289.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:290.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:229.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- j <- main.
-        Called from PROJECT_FILE.i:230.
+        Called from PROJECT_FILE.i:293.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:194:[value] Function j, behavior b1: postcondition got status valid.
-PROJECT_FILE.i:199:[value] Function j, behavior b2: postcondition got status valid.
+PROJECT_FILE.i:228:[value] Function j, behavior b1: postcondition got status valid.
+PROJECT_FILE.i:233:[value] Function j, behavior b2: postcondition got status valid.
 [value] Recording results for j
 [value] Done for function j
 [value] computing for function k <- main.
-        Called from PROJECT_FILE.i:352.
-PROJECT_FILE.i:237:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated.
-PROJECT_FILE.i:242:[value] Function k, behavior b2: precondition got status valid.
-PROJECT_FILE.i:243:[value] Function k, behavior b2: precondition got status valid.
+        Called from PROJECT_FILE.i:450.
+PROJECT_FILE.i:301:[value] Function k, behavior b1: assumption got status invalid; precondition not evaluated.
+PROJECT_FILE.i:306:[value] Function k, behavior b2: precondition got status valid.
+PROJECT_FILE.i:307:[value] Function k, behavior b2: precondition got status valid.
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:251.
+        Called from PROJECT_FILE.i:325.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:252.
+        Called from PROJECT_FILE.i:326.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:252.
+        Called from PROJECT_FILE.i:327.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:258.
+        Called from PROJECT_FILE.i:333.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:259.
+        Called from PROJECT_FILE.i:334.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:260.
+        Called from PROJECT_FILE.i:335.
 [value] Done for function mpz_cmp
-PROJECT_FILE.i:261:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:336:[value] assigning non deterministic value for the first time
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:262.
+        Called from PROJECT_FILE.i:337.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:263.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:340.
 [value] computing for function printf <- e_acsl_fail <- k <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -366,43 +366,43 @@ PROJECT_FILE.i:261:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:342.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:270.
+        Called from PROJECT_FILE.i:347.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:271.
+        Called from PROJECT_FILE.i:348.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:272.
+        Called from PROJECT_FILE.i:349.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:274.
+        Called from PROJECT_FILE.i:351.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:275.
+        Called from PROJECT_FILE.i:352.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:281.
+        Called from PROJECT_FILE.i:360.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:282.
+        Called from PROJECT_FILE.i:361.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:283.
+        Called from PROJECT_FILE.i:362.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:285.
+        Called from PROJECT_FILE.i:364.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:286.
+        Called from PROJECT_FILE.i:365.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:287.
+        Called from PROJECT_FILE.i:367.
 [value] computing for function printf <- e_acsl_fail <- k <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -412,55 +412,55 @@ PROJECT_FILE.i:261:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:288.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:293.
+        Called from PROJECT_FILE.i:373.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:294.
+        Called from PROJECT_FILE.i:374.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:295.
+        Called from PROJECT_FILE.i:375.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:297.
+        Called from PROJECT_FILE.i:377.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:298.
+        Called from PROJECT_FILE.i:378.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:388.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:307.
+        Called from PROJECT_FILE.i:389.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- k <- main.
-        Called from PROJECT_FILE.i:308.
+        Called from PROJECT_FILE.i:390.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- k <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:391.
 [value] Done for function mpz_add
 [value] computing for function mpz_init_set_si <- k <- main.
-        Called from PROJECT_FILE.i:310.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- k <- main.
-        Called from PROJECT_FILE.i:311.
+        Called from PROJECT_FILE.i:393.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:395.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:314.
+        Called from PROJECT_FILE.i:396.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:397.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:316.
+        Called from PROJECT_FILE.i:398.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- k <- main.
-        Called from PROJECT_FILE.i:317.
+        Called from PROJECT_FILE.i:400.
 [value] computing for function printf <- e_acsl_fail <- k <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -470,30 +470,30 @@ PROJECT_FILE.i:261:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:318.
+        Called from PROJECT_FILE.i:401.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:318.
+        Called from PROJECT_FILE.i:402.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- k <- main.
-        Called from PROJECT_FILE.i:318.
+        Called from PROJECT_FILE.i:403.
 [value] Done for function mpz_clear
 [value] Recording results for k
 [value] Done for function k
 [value] computing for function l <- main.
-        Called from PROJECT_FILE.i:353.
-PROJECT_FILE.i:327:[value] Assertion got status valid.
+        Called from PROJECT_FILE.i:451.
+PROJECT_FILE.i:413:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:418.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:419.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- l <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:420.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:421.
 [value] computing for function printf <- e_acsl_fail <- l <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -503,22 +503,22 @@ PROJECT_FILE.i:327:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:422.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:332.
+        Called from PROJECT_FILE.i:423.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:336.
+        Called from PROJECT_FILE.i:431.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- l <- main.
-        Called from PROJECT_FILE.i:336.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- l <- main.
-        Called from PROJECT_FILE.i:337.
+        Called from PROJECT_FILE.i:433.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- l <- main.
-        Called from PROJECT_FILE.i:338.
+        Called from PROJECT_FILE.i:434.
 [value] computing for function printf <- e_acsl_fail <- l <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -528,12 +528,12 @@ PROJECT_FILE.i:327:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:338.
+        Called from PROJECT_FILE.i:435.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- l <- main.
-        Called from PROJECT_FILE.i:339.
+        Called from PROJECT_FILE.i:436.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:324:[value] Function l: postcondition got status valid.
+PROJECT_FILE.i:410:[value] Function l: postcondition got status valid.
 [value] Recording results for l
 [value] Done for function l
 [value] Recording results for main
@@ -607,14 +607,18 @@ int Y = 2;
 void f(void)
 {
   X = 1;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_2));
     if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(X == 1)"); }
     mpz_clear((__mpz_struct *)(e_acsl_1));
-    mpz_clear((__mpz_struct *)(e_acsl_2)); return;
+    mpz_clear((__mpz_struct *)(e_acsl_2));
+    return;
   }
   
 }
@@ -624,8 +628,13 @@ void f(void)
 void g(void)
 {
   X = 2;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; mpz_t e_acsl_4;
-    int e_acsl_5; mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    mpz_t e_acsl_4;
+    int e_acsl_5;
+    mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)2);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_2));
@@ -636,7 +645,8 @@ void g(void)
     if (! (e_acsl_5 == 0)) { e_acsl_fail((char *)"(Y == 2)"); }
     mpz_clear((__mpz_struct *)(e_acsl_1));
     mpz_clear((__mpz_struct *)(e_acsl_2));
-    mpz_clear((__mpz_struct *)(e_acsl_4)); return;
+    mpz_clear((__mpz_struct *)(e_acsl_4));
+    return;
   }
   
 }
@@ -644,14 +654,18 @@ void g(void)
 /*@ requires X ≡ 2;  */
 void h(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)2);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_2));
     if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(X == 2)"); }
     mpz_clear((__mpz_struct *)(e_acsl_1));
-    mpz_clear((__mpz_struct *)(e_acsl_2)); X ++;
+    mpz_clear((__mpz_struct *)(e_acsl_2));
+    X ++;
   }
   
   return;
@@ -661,8 +675,13 @@ void h(void)
     requires Y ≡ 2;  */
 void i(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; mpz_t e_acsl_4;
-    mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)3);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -676,7 +695,8 @@ void i(void)
     mpz_clear((__mpz_struct *)(e_acsl_1));
     mpz_clear((__mpz_struct *)(e_acsl_2));
     mpz_clear((__mpz_struct *)(e_acsl_4));
-    mpz_clear((__mpz_struct *)(e_acsl_5)); X += Y;
+    mpz_clear((__mpz_struct *)(e_acsl_5));
+    X += Y;
   }
   
   return;
@@ -695,9 +715,17 @@ void i(void)
 */
 void j(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; mpz_t e_acsl_4;
-    mpz_t e_acsl_5; mpz_t e_acsl_6; int e_acsl_7; mpz_t e_acsl_8;
-    int e_acsl_9; mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    mpz_t e_acsl_6;
+    int e_acsl_7;
+    mpz_t e_acsl_8;
+    int e_acsl_9;
+    mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)5);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_2));
@@ -719,11 +747,18 @@ void j(void)
     mpz_clear((__mpz_struct *)(e_acsl_4));
     mpz_clear((__mpz_struct *)(e_acsl_5));
     mpz_clear((__mpz_struct *)(e_acsl_6));
-    mpz_clear((__mpz_struct *)(e_acsl_8)); X = 3;
+    mpz_clear((__mpz_struct *)(e_acsl_8));
+    X = 3;
   }
   
-  { mpz_t e_acsl_10; mpz_t e_acsl_11; int e_acsl_12; mpz_t e_acsl_13;
-    mpz_t e_acsl_14; mpz_t e_acsl_15; int e_acsl_16;
+  {
+    mpz_t e_acsl_10;
+    mpz_t e_acsl_11;
+    int e_acsl_12;
+    mpz_t e_acsl_13;
+    mpz_t e_acsl_14;
+    mpz_t e_acsl_15;
+    int e_acsl_16;
     mpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)3);
     e_acsl_12 = mpz_cmp((__mpz_struct const *)(e_acsl_10),
@@ -741,7 +776,8 @@ void j(void)
     mpz_clear((__mpz_struct *)(e_acsl_11));
     mpz_clear((__mpz_struct *)(e_acsl_13));
     mpz_clear((__mpz_struct *)(e_acsl_14));
-    mpz_clear((__mpz_struct *)(e_acsl_15)); return;
+    mpz_clear((__mpz_struct *)(e_acsl_15));
+    return;
   }
   
 }
@@ -760,9 +796,18 @@ void j(void)
 */
 void k(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; int e_acsl_7;
-    mpz_t e_acsl_8; int e_acsl_9; int e_acsl_13; int e_acsl_17;
-    int e_acsl_18; int e_acsl_22; int e_acsl_28;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    int e_acsl_7;
+    mpz_t e_acsl_8;
+    int e_acsl_9;
+    int e_acsl_13;
+    int e_acsl_17;
+    int e_acsl_18;
+    int e_acsl_22;
+    int e_acsl_28;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -779,7 +824,8 @@ void k(void)
       e_acsl_7 = e_acsl_6 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_4));
       mpz_clear((__mpz_struct *)(e_acsl_5));
-    } if (! e_acsl_7) { e_acsl_fail((char *)"(X == 1 ==> X == 0)"); }
+    }
+    if (! e_acsl_7) { e_acsl_fail((char *)"(X == 1 ==> X == 0)"); }
     mpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)3);
     e_acsl_9 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_8));
@@ -794,7 +840,9 @@ void k(void)
       e_acsl_13 = e_acsl_12 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_10));
       mpz_clear((__mpz_struct *)(e_acsl_11));
-    } else { e_acsl_13 = 0; } if (! e_acsl_13) { e_acsl_17 = 1; }
+    }
+    else { e_acsl_13 = 0; }
+    if (! e_acsl_13) { e_acsl_17 = 1; }
     else {
       mpz_t e_acsl_14;
       mpz_t e_acsl_15;
@@ -822,7 +870,9 @@ void k(void)
       e_acsl_22 = e_acsl_21 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_19));
       mpz_clear((__mpz_struct *)(e_acsl_20));
-    } else { e_acsl_22 = 0; } if (! e_acsl_22) { e_acsl_28 = 1; }
+    }
+    else { e_acsl_22 = 0; }
+    if (! e_acsl_22) { e_acsl_28 = 1; }
     else {
       mpz_t e_acsl_23;
       mpz_t e_acsl_24;
@@ -845,9 +895,11 @@ void k(void)
     }
     if (! e_acsl_28) {
       e_acsl_fail((char *)"(X == 3 && Y == 2 ==> X+Y == 5)");
-    } mpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_1));
     mpz_clear((__mpz_struct *)(e_acsl_2));
-    mpz_clear((__mpz_struct *)(e_acsl_8)); X += Y;
+    mpz_clear((__mpz_struct *)(e_acsl_8));
+    X += Y;
   }
   
   return;
@@ -857,7 +909,10 @@ void k(void)
 int l(void)
 {
   /*@ assert Y ≡ 2; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)Y);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)2);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -867,14 +922,18 @@ int l(void)
     mpz_clear((__mpz_struct *)(e_acsl_2));
   }
   
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)X);
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)5);
     e_acsl_6 = mpz_cmp((__mpz_struct const *)(e_acsl_4),
                        (__mpz_struct const *)(e_acsl_5));
     if (! (e_acsl_6 == 0)) { e_acsl_fail((char *)"(X == 5)"); }
     mpz_clear((__mpz_struct *)(e_acsl_4));
-    mpz_clear((__mpz_struct *)(e_acsl_5)); return (X);
+    mpz_clear((__mpz_struct *)(e_acsl_5));
+    return (X);
   }
   
 }
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 8da06b547cf..cf297cbb4dc 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -39,13 +40,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -59,11 +67,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -227,12 +235,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -287,7 +295,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -312,7 +323,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -321,7 +334,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -335,8 +350,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -349,7 +368,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -367,7 +388,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -393,8 +416,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -420,7 +447,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -443,7 +473,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -452,7 +484,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -466,8 +500,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -480,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -498,7 +538,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -517,21 +559,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
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 401f3dbd3d6..61b031c5e7b 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -33,14 +34,6 @@ __inline static void __gmpz_abs(mpz_ptr __gmp_w, mpz_srcptr __gmp_u);
 extern void __gmpz_add(__mpz_struct * /*[1]*/ z1,
                        __mpz_struct const * /*[1]*/ z2,
                        __mpz_struct const * /*[1]*/ z3);
-/*@ requires \valid(z1);
-    requires \valid(z2);
-    requires \valid(z3);
-    assigns *z1; 
-*/
-extern void __gmpz_cdiv_q(__mpz_struct * /*[1]*/ z1,
-                          __mpz_struct const * /*[1]*/ z2,
-                          __mpz_struct const * /*[1]*/ z3);
 /*@ requires \valid(x);
     assigns *x;  */
 extern void __gmpz_clear(__mpz_struct * /*[1]*/ x);
@@ -51,7 +44,6 @@ extern int __gmpz_cmp(__mpz_struct const * /*[1]*/ z1,
                       __mpz_struct const * /*[1]*/ z2) __attribute__((
 __pure__));
 extern void __gmpz_com(mpz_ptr, mpz_srcptr);
-extern unsigned long __gmpz_fdiv_r_ui(mpz_ptr, mpz_srcptr, unsigned long);
 __inline static int __gmpz_fits_uint_p(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
 __inline static int __gmpz_fits_ulong_p(mpz_srcptr __gmp_z) __attribute__((
@@ -90,7 +82,7 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
@@ -104,7 +96,22 @@ __pure__));
 extern void __gmpz_sub(__mpz_struct * /*[1]*/ z1,
                        __mpz_struct const * /*[1]*/ z2,
                        __mpz_struct const * /*[1]*/ z3);
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_r(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -118,11 +125,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -286,12 +293,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -346,7 +353,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -371,7 +381,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -380,7 +392,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -394,8 +408,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -408,7 +426,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -426,7 +446,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -452,8 +474,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -479,7 +505,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -502,7 +531,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -511,7 +542,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -525,8 +558,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -539,7 +576,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -557,7 +596,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -576,21 +617,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -618,7 +662,11 @@ int main(void)
   x = -3;
   y = 2;
   /*@ assert -3 ≡ x; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; mpz_t e_acsl_3; int e_acsl_4;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    mpz_t e_acsl_3;
+    int e_acsl_4;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)3);
     __gmpz_init((__mpz_struct *)(e_acsl_2));
     __gmpz_neg((__mpz_struct *)(e_acsl_2),(__mpz_struct const *)(e_acsl_1));
@@ -632,7 +680,11 @@ int main(void)
   }
   
   /*@ assert x ≡ -3; */ ;
-  { mpz_t e_acsl_5; mpz_t e_acsl_6; mpz_t e_acsl_7; int e_acsl_8;
+  {
+    mpz_t e_acsl_5;
+    mpz_t e_acsl_6;
+    mpz_t e_acsl_7;
+    int e_acsl_8;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_6),(long)3);
     __gmpz_init((__mpz_struct *)(e_acsl_7));
@@ -646,7 +698,10 @@ int main(void)
   }
   
   /*@ assert 0 ≢ ~0; */ ;
-  { mpz_t e_acsl_9; mpz_t e_acsl_10; int e_acsl_11;
+  {
+    mpz_t e_acsl_9;
+    mpz_t e_acsl_10;
+    int e_acsl_11;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)0);
     __gmpz_init((__mpz_struct *)(e_acsl_10));
     __gmpz_com(e_acsl_10,(__mpz_struct const *)(e_acsl_9));
@@ -658,8 +713,13 @@ int main(void)
   }
   
   /*@ assert x+1 ≡ -2; */ ;
-  { mpz_t e_acsl_12; mpz_t e_acsl_13; mpz_t e_acsl_14; mpz_t e_acsl_15;
-    mpz_t e_acsl_16; int e_acsl_17;
+  {
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    mpz_t e_acsl_14;
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    int e_acsl_17;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_14));
@@ -679,8 +739,13 @@ int main(void)
   }
   
   /*@ assert x-1 ≡ -4; */ ;
-  { mpz_t e_acsl_18; mpz_t e_acsl_19; mpz_t e_acsl_20; mpz_t e_acsl_21;
-    mpz_t e_acsl_22; int e_acsl_23;
+  {
+    mpz_t e_acsl_18;
+    mpz_t e_acsl_19;
+    mpz_t e_acsl_20;
+    mpz_t e_acsl_21;
+    mpz_t e_acsl_22;
+    int e_acsl_23;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_19),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_20));
@@ -700,8 +765,13 @@ int main(void)
   }
   
   /*@ assert x*3 ≡ -9; */ ;
-  { mpz_t e_acsl_24; mpz_t e_acsl_25; mpz_t e_acsl_26; mpz_t e_acsl_27;
-    mpz_t e_acsl_28; int e_acsl_29;
+  {
+    mpz_t e_acsl_24;
+    mpz_t e_acsl_25;
+    mpz_t e_acsl_26;
+    mpz_t e_acsl_27;
+    mpz_t e_acsl_28;
+    int e_acsl_29;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_24),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_25),(long)3);
     __gmpz_init((__mpz_struct *)(e_acsl_26));
@@ -721,14 +791,21 @@ int main(void)
   }
   
   /*@ assert x/3 ≡ -1; */ ;
-  { mpz_t e_acsl_30; mpz_t e_acsl_31; int e_acsl_32; mpz_t e_acsl_33;
-    mpz_t e_acsl_34; mpz_t e_acsl_35; int e_acsl_36;
+  {
+    mpz_t e_acsl_30;
+    mpz_t e_acsl_31;
+    int e_acsl_32;
+    mpz_t e_acsl_33;
+    mpz_t e_acsl_34;
+    mpz_t e_acsl_35;
+    int e_acsl_36;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_30),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_31),(long)3);
     e_acsl_32 = (int)__gmpz_get_si((__mpz_struct const *)(e_acsl_31));
-    __gmpz_init((__mpz_struct *)(e_acsl_33)); /*@ assert 3 ≢ 0; */ ;
+    __gmpz_init((__mpz_struct *)(e_acsl_33));
+    /*@ assert 3 ≢ 0; */ ;
     if (e_acsl_32 == 0) { e_acsl_fail((char *)"(3 == 0)"); }
-    __gmpz_cdiv_q((__mpz_struct *)(e_acsl_33),
+    __gmpz_tdiv_q((__mpz_struct *)(e_acsl_33),
                   (__mpz_struct const *)(e_acsl_30),
                   (__mpz_struct const *)(e_acsl_31));
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_34),(long)1);
@@ -745,8 +822,13 @@ int main(void)
   }
   
   /*@ assert 0xfffffffffff/0xfffffffffff ≡ 1; */ ;
-  { mpz_t e_acsl_37; mpz_t e_acsl_38; int e_acsl_39; mpz_t e_acsl_40;
-    mpz_t e_acsl_41; int e_acsl_42;
+  {
+    mpz_t e_acsl_37;
+    mpz_t e_acsl_38;
+    int e_acsl_39;
+    mpz_t e_acsl_40;
+    mpz_t e_acsl_41;
+    int e_acsl_42;
     __gmpz_init_set_str((__mpz_struct *)(e_acsl_37),"17592186044415",10);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_38),(long)0);
     e_acsl_39 = __gmpz_cmp((__mpz_struct const *)(e_acsl_37),
@@ -754,7 +836,7 @@ int main(void)
     __gmpz_init((__mpz_struct *)(e_acsl_40));
     /*@ assert 0xfffffffffff ≢ 0; */ ;
     if (e_acsl_39 == 0) { e_acsl_fail((char *)"(0xfffffffffff == 0)"); }
-    __gmpz_cdiv_q((__mpz_struct *)(e_acsl_40),
+    __gmpz_tdiv_q((__mpz_struct *)(e_acsl_40),
                   (__mpz_struct const *)(e_acsl_37),
                   (__mpz_struct const *)(e_acsl_37));
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_41),(long)1);
@@ -762,22 +844,31 @@ int main(void)
                            (__mpz_struct const *)(e_acsl_41));
     if (! (e_acsl_42 == 0)) {
       e_acsl_fail((char *)"(0xfffffffffff/0xfffffffffff == 1)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_37));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_37));
     __gmpz_clear((__mpz_struct *)(e_acsl_38));
     __gmpz_clear((__mpz_struct *)(e_acsl_40));
     __gmpz_clear((__mpz_struct *)(e_acsl_41));
   }
   
   /*@ assert x%2 ≡ -1; */ ;
-  { mpz_t e_acsl_43; mpz_t e_acsl_44; int e_acsl_45; mpz_t e_acsl_46;
-    mpz_t e_acsl_47; mpz_t e_acsl_48; int e_acsl_49;
+  {
+    mpz_t e_acsl_43;
+    mpz_t e_acsl_44;
+    int e_acsl_45;
+    mpz_t e_acsl_46;
+    mpz_t e_acsl_47;
+    mpz_t e_acsl_48;
+    int e_acsl_49;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_43),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_44),(long)2);
     e_acsl_45 = (int)__gmpz_get_si((__mpz_struct const *)(e_acsl_44));
-    __gmpz_init((__mpz_struct *)(e_acsl_46)); /*@ assert 2 ≢ 0; */ ;
+    __gmpz_init((__mpz_struct *)(e_acsl_46));
+    /*@ assert 2 ≢ 0; */ ;
     if (e_acsl_45 == 0) { e_acsl_fail((char *)"(2 == 0)"); }
-    __gmpz_fdiv_r_ui(e_acsl_46,(__mpz_struct const *)(e_acsl_43),
-                     (unsigned long)(e_acsl_44));
+    __gmpz_tdiv_r((__mpz_struct *)(e_acsl_46),
+                  (__mpz_struct const *)(e_acsl_43),
+                  (__mpz_struct const *)(e_acsl_44));
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_47),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_48));
     __gmpz_neg((__mpz_struct *)(e_acsl_48),(__mpz_struct const *)(e_acsl_47));
@@ -792,10 +883,21 @@ int main(void)
   }
   
   /*@ assert ((x*2+(3+y))-4)+(x-y) ≡ -10; */ ;
-  { mpz_t e_acsl_50; mpz_t e_acsl_51; mpz_t e_acsl_52; mpz_t e_acsl_53;
-    mpz_t e_acsl_54; mpz_t e_acsl_55; mpz_t e_acsl_56; mpz_t e_acsl_57;
-    mpz_t e_acsl_58; mpz_t e_acsl_59; mpz_t e_acsl_60; mpz_t e_acsl_61;
-    mpz_t e_acsl_62; int e_acsl_63;
+  {
+    mpz_t e_acsl_50;
+    mpz_t e_acsl_51;
+    mpz_t e_acsl_52;
+    mpz_t e_acsl_53;
+    mpz_t e_acsl_54;
+    mpz_t e_acsl_55;
+    mpz_t e_acsl_56;
+    mpz_t e_acsl_57;
+    mpz_t e_acsl_58;
+    mpz_t e_acsl_59;
+    mpz_t e_acsl_60;
+    mpz_t e_acsl_61;
+    mpz_t e_acsl_62;
+    int e_acsl_63;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_50),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_51),(long)2);
     __gmpz_init((__mpz_struct *)(e_acsl_52));
@@ -826,7 +928,8 @@ int main(void)
                            (__mpz_struct const *)(e_acsl_62));
     if (! (e_acsl_63 == 0)) {
       e_acsl_fail((char *)"(((x*2+(3+y))-4)+(x-y) == -10)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_50));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_50));
     __gmpz_clear((__mpz_struct *)(e_acsl_51));
     __gmpz_clear((__mpz_struct *)(e_acsl_52));
     __gmpz_clear((__mpz_struct *)(e_acsl_53));
@@ -846,7 +949,11 @@ int main(void)
     e_acsl_fail((char *)"((0==1) == !(0==0))");
   }
   /*@ assert (0≤-1) ≡ (0>0); */ ;
-  { mpz_t e_acsl_64; mpz_t e_acsl_65; mpz_t e_acsl_66; int e_acsl_67;
+  {
+    mpz_t e_acsl_64;
+    mpz_t e_acsl_65;
+    mpz_t e_acsl_66;
+    int e_acsl_67;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_64),(long)0);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_65),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_66));
@@ -855,13 +962,18 @@ int main(void)
                            (__mpz_struct const *)(e_acsl_66));
     if (! ((e_acsl_67 <= 0) == (0 > 0))) {
       e_acsl_fail((char *)"((0<=-1) == (0>0))");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_64));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_64));
     __gmpz_clear((__mpz_struct *)(e_acsl_65));
     __gmpz_clear((__mpz_struct *)(e_acsl_66));
   }
   
   /*@ assert (0≥-1) ≡ (0≤0); */ ;
-  { mpz_t e_acsl_68; mpz_t e_acsl_69; mpz_t e_acsl_70; int e_acsl_71;
+  {
+    mpz_t e_acsl_68;
+    mpz_t e_acsl_69;
+    mpz_t e_acsl_70;
+    int e_acsl_71;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_68),(long)0);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_69),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_70));
@@ -870,7 +982,8 @@ int main(void)
                            (__mpz_struct const *)(e_acsl_70));
     if (! ((e_acsl_71 >= 0) == (0 <= 0))) {
       e_acsl_fail((char *)"((0>=-1) == (0<=0))");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_68));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_68));
     __gmpz_clear((__mpz_struct *)(e_acsl_69));
     __gmpz_clear((__mpz_struct *)(e_acsl_70));
   }
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 544404c6a2c..7e92ababf3a 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -39,13 +40,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -59,11 +67,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -227,12 +235,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -287,7 +295,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -312,7 +323,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -321,7 +334,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -335,8 +350,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -349,7 +368,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -367,7 +388,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -393,8 +416,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -420,7 +447,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -443,7 +473,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -452,7 +484,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -466,8 +500,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -480,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -498,7 +538,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -517,21 +559,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -556,10 +601,20 @@ int T2[4];
 int main(void)
 {
   int __retres;
-  { int i; i = 0; while (1) { if (! (i < 3)) { break; } T1[i] = i; i ++; } }
+  { int i;
+    i = 0;
+    while (1) {
+      if (! (i < 3)) { break; }
+      T1[i] = i;
+      i ++; } }
   
-  { int i_0; i_0 = 0;
-    while (1) { if (! (i_0 < 4)) { break; } T2[i_0] = 2 * i_0; i_0 ++; }
+  {
+    int i_0;
+    i_0 = 0;
+    while (1) {
+      if (! (i_0 < 4)) { break; }
+      T2[i_0] = 2 * i_0;
+      i_0 ++; }
   }
   
   /*@ assert T1[0] ≡ T2[0]; */ ;
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 33386ccc44a..87faeed832e 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -68,13 +69,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -88,11 +96,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -256,12 +264,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -316,7 +324,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -341,7 +352,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -350,7 +363,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -364,8 +379,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -378,7 +397,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -396,7 +417,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -422,8 +445,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -449,7 +476,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -472,7 +502,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -481,7 +513,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -495,8 +529,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -509,7 +547,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -527,7 +567,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -546,21 +588,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -589,7 +634,10 @@ int main(void)
   int e_acsl_14;
   x = 0;
   L: e_acsl_14 = x;
-  { mpz_t e_acsl_8; mpz_t e_acsl_9; mpz_t e_acsl_10;
+  {
+    mpz_t e_acsl_8;
+    mpz_t e_acsl_9;
+    mpz_t e_acsl_10;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_10));
@@ -604,7 +652,10 @@ int main(void)
   
   e_acsl_4 = x;
   /*@ assert x ≡ 0; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -617,7 +668,10 @@ int main(void)
   x = 1;
   x = 2;
   /*@ assert \at(x,L) ≡ 0; */ ;
-  { mpz_t e_acsl_5; mpz_t e_acsl_6; int e_acsl_7;
+  {
+    mpz_t e_acsl_5;
+    mpz_t e_acsl_6;
+    int e_acsl_7;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)e_acsl_4);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_6),(long)0);
     e_acsl_7 = __gmpz_cmp((__mpz_struct const *)(e_acsl_5),
@@ -628,7 +682,9 @@ int main(void)
   }
   
   /*@ assert \at(x+1,L) ≡ 1; */ ;
-  { mpz_t e_acsl_12; int e_acsl_13;
+  {
+    mpz_t e_acsl_12;
+    int e_acsl_13;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)1);
     e_acsl_13 = __gmpz_cmp((__mpz_struct const *)(e_acsl_11),
                            (__mpz_struct const *)(e_acsl_12));
@@ -637,7 +693,11 @@ int main(void)
   }
   
   /*@ assert \at(x,L)+1 ≡ 1; */ ;
-  { mpz_t e_acsl_15; mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18;
+  {
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_15),(long)e_acsl_14);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)1);
     __gmpz_init((__mpz_struct *)(e_acsl_17));
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 f9fcaa6fba4..44bce8d26f1 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -51,13 +52,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -71,11 +79,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -239,12 +247,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -299,7 +307,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -324,7 +335,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -333,7 +346,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -347,8 +362,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -361,7 +380,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -379,7 +400,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -405,8 +428,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -432,7 +459,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -455,7 +485,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -464,7 +496,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -478,8 +512,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -492,7 +530,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -510,7 +550,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -529,21 +571,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -571,21 +616,27 @@ int main(void)
   x = (long)0;
   y = 0;
   /*@ assert y ≢ (int)0xfffffffffffffff; */ ;
-  { mpz_t e_acsl_1; int e_acsl_2;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
     __gmpz_init_set_str((__mpz_struct *)(e_acsl_1),"1152921504606846975",10);
     e_acsl_2 = (int)__gmpz_get_si((__mpz_struct const *)(e_acsl_1));
     if (! (y != e_acsl_2)) {
       e_acsl_fail((char *)"(y != (int)0xfffffffffffffff)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
   }
   
   /*@ assert (unsigned int)y ≢ (unsigned int)0xfffffffffffffff; */ ;
-  { mpz_t e_acsl_3; unsigned int e_acsl_4;
+  {
+    mpz_t e_acsl_3;
+    unsigned int e_acsl_4;
     __gmpz_init_set_str((__mpz_struct *)(e_acsl_3),"1152921504606846975",10);
     e_acsl_4 = (unsigned int)__gmpz_get_ui((__mpz_struct const *)(e_acsl_3));
     if (! ((unsigned int)y != e_acsl_4)) {
       e_acsl_fail((char *)"((unsigned int)y != (unsigned int)0xfffffffffffffff)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_3));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_3));
   }
   
   __retres = 0;
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 b2245178ecb..4eea08ea3a2 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -56,13 +57,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -76,11 +84,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -244,12 +252,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -304,7 +312,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -329,7 +340,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -338,7 +351,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -352,8 +367,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -366,7 +385,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -384,7 +405,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -410,8 +433,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -437,7 +464,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -460,7 +490,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -469,7 +501,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -483,8 +517,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -497,7 +535,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -515,7 +555,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -534,21 +576,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -581,7 +626,10 @@ int main(void)
   /*@ assert y > x; */ ;
   if (! (y > x)) { e_acsl_fail((char *)"(y > x)"); }
   /*@ assert x ≤ 0; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -592,7 +640,10 @@ int main(void)
   }
   
   /*@ assert y ≥ 1; */ ;
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)y);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)1);
     e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_4),
@@ -621,7 +672,11 @@ int main(void)
   /*@ assert 1 ≢ 2; */ ;
   if (! (1 != 2)) { e_acsl_fail((char *)"(1 != 2)"); }
   /*@ assert -5 < 18; */ ;
-  { mpz_t e_acsl_7; mpz_t e_acsl_8; mpz_t e_acsl_9; int e_acsl_10;
+  {
+    mpz_t e_acsl_7;
+    mpz_t e_acsl_8;
+    mpz_t e_acsl_9;
+    int e_acsl_10;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)5);
     __gmpz_init((__mpz_struct *)(e_acsl_8));
     __gmpz_neg((__mpz_struct *)(e_acsl_8),(__mpz_struct const *)(e_acsl_7));
@@ -635,7 +690,11 @@ int main(void)
   }
   
   /*@ assert 32 > -3; */ ;
-  { mpz_t e_acsl_11; mpz_t e_acsl_12; mpz_t e_acsl_13; int e_acsl_14;
+  {
+    mpz_t e_acsl_11;
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    int e_acsl_14;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)32);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)3);
     __gmpz_init((__mpz_struct *)(e_acsl_13));
@@ -649,7 +708,11 @@ int main(void)
   }
   
   /*@ assert -12 ≤ 13; */ ;
-  { mpz_t e_acsl_15; mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18;
+  {
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_15),(long)12);
     __gmpz_init((__mpz_struct *)(e_acsl_16));
     __gmpz_neg((__mpz_struct *)(e_acsl_16),(__mpz_struct const *)(e_acsl_15));
@@ -663,7 +726,11 @@ int main(void)
   }
   
   /*@ assert 123 ≥ -12; */ ;
-  { mpz_t e_acsl_19; mpz_t e_acsl_20; mpz_t e_acsl_21; int e_acsl_22;
+  {
+    mpz_t e_acsl_19;
+    mpz_t e_acsl_20;
+    mpz_t e_acsl_21;
+    int e_acsl_22;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_19),(long)123);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_20),(long)12);
     __gmpz_init((__mpz_struct *)(e_acsl_21));
@@ -677,7 +744,10 @@ int main(void)
   }
   
   /*@ assert -0xff ≡ -0xff; */ ;
-  { mpz_t e_acsl_23; mpz_t e_acsl_24; int e_acsl_25;
+  {
+    mpz_t e_acsl_23;
+    mpz_t e_acsl_24;
+    int e_acsl_25;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_23),(long)0xff);
     __gmpz_init((__mpz_struct *)(e_acsl_24));
     __gmpz_neg((__mpz_struct *)(e_acsl_24),(__mpz_struct const *)(e_acsl_23));
@@ -689,7 +759,11 @@ int main(void)
   }
   
   /*@ assert 1 ≢ -2; */ ;
-  { mpz_t e_acsl_26; mpz_t e_acsl_27; mpz_t e_acsl_28; int e_acsl_29;
+  {
+    mpz_t e_acsl_26;
+    mpz_t e_acsl_27;
+    mpz_t e_acsl_28;
+    int e_acsl_29;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_26),(long)1);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)2);
     __gmpz_init((__mpz_struct *)(e_acsl_28));
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 896e8e07c9c..3aa800231de 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -39,13 +40,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -59,11 +67,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -227,12 +235,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -287,7 +295,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -312,7 +323,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -321,7 +334,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -335,8 +350,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -349,7 +368,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -367,7 +388,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -393,8 +416,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -420,7 +447,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -443,7 +473,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -452,7 +484,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -466,8 +500,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -480,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -498,7 +538,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -517,21 +559,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -556,7 +601,9 @@ int main(void)
   int __retres;
   int x;
   x = 0;
-  if (x) { /*@ assert \false; */ ; e_acsl_fail((char *)"(\\false)"); }
+  if (x) {
+    /*@ assert \false; */ ;
+    e_acsl_fail((char *)"(\\false)"); }
   __retres = 0;
   return (__retres);
 }
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 174fb3acbe0..ddfe3af68cf 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -64,13 +65,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -84,11 +92,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -252,12 +260,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -312,7 +320,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -337,7 +348,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -346,7 +359,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -360,8 +375,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -374,7 +393,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -392,7 +413,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -418,8 +441,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -445,7 +472,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -468,7 +498,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -477,7 +509,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -491,8 +525,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -505,7 +543,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -523,7 +563,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -542,21 +584,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -582,14 +627,18 @@ int Y = 2;
 void f(void)
 {
   X = 1;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_2));
     if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(X == 1)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_1));
-    __gmpz_clear((__mpz_struct *)(e_acsl_2)); return;
+    __gmpz_clear((__mpz_struct *)(e_acsl_2));
+    return;
   }
   
 }
@@ -599,8 +648,13 @@ void f(void)
 void g(void)
 {
   X = 2;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; mpz_t e_acsl_4;
-    int e_acsl_5; __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    mpz_t e_acsl_4;
+    int e_acsl_5;
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)2);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_2));
@@ -611,7 +665,8 @@ void g(void)
     if (! (e_acsl_5 == 0)) { e_acsl_fail((char *)"(Y == 2)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_1));
     __gmpz_clear((__mpz_struct *)(e_acsl_2));
-    __gmpz_clear((__mpz_struct *)(e_acsl_4)); return;
+    __gmpz_clear((__mpz_struct *)(e_acsl_4));
+    return;
   }
   
 }
@@ -619,14 +674,18 @@ void g(void)
 /*@ requires X ≡ 2;  */
 void h(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)2);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_2));
     if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(X == 2)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_1));
-    __gmpz_clear((__mpz_struct *)(e_acsl_2)); X ++;
+    __gmpz_clear((__mpz_struct *)(e_acsl_2));
+    X ++;
   }
   
   return;
@@ -636,8 +695,13 @@ void h(void)
     requires Y ≡ 2;  */
 void i(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; mpz_t e_acsl_4;
-    mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)3);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -651,7 +715,8 @@ void i(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_1));
     __gmpz_clear((__mpz_struct *)(e_acsl_2));
     __gmpz_clear((__mpz_struct *)(e_acsl_4));
-    __gmpz_clear((__mpz_struct *)(e_acsl_5)); X += Y;
+    __gmpz_clear((__mpz_struct *)(e_acsl_5));
+    X += Y;
   }
   
   return;
@@ -670,9 +735,17 @@ void i(void)
 */
 void j(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; mpz_t e_acsl_4;
-    mpz_t e_acsl_5; mpz_t e_acsl_6; int e_acsl_7; mpz_t e_acsl_8;
-    int e_acsl_9; __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    mpz_t e_acsl_6;
+    int e_acsl_7;
+    mpz_t e_acsl_8;
+    int e_acsl_9;
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)5);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_2));
@@ -694,11 +767,18 @@ void j(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_4));
     __gmpz_clear((__mpz_struct *)(e_acsl_5));
     __gmpz_clear((__mpz_struct *)(e_acsl_6));
-    __gmpz_clear((__mpz_struct *)(e_acsl_8)); X = 3;
+    __gmpz_clear((__mpz_struct *)(e_acsl_8));
+    X = 3;
   }
   
-  { mpz_t e_acsl_10; mpz_t e_acsl_11; int e_acsl_12; mpz_t e_acsl_13;
-    mpz_t e_acsl_14; mpz_t e_acsl_15; int e_acsl_16;
+  {
+    mpz_t e_acsl_10;
+    mpz_t e_acsl_11;
+    int e_acsl_12;
+    mpz_t e_acsl_13;
+    mpz_t e_acsl_14;
+    mpz_t e_acsl_15;
+    int e_acsl_16;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)3);
     e_acsl_12 = __gmpz_cmp((__mpz_struct const *)(e_acsl_10),
@@ -716,7 +796,8 @@ void j(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_11));
     __gmpz_clear((__mpz_struct *)(e_acsl_13));
     __gmpz_clear((__mpz_struct *)(e_acsl_14));
-    __gmpz_clear((__mpz_struct *)(e_acsl_15)); return;
+    __gmpz_clear((__mpz_struct *)(e_acsl_15));
+    return;
   }
   
 }
@@ -735,9 +816,18 @@ void j(void)
 */
 void k(void)
 {
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; int e_acsl_7;
-    mpz_t e_acsl_8; int e_acsl_9; int e_acsl_13; int e_acsl_17;
-    int e_acsl_18; int e_acsl_22; int e_acsl_28;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    int e_acsl_7;
+    mpz_t e_acsl_8;
+    int e_acsl_9;
+    int e_acsl_13;
+    int e_acsl_17;
+    int e_acsl_18;
+    int e_acsl_22;
+    int e_acsl_28;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -754,7 +844,8 @@ void k(void)
       e_acsl_7 = e_acsl_6 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_4));
       __gmpz_clear((__mpz_struct *)(e_acsl_5));
-    } if (! e_acsl_7) { e_acsl_fail((char *)"(X == 1 ==> X == 0)"); }
+    }
+    if (! e_acsl_7) { e_acsl_fail((char *)"(X == 1 ==> X == 0)"); }
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)3);
     e_acsl_9 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_8));
@@ -769,7 +860,9 @@ void k(void)
       e_acsl_13 = e_acsl_12 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_10));
       __gmpz_clear((__mpz_struct *)(e_acsl_11));
-    } else { e_acsl_13 = 0; } if (! e_acsl_13) { e_acsl_17 = 1; }
+    }
+    else { e_acsl_13 = 0; }
+    if (! e_acsl_13) { e_acsl_17 = 1; }
     else {
       mpz_t e_acsl_14;
       mpz_t e_acsl_15;
@@ -797,7 +890,9 @@ void k(void)
       e_acsl_22 = e_acsl_21 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_19));
       __gmpz_clear((__mpz_struct *)(e_acsl_20));
-    } else { e_acsl_22 = 0; } if (! e_acsl_22) { e_acsl_28 = 1; }
+    }
+    else { e_acsl_22 = 0; }
+    if (! e_acsl_22) { e_acsl_28 = 1; }
     else {
       mpz_t e_acsl_23;
       mpz_t e_acsl_24;
@@ -821,9 +916,11 @@ void k(void)
     }
     if (! e_acsl_28) {
       e_acsl_fail((char *)"(X == 3 && Y == 2 ==> X+Y == 5)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
     __gmpz_clear((__mpz_struct *)(e_acsl_2));
-    __gmpz_clear((__mpz_struct *)(e_acsl_8)); X += Y;
+    __gmpz_clear((__mpz_struct *)(e_acsl_8));
+    X += Y;
   }
   
   return;
@@ -833,7 +930,10 @@ void k(void)
 int l(void)
 {
   /*@ assert Y ≡ 2; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)Y);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)2);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -843,14 +943,18 @@ int l(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_2));
   }
   
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)X);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)5);
     e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_4),
                           (__mpz_struct const *)(e_acsl_5));
     if (! (e_acsl_6 == 0)) { e_acsl_fail((char *)"(X == 5)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_4));
-    __gmpz_clear((__mpz_struct *)(e_acsl_5)); return (X);
+    __gmpz_clear((__mpz_struct *)(e_acsl_5));
+    return (X);
   }
   
 }
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 c316f444231..497cf8ae7a3 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -53,13 +54,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -73,11 +81,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -241,12 +249,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -301,7 +309,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -326,7 +337,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -335,7 +348,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -349,8 +364,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -363,7 +382,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -381,7 +402,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -407,8 +430,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -434,7 +461,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -457,7 +487,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -466,7 +498,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -480,8 +514,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -494,7 +532,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -512,7 +552,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -531,21 +573,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -575,13 +620,16 @@ int main(void)
   /*@ assert 0 ≢ 1; */ ;
   if (! (0 != 1)) { e_acsl_fail((char *)"(0 != 1)"); }
   /*@ assert 1152921504606846975 ≡ 0xfffffffffffffff; */ ;
-  { mpz_t e_acsl_1; int e_acsl_2;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
     __gmpz_init_set_str((__mpz_struct *)(e_acsl_1),"1152921504606846975",10);
     e_acsl_2 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_1));
     if (! (e_acsl_2 == 0)) {
       e_acsl_fail((char *)"(1152921504606846975 == 0xfffffffffffffff)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
   }
   
   __retres = 0;
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 c074c5a330d..c920ee7bf26 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -53,13 +54,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -73,11 +81,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -241,12 +249,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -301,7 +309,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -326,7 +337,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -335,7 +348,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -349,8 +364,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -363,7 +382,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -381,7 +402,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -407,8 +430,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -434,7 +461,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -457,7 +487,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -466,7 +498,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -480,8 +514,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -494,7 +532,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -512,7 +552,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -531,21 +573,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -573,7 +618,11 @@ int main(void)
   x = 0;
   y = 1;
   /*@ assert x ≡ 0 ∧ y ≡ 1; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; int e_acsl_7;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    int e_acsl_7;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -589,14 +638,19 @@ int main(void)
       e_acsl_7 = e_acsl_6 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_4));
       __gmpz_clear((__mpz_struct *)(e_acsl_5));
-    } else { e_acsl_7 = 0; }
+    }
+    else { e_acsl_7 = 0; }
     if (! e_acsl_7) { e_acsl_fail((char *)"(x == 0 && y == 1)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_1));
     __gmpz_clear((__mpz_struct *)(e_acsl_2));
   }
   
   /*@ assert ¬(x ≢ 0 ∧ y ≡ 1/0); */ ;
-  { mpz_t e_acsl_8; mpz_t e_acsl_9; int e_acsl_10; int e_acsl_15;
+  {
+    mpz_t e_acsl_8;
+    mpz_t e_acsl_9;
+    int e_acsl_10;
+    int e_acsl_15;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)0);
     e_acsl_10 = __gmpz_cmp((__mpz_struct const *)(e_acsl_8),
@@ -616,14 +670,19 @@ int main(void)
       e_acsl_15 = e_acsl_14 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_11));
       __gmpz_clear((__mpz_struct *)(e_acsl_13));
-    } else { e_acsl_15 = 0; }
+    }
+    else { e_acsl_15 = 0; }
     if (! (! e_acsl_15)) { e_acsl_fail((char *)"(!(x != 0 && y == 1/0))"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_8));
     __gmpz_clear((__mpz_struct *)(e_acsl_9));
   }
   
   /*@ assert y ≡ 1 ∨ x ≡ 1; */ ;
-  { mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18; int e_acsl_22;
+  {
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
+    int e_acsl_22;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)y);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_17),(long)1);
     e_acsl_18 = __gmpz_cmp((__mpz_struct const *)(e_acsl_16),
@@ -640,13 +699,18 @@ int main(void)
       e_acsl_22 = e_acsl_21 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_19));
       __gmpz_clear((__mpz_struct *)(e_acsl_20));
-    } if (! e_acsl_22) { e_acsl_fail((char *)"(y == 1 || x == 1)"); }
+    }
+    if (! e_acsl_22) { e_acsl_fail((char *)"(y == 1 || x == 1)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_16));
     __gmpz_clear((__mpz_struct *)(e_acsl_17));
   }
   
   /*@ assert x ≡ 0 ∨ y ≡ 1/0; */ ;
-  { mpz_t e_acsl_23; mpz_t e_acsl_24; int e_acsl_25; int e_acsl_30;
+  {
+    mpz_t e_acsl_23;
+    mpz_t e_acsl_24;
+    int e_acsl_25;
+    int e_acsl_30;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_23),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_24),(long)0);
     e_acsl_25 = __gmpz_cmp((__mpz_struct const *)(e_acsl_23),
@@ -667,13 +731,18 @@ int main(void)
       e_acsl_30 = e_acsl_29 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_26));
       __gmpz_clear((__mpz_struct *)(e_acsl_28));
-    } if (! e_acsl_30) { e_acsl_fail((char *)"(x == 0 || y == 1/0)"); }
+    }
+    if (! e_acsl_30) { e_acsl_fail((char *)"(x == 0 || y == 1/0)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_23));
     __gmpz_clear((__mpz_struct *)(e_acsl_24));
   }
   
   /*@ assert x ≡ 0 ⇒ y ≡ 1; */ ;
-  { mpz_t e_acsl_31; mpz_t e_acsl_32; int e_acsl_33; int e_acsl_37;
+  {
+    mpz_t e_acsl_31;
+    mpz_t e_acsl_32;
+    int e_acsl_33;
+    int e_acsl_37;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_31),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_32),(long)0);
     e_acsl_33 = __gmpz_cmp((__mpz_struct const *)(e_acsl_31),
@@ -690,13 +759,18 @@ int main(void)
       e_acsl_37 = e_acsl_36 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_34));
       __gmpz_clear((__mpz_struct *)(e_acsl_35));
-    } if (! e_acsl_37) { e_acsl_fail((char *)"(x == 0 ==> y == 1)"); }
+    }
+    if (! e_acsl_37) { e_acsl_fail((char *)"(x == 0 ==> y == 1)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_31));
     __gmpz_clear((__mpz_struct *)(e_acsl_32));
   }
   
   /*@ assert x ≡ 1 ⇒ y ≡ 1/0; */ ;
-  { mpz_t e_acsl_38; mpz_t e_acsl_39; int e_acsl_40; int e_acsl_45;
+  {
+    mpz_t e_acsl_38;
+    mpz_t e_acsl_39;
+    int e_acsl_40;
+    int e_acsl_45;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_38),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_39),(long)1);
     e_acsl_40 = __gmpz_cmp((__mpz_struct const *)(e_acsl_38),
@@ -717,7 +791,8 @@ int main(void)
       e_acsl_45 = e_acsl_44 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_41));
       __gmpz_clear((__mpz_struct *)(e_acsl_43));
-    } if (! e_acsl_45) { e_acsl_fail((char *)"(x == 1 ==> y == 1/0)"); }
+    }
+    if (! e_acsl_45) { e_acsl_fail((char *)"(x == 1 ==> y == 1/0)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_38));
     __gmpz_clear((__mpz_struct *)(e_acsl_39));
   }
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 1b21e2c911f..81d704652fd 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -53,13 +54,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -73,11 +81,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -241,12 +249,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -301,7 +309,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -326,7 +337,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -335,7 +348,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -349,8 +364,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -363,7 +382,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -381,7 +402,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -407,8 +430,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -434,7 +461,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -457,7 +487,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -466,7 +498,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -480,8 +514,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -494,7 +532,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -512,7 +552,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -531,21 +573,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -576,8 +621,14 @@ int main(void)
   if (! (x < y)) { e_acsl_fail((char *)"(x < y)"); }
   /*@ requires x ≡ 0;
       ensures x ≥ 1; */
-  { mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18;
-    { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
+    {
+      mpz_t e_acsl_1;
+      mpz_t e_acsl_2;
+      int e_acsl_3;
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
       e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -585,21 +636,31 @@ int main(void)
       if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(x == 0)"); }
       __gmpz_clear((__mpz_struct *)(e_acsl_1));
       __gmpz_clear((__mpz_struct *)(e_acsl_2));
-      if (x) { /*@ assert \false; */ ; e_acsl_fail((char *)"(\\false)"); }
+      if (x) {
+        /*@ assert \false; */ ;
+        e_acsl_fail((char *)"(\\false)"); }
       else {
         /*@ requires x ≡ 0;
             ensures x ≡ 1; */
-        { mpz_t e_acsl_7; mpz_t e_acsl_8; int e_acsl_9;
-          { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+        {
+          mpz_t e_acsl_7;
+          mpz_t e_acsl_8;
+          int e_acsl_9;
+          {
+            mpz_t e_acsl_4;
+            mpz_t e_acsl_5;
+            int e_acsl_6;
             __gmpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)x);
             __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)0);
             e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_4),
                                   (__mpz_struct const *)(e_acsl_5));
             if (! (e_acsl_6 == 0)) { e_acsl_fail((char *)"(x == 0)"); }
             __gmpz_clear((__mpz_struct *)(e_acsl_4));
-            __gmpz_clear((__mpz_struct *)(e_acsl_5)); x ++;
+            __gmpz_clear((__mpz_struct *)(e_acsl_5));
+            x ++;
           }
-           __gmpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)x);
+          
+          __gmpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)x);
           __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)1);
           e_acsl_9 = __gmpz_cmp((__mpz_struct const *)(e_acsl_7),
                                 (__mpz_struct const *)(e_acsl_8));
@@ -611,17 +672,25 @@ int main(void)
         if (x) {
           /*@ requires x ≡ 1;
               ensures x ≡ 2; */
-          { mpz_t e_acsl_13; mpz_t e_acsl_14; int e_acsl_15;
-            { mpz_t e_acsl_10; mpz_t e_acsl_11; int e_acsl_12;
+          {
+            mpz_t e_acsl_13;
+            mpz_t e_acsl_14;
+            int e_acsl_15;
+            {
+              mpz_t e_acsl_10;
+              mpz_t e_acsl_11;
+              int e_acsl_12;
               __gmpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)x);
               __gmpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)1);
               e_acsl_12 = __gmpz_cmp((__mpz_struct const *)(e_acsl_10),
                                      (__mpz_struct const *)(e_acsl_11));
               if (! (e_acsl_12 == 0)) { e_acsl_fail((char *)"(x == 1)"); }
               __gmpz_clear((__mpz_struct *)(e_acsl_10));
-              __gmpz_clear((__mpz_struct *)(e_acsl_11)); x ++;
+              __gmpz_clear((__mpz_struct *)(e_acsl_11));
+              x ++;
             }
-             __gmpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)x);
+            
+            __gmpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)x);
             __gmpz_init_set_si((__mpz_struct *)(e_acsl_14),(long)2);
             e_acsl_15 = __gmpz_cmp((__mpz_struct const *)(e_acsl_13),
                                    (__mpz_struct const *)(e_acsl_14));
@@ -631,10 +700,13 @@ int main(void)
           }
           
         }
-        else { /*@ assert \false; */ ; e_acsl_fail((char *)"(\\false)"); }
+        else {
+          /*@ assert \false; */ ;
+          e_acsl_fail((char *)"(\\false)"); }
       }
     }
-     __gmpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)x);
+    
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_17),(long)1);
     e_acsl_18 = __gmpz_cmp((__mpz_struct const *)(e_acsl_16),
                            (__mpz_struct const *)(e_acsl_17));
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 6bc72d79e79..87c89b1c2cd 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -39,13 +40,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -59,11 +67,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -227,12 +235,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -287,7 +295,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -312,7 +323,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -321,7 +334,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -335,8 +350,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -349,7 +368,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -367,7 +388,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -393,8 +416,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -420,7 +447,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -443,7 +473,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -452,7 +484,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -466,8 +500,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -480,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -498,7 +538,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -517,21 +559,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
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 3d53d3b5582..85497dcc151 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -39,13 +40,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -59,11 +67,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -227,12 +235,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -287,7 +295,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -312,7 +323,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -321,7 +334,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -335,8 +350,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -349,7 +368,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -367,7 +388,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -393,8 +416,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -420,7 +447,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -443,7 +473,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -452,7 +484,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -466,8 +500,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -480,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -498,7 +538,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -517,21 +559,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
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 8273cbfd8f7..6b78bf90783 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -57,13 +58,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -77,11 +85,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -245,12 +253,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -305,7 +313,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -330,7 +341,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -339,7 +352,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -353,8 +368,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -367,7 +386,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -385,7 +406,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -411,8 +434,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -438,7 +465,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -461,7 +491,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -470,7 +502,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -484,8 +518,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -498,7 +536,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -516,7 +556,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -535,21 +577,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -576,7 +621,9 @@ int main(void)
   if (! ("toto" != "titi")) { e_acsl_fail((char *)"(\"toto\" != \"titi\")");
   }
   /*@ assert 'c' ≡ 'c'; */ ;
-  { mpz_t e_acsl_1; int e_acsl_2;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)'c');
     e_acsl_2 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_1));
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 efbe0beb80d..6ab9d106e25 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -33,14 +34,6 @@ __inline static void __gmpz_abs(mpz_ptr __gmp_w, mpz_srcptr __gmp_u);
 extern void __gmpz_add(__mpz_struct * /*[1]*/ z1,
                        __mpz_struct const * /*[1]*/ z2,
                        __mpz_struct const * /*[1]*/ z3);
-/*@ requires \valid(z1);
-    requires \valid(z2);
-    requires \valid(z3);
-    assigns *z1; 
-*/
-extern void __gmpz_cdiv_q(__mpz_struct * /*[1]*/ z1,
-                          __mpz_struct const * /*[1]*/ z2,
-                          __mpz_struct const * /*[1]*/ z3);
 /*@ requires \valid(x);
     assigns *x;  */
 extern void __gmpz_clear(__mpz_struct * /*[1]*/ x);
@@ -84,7 +77,7 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
@@ -98,7 +91,14 @@ __pure__));
 extern void __gmpz_sub(__mpz_struct * /*[1]*/ z1,
                        __mpz_struct const * /*[1]*/ z2,
                        __mpz_struct const * /*[1]*/ z3);
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -112,11 +112,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -280,12 +280,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -340,7 +340,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -365,7 +368,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -374,7 +379,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -388,8 +395,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -402,7 +413,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -420,7 +433,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -446,8 +461,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -473,7 +492,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -496,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -505,7 +529,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -519,8 +545,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -533,7 +563,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -551,7 +583,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -570,21 +604,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -616,7 +653,10 @@ int main(void)
   t[2] = 4;
   p = & x;
   /*@ assert *p ≡ 1; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)*p);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -627,7 +667,10 @@ int main(void)
   }
   
   /*@ assert t[0] ≡ 2; */ ;
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)t[0]);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)2);
     e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_4),
@@ -638,7 +681,10 @@ int main(void)
   }
   
   /*@ assert t[2] ≡ 4; */ ;
-  { mpz_t e_acsl_7; mpz_t e_acsl_8; int e_acsl_9;
+  {
+    mpz_t e_acsl_7;
+    mpz_t e_acsl_8;
+    int e_acsl_9;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)t[2]);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)4);
     e_acsl_9 = __gmpz_cmp((__mpz_struct const *)(e_acsl_7),
@@ -649,9 +695,18 @@ int main(void)
   }
   
   /*@ assert t[(2*sizeof(int))/sizeof((int)0x0)] ≡ 4; */ ;
-  { mpz_t e_acsl_10; mpz_t e_acsl_11; mpz_t e_acsl_12; mpz_t e_acsl_13;
-    mpz_t e_acsl_14; int e_acsl_15; mpz_t e_acsl_16; int e_acsl_17;
-    mpz_t e_acsl_18; mpz_t e_acsl_19; int e_acsl_20;
+  {
+    mpz_t e_acsl_10;
+    mpz_t e_acsl_11;
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    mpz_t e_acsl_14;
+    int e_acsl_15;
+    mpz_t e_acsl_16;
+    int e_acsl_17;
+    mpz_t e_acsl_18;
+    mpz_t e_acsl_19;
+    int e_acsl_20;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)2);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)4);
     __gmpz_init((__mpz_struct *)(e_acsl_12));
@@ -664,7 +719,7 @@ int main(void)
     __gmpz_init((__mpz_struct *)(e_acsl_16));
     /*@ assert sizeof((int)0x0) ≢ 0; */ ;
     if (e_acsl_15 == 0) { e_acsl_fail((char *)"(sizeof((int)0x0) == 0)"); }
-    __gmpz_cdiv_q((__mpz_struct *)(e_acsl_16),
+    __gmpz_tdiv_q((__mpz_struct *)(e_acsl_16),
                   (__mpz_struct const *)(e_acsl_12),
                   (__mpz_struct const *)(e_acsl_13));
     e_acsl_17 = (int)__gmpz_get_si((__mpz_struct const *)(e_acsl_16));
@@ -674,7 +729,8 @@ int main(void)
                            (__mpz_struct const *)(e_acsl_19));
     if (! (e_acsl_20 == 0)) {
       e_acsl_fail((char *)"(t[(2*sizeof(int))/sizeof((int)0x0)] == 4)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_10));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_10));
     __gmpz_clear((__mpz_struct *)(e_acsl_11));
     __gmpz_clear((__mpz_struct *)(e_acsl_12));
     __gmpz_clear((__mpz_struct *)(e_acsl_13));
@@ -684,11 +740,17 @@ int main(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_19));
   }
   
-  { int i; i = 0;
+  {
+    int i;
+    i = 0;
     while (1) {
       if (! (i < 2)) { break; }
       /*@ assert t[i] ≡ i+2; */ ;
-      { mpz_t e_acsl_21; mpz_t e_acsl_22; mpz_t e_acsl_23; mpz_t e_acsl_24;
+      {
+        mpz_t e_acsl_21;
+        mpz_t e_acsl_22;
+        mpz_t e_acsl_23;
+        mpz_t e_acsl_24;
         int e_acsl_25;
         __gmpz_init_set_si((__mpz_struct *)(e_acsl_21),(long)t[i]);
         __gmpz_init_set_si((__mpz_struct *)(e_acsl_22),(long)i);
@@ -707,8 +769,15 @@ int main(void)
       }
       
       /*@ assert t[2-i] ≡ 4-i; */ ;
-      { mpz_t e_acsl_26; mpz_t e_acsl_27; mpz_t e_acsl_28; int e_acsl_29;
-        mpz_t e_acsl_30; mpz_t e_acsl_31; mpz_t e_acsl_32; int e_acsl_33;
+      {
+        mpz_t e_acsl_26;
+        mpz_t e_acsl_27;
+        mpz_t e_acsl_28;
+        int e_acsl_29;
+        mpz_t e_acsl_30;
+        mpz_t e_acsl_31;
+        mpz_t e_acsl_32;
+        int e_acsl_33;
         __gmpz_init_set_si((__mpz_struct *)(e_acsl_26),(long)2);
         __gmpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)i);
         __gmpz_init((__mpz_struct *)(e_acsl_28));
@@ -734,7 +803,11 @@ int main(void)
       }
       
       /*@ assert *(&t[2]-i) ≡ 4-i; */ ;
-      { mpz_t e_acsl_34; mpz_t e_acsl_35; mpz_t e_acsl_36; mpz_t e_acsl_37;
+      {
+        mpz_t e_acsl_34;
+        mpz_t e_acsl_35;
+        mpz_t e_acsl_36;
+        mpz_t e_acsl_37;
         int e_acsl_38;
         __gmpz_init_set_si((__mpz_struct *)(e_acsl_34),(long)*(& t[2] - i));
         __gmpz_init_set_si((__mpz_struct *)(e_acsl_35),(long)4);
@@ -746,7 +819,8 @@ int main(void)
         e_acsl_38 = __gmpz_cmp((__mpz_struct const *)(e_acsl_34),
                                (__mpz_struct const *)(e_acsl_37));
         if (! (e_acsl_38 == 0)) { e_acsl_fail((char *)"(*(&t[2]-i) == 4-i)");
-        } __gmpz_clear((__mpz_struct *)(e_acsl_34));
+        }
+        __gmpz_clear((__mpz_struct *)(e_acsl_34));
         __gmpz_clear((__mpz_struct *)(e_acsl_35));
         __gmpz_clear((__mpz_struct *)(e_acsl_36));
         __gmpz_clear((__mpz_struct *)(e_acsl_37));
@@ -759,7 +833,10 @@ int main(void)
   p = & t[2];
   t[2] = 5;
   /*@ assert *p ≡ 5; */ ;
-  { mpz_t e_acsl_39; mpz_t e_acsl_40; int e_acsl_41;
+  {
+    mpz_t e_acsl_39;
+    mpz_t e_acsl_40;
+    int e_acsl_41;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_39),(long)*p);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_40),(long)5);
     e_acsl_41 = __gmpz_cmp((__mpz_struct const *)(e_acsl_39),
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 34656d1f40b..c77c7327b72 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -53,13 +54,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -73,11 +81,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -241,12 +249,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -301,7 +309,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -326,7 +337,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -335,7 +348,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -349,8 +364,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -363,7 +382,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -381,7 +402,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -407,8 +430,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -434,7 +461,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -457,7 +487,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -466,7 +498,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -480,8 +514,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -494,7 +532,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -512,7 +552,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -531,21 +573,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -565,35 +610,45 @@ void e_acsl_fail(char *msg)
   return;
 }
 
-void main(void)
+int main(void)
 {
+  int __retres;
   int x;
   x = 0;
   /*@ assert sizeof(int) ≡ sizeof(x); */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)4);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)4);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
                           (__mpz_struct const *)(e_acsl_2));
     if (! (e_acsl_3 == 0)) {
       e_acsl_fail((char *)"(sizeof(int) == sizeof(x))");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_1));
     __gmpz_clear((__mpz_struct *)(e_acsl_2));
   }
   
   /*@ assert sizeof("totototototo") ≡ sizeof(char *); */ ;
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)4);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)4);
     e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_4),
                           (__mpz_struct const *)(e_acsl_5));
     if (! (e_acsl_6 == 0)) {
       e_acsl_fail((char *)"(sizeof(\"totototototo\") == sizeof(char *))");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_4));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_4));
     __gmpz_clear((__mpz_struct *)(e_acsl_5));
   }
   
-  return;
+  __retres = 0;
+  return (__retres);
 }
 
 
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 543035273c4..bdefe538f1e 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -64,13 +65,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -84,11 +92,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -252,12 +260,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -312,7 +320,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -337,7 +348,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -346,7 +359,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -360,8 +375,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -374,7 +393,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -392,7 +413,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -418,8 +441,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -445,7 +472,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -468,7 +498,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -477,7 +509,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -491,8 +525,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -505,7 +543,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -523,7 +563,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -542,21 +584,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
@@ -584,7 +629,11 @@ int main(void)
   x = 0;
   y = 2;
   /*@ ensures x ≡ 1; */
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; x = 1;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    x = 1;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = __gmpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -596,8 +645,13 @@ int main(void)
   
   /*@ ensures x ≡ 2;
       ensures y ≡ 2; */
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6; mpz_t e_acsl_7;
-    int e_acsl_8; x = 2;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
+    mpz_t e_acsl_7;
+    int e_acsl_8;
+    x = 2;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)2);
     e_acsl_6 = __gmpz_cmp((__mpz_struct const *)(e_acsl_4),
@@ -613,20 +667,29 @@ int main(void)
   }
   
   /*@ requires x ≡ 2; */
-  { mpz_t e_acsl_9; mpz_t e_acsl_10; int e_acsl_11;
+  {
+    mpz_t e_acsl_9;
+    mpz_t e_acsl_10;
+    int e_acsl_11;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)2);
     e_acsl_11 = __gmpz_cmp((__mpz_struct const *)(e_acsl_9),
                            (__mpz_struct const *)(e_acsl_10));
     if (! (e_acsl_11 == 0)) { e_acsl_fail((char *)"(x == 2)"); }
     __gmpz_clear((__mpz_struct *)(e_acsl_9));
-    __gmpz_clear((__mpz_struct *)(e_acsl_10)); x ++;
+    __gmpz_clear((__mpz_struct *)(e_acsl_10));
+    x ++;
   }
   
   /*@ requires x ≡ 3;
       requires y ≡ 2; */
-  { mpz_t e_acsl_12; mpz_t e_acsl_13; int e_acsl_14; mpz_t e_acsl_15;
-    mpz_t e_acsl_16; int e_acsl_17;
+  {
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    int e_acsl_14;
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    int e_acsl_17;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)3);
     e_acsl_14 = __gmpz_cmp((__mpz_struct const *)(e_acsl_12),
@@ -640,7 +703,8 @@ int main(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_12));
     __gmpz_clear((__mpz_struct *)(e_acsl_13));
     __gmpz_clear((__mpz_struct *)(e_acsl_15));
-    __gmpz_clear((__mpz_struct *)(e_acsl_16)); x += y;
+    __gmpz_clear((__mpz_struct *)(e_acsl_16));
+    x += y;
   }
   
   /*@ behavior b1:
@@ -653,11 +717,25 @@ int main(void)
         ensures x ≡ y+1;
         
   */
-  { mpz_t e_acsl_27; mpz_t e_acsl_28; int e_acsl_29; mpz_t e_acsl_30;
-    mpz_t e_acsl_31; mpz_t e_acsl_32; int e_acsl_33;
-    { mpz_t e_acsl_18; mpz_t e_acsl_19; int e_acsl_20; mpz_t e_acsl_21;
-      mpz_t e_acsl_22; mpz_t e_acsl_23; int e_acsl_24; mpz_t e_acsl_25;
-      int e_acsl_26; __gmpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)x);
+  {
+    mpz_t e_acsl_27;
+    mpz_t e_acsl_28;
+    int e_acsl_29;
+    mpz_t e_acsl_30;
+    mpz_t e_acsl_31;
+    mpz_t e_acsl_32;
+    int e_acsl_33;
+    {
+      mpz_t e_acsl_18;
+      mpz_t e_acsl_19;
+      int e_acsl_20;
+      mpz_t e_acsl_21;
+      mpz_t e_acsl_22;
+      mpz_t e_acsl_23;
+      int e_acsl_24;
+      mpz_t e_acsl_25;
+      int e_acsl_26;
+      __gmpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)x);
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_19),(long)5);
       e_acsl_20 = __gmpz_cmp((__mpz_struct const *)(e_acsl_18),
                              (__mpz_struct const *)(e_acsl_19));
@@ -680,9 +758,11 @@ int main(void)
       __gmpz_clear((__mpz_struct *)(e_acsl_21));
       __gmpz_clear((__mpz_struct *)(e_acsl_22));
       __gmpz_clear((__mpz_struct *)(e_acsl_23));
-      __gmpz_clear((__mpz_struct *)(e_acsl_25)); x = 3;
+      __gmpz_clear((__mpz_struct *)(e_acsl_25));
+      x = 3;
     }
-     __gmpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)x);
+    
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_28),(long)3);
     e_acsl_29 = __gmpz_cmp((__mpz_struct const *)(e_acsl_27),
                            (__mpz_struct const *)(e_acsl_28));
@@ -713,9 +793,18 @@ int main(void)
         requires x+y ≡ 5;
         
   */
-  { mpz_t e_acsl_34; mpz_t e_acsl_35; int e_acsl_36; int e_acsl_40;
-    mpz_t e_acsl_41; int e_acsl_42; int e_acsl_46; int e_acsl_50;
-    int e_acsl_51; int e_acsl_55; int e_acsl_61;
+  {
+    mpz_t e_acsl_34;
+    mpz_t e_acsl_35;
+    int e_acsl_36;
+    int e_acsl_40;
+    mpz_t e_acsl_41;
+    int e_acsl_42;
+    int e_acsl_46;
+    int e_acsl_50;
+    int e_acsl_51;
+    int e_acsl_55;
+    int e_acsl_61;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_34),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_35),(long)1);
     e_acsl_36 = __gmpz_cmp((__mpz_struct const *)(e_acsl_34),
@@ -732,7 +821,8 @@ int main(void)
       e_acsl_40 = e_acsl_39 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_37));
       __gmpz_clear((__mpz_struct *)(e_acsl_38));
-    } if (! e_acsl_40) { e_acsl_fail((char *)"(x == 1 ==> x == 0)"); }
+    }
+    if (! e_acsl_40) { e_acsl_fail((char *)"(x == 1 ==> x == 0)"); }
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_41),(long)3);
     e_acsl_42 = __gmpz_cmp((__mpz_struct const *)(e_acsl_34),
                            (__mpz_struct const *)(e_acsl_41));
@@ -747,7 +837,9 @@ int main(void)
       e_acsl_46 = e_acsl_45 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_43));
       __gmpz_clear((__mpz_struct *)(e_acsl_44));
-    } else { e_acsl_46 = 0; } if (! e_acsl_46) { e_acsl_50 = 1; }
+    }
+    else { e_acsl_46 = 0; }
+    if (! e_acsl_46) { e_acsl_50 = 1; }
     else {
       mpz_t e_acsl_47;
       mpz_t e_acsl_48;
@@ -775,7 +867,9 @@ int main(void)
       e_acsl_55 = e_acsl_54 == 0;
       __gmpz_clear((__mpz_struct *)(e_acsl_52));
       __gmpz_clear((__mpz_struct *)(e_acsl_53));
-    } else { e_acsl_55 = 0; } if (! e_acsl_55) { e_acsl_61 = 1; }
+    }
+    else { e_acsl_55 = 0; }
+    if (! e_acsl_55) { e_acsl_61 = 1; }
     else {
       mpz_t e_acsl_56;
       mpz_t e_acsl_57;
@@ -799,13 +893,18 @@ int main(void)
     }
     if (! e_acsl_61) {
       e_acsl_fail((char *)"(x == 3 && y == 2 ==> x+y == 5)");
-    } __gmpz_clear((__mpz_struct *)(e_acsl_34));
+    }
+    __gmpz_clear((__mpz_struct *)(e_acsl_34));
     __gmpz_clear((__mpz_struct *)(e_acsl_35));
-    __gmpz_clear((__mpz_struct *)(e_acsl_41)); x += y;
+    __gmpz_clear((__mpz_struct *)(e_acsl_41));
+    x += y;
   }
   
   /*@ requires x ≡ 5; */
-  { mpz_t e_acsl_62; mpz_t e_acsl_63; int e_acsl_64;
+  {
+    mpz_t e_acsl_62;
+    mpz_t e_acsl_63;
+    int e_acsl_64;
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_62),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_63),(long)5);
     e_acsl_64 = __gmpz_cmp((__mpz_struct const *)(e_acsl_62),
@@ -814,30 +913,42 @@ int main(void)
     __gmpz_clear((__mpz_struct *)(e_acsl_62));
     __gmpz_clear((__mpz_struct *)(e_acsl_63));
     /*@ requires y ≡ 2; */
-    { mpz_t e_acsl_65; mpz_t e_acsl_66; int e_acsl_67;
+    {
+      mpz_t e_acsl_65;
+      mpz_t e_acsl_66;
+      int e_acsl_67;
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_65),(long)y);
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_66),(long)2);
       e_acsl_67 = __gmpz_cmp((__mpz_struct const *)(e_acsl_65),
                              (__mpz_struct const *)(e_acsl_66));
       if (! (e_acsl_67 == 0)) { e_acsl_fail((char *)"(y == 2)"); }
       __gmpz_clear((__mpz_struct *)(e_acsl_65));
-      __gmpz_clear((__mpz_struct *)(e_acsl_66)); x += y;
+      __gmpz_clear((__mpz_struct *)(e_acsl_66));
+      x += y;
     }
      }
   
   /*@ requires x ≡ 7;
       ensures x ≡ 7; */
-  { mpz_t e_acsl_71; mpz_t e_acsl_72; int e_acsl_73;
-    { mpz_t e_acsl_68; mpz_t e_acsl_69; int e_acsl_70;
+  {
+    mpz_t e_acsl_71;
+    mpz_t e_acsl_72;
+    int e_acsl_73;
+    {
+      mpz_t e_acsl_68;
+      mpz_t e_acsl_69;
+      int e_acsl_70;
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_68),(long)x);
       __gmpz_init_set_si((__mpz_struct *)(e_acsl_69),(long)7);
       e_acsl_70 = __gmpz_cmp((__mpz_struct const *)(e_acsl_68),
                              (__mpz_struct const *)(e_acsl_69));
       if (! (e_acsl_70 == 0)) { e_acsl_fail((char *)"(x == 7)"); }
       __gmpz_clear((__mpz_struct *)(e_acsl_68));
-      __gmpz_clear((__mpz_struct *)(e_acsl_69)); __retres = 0;
+      __gmpz_clear((__mpz_struct *)(e_acsl_69));
+      __retres = 0;
     }
-     __gmpz_init_set_si((__mpz_struct *)(e_acsl_71),(long)x);
+    
+    __gmpz_init_set_si((__mpz_struct *)(e_acsl_71),(long)x);
     __gmpz_init_set_si((__mpz_struct *)(e_acsl_72),(long)7);
     e_acsl_73 = __gmpz_cmp((__mpz_struct const *)(e_acsl_71),
                            (__mpz_struct const *)(e_acsl_72));
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 dcdb30984f2..d24b4fa8b8b 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
@@ -1,6 +1,7 @@
 /* Generated by Frama-C */
 typedef unsigned long size_t;
 typedef unsigned long mp_limb_t;
+typedef unsigned long mp_bitcnt_t;
 struct __anonstruct___mpz_struct_6 {
    int _mp_alloc ;
    int _mp_size ;
@@ -39,13 +40,20 @@ __inline static void __gmpz_neg(__mpz_struct * /*[1]*/ z1,
                                 __mpz_struct const * /*[1]*/ z2);
 __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
 extern void __gmpz_set(mpz_ptr, mpz_srcptr);
 __inline static void __gmpz_set_q(mpz_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static size_t __gmpz_size(mpz_srcptr __gmp_z) __attribute__((
 __pure__));
-extern void __gmpz_tdiv_q(mpz_ptr, mpz_srcptr, mpz_srcptr);
+/*@ requires \valid(z1);
+    requires \valid(z2);
+    requires \valid(z3);
+    assigns *z1; 
+*/
+extern void __gmpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
+                          __mpz_struct const * /*[1]*/ z2,
+                          __mpz_struct const * /*[1]*/ z3);
 __inline static void __gmpq_abs(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 __inline static void __gmpq_neg(mpq_ptr __gmp_w, mpq_srcptr __gmp_u);
 extern void __gmpq_set(mpq_ptr, mpq_srcptr);
@@ -59,11 +67,11 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 extern mp_limb_t __gmpn_add_n(mp_ptr, mp_srcptr, mp_srcptr, mp_size_t);
 __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
                                mp_size_t __gmp_size) __attribute__((__pure__));
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n);
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n);
 extern int __gmpn_perfect_square_p(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
-extern unsigned long __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
+extern mp_bitcnt_t __gmpn_popcount(mp_srcptr, mp_size_t) __attribute__((
 __pure__));
 __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
                                      mp_size_t __gmp_xsize,
@@ -227,12 +235,12 @@ __inline static int __gmpz_perfect_square_p(mpz_srcptr __gmp_a)
   return (__gmp_result);
 }
 
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u) __attribute__((
 __pure__));
-__inline static unsigned long __gmpz_popcount(mpz_srcptr __gmp_u)
+__inline static mp_bitcnt_t __gmpz_popcount(mpz_srcptr __gmp_u)
 {
   mp_size_t __gmp_usize;
-  unsigned long __gmp_result;
+  mp_bitcnt_t __gmp_result;
   long tmp;
   __gmp_usize = (long)__gmp_u->_mp_size;
   if (__gmp_usize < (mp_size_t)0) { __gmp_result = ~ ((unsigned long)0); }
@@ -287,7 +295,10 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_1;
         tmp_1 = __gmpn_add_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -312,7 +323,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -321,7 +334,9 @@ __inline static mp_limb_t __gmpn_add(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -335,8 +350,12 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x + __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x + __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_r < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -349,7 +368,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_r < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -367,7 +388,9 @@ __inline static mp_limb_t __gmpn_add_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -393,8 +416,12 @@ __inline static int __gmpn_cmp(mp_srcptr __gmp_xp, mp_srcptr __gmp_yp,
 {
   int __gmp_result;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_y;
-      __gmp_result = 0; __gmp_i = __gmp_size;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_y;
+      __gmp_result = 0;
+      __gmp_i = __gmp_size;
       while (1) {
         __gmp_i -= (mp_size_t)1;
         if (! (__gmp_i >= (mp_size_t)0)) { break; }
@@ -420,7 +447,10 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; __gmp_i = __gmp_ysize;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      __gmp_i = __gmp_ysize;
       if (__gmp_i != (mp_size_t)0) {
         mp_limb_t tmp_0;
         tmp_0 = __gmpn_sub_n(__gmp_wp,__gmp_xp,__gmp_yp,__gmp_i);
@@ -443,7 +473,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
       }
       if (__gmp_wp != __gmp_xp) {
         while (1) {
-          { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+          {
+            mp_size_t __gmp_j;
+            __gmp_j = __gmp_i;
             while (__gmp_j < __gmp_xsize) {
               *(__gmp_wp + __gmp_j) = *(__gmp_xp + __gmp_j);
               __gmp_j += (mp_size_t)1;
@@ -452,7 +484,9 @@ __inline static mp_limb_t __gmpn_sub(mp_ptr __gmp_wp, mp_srcptr __gmp_xp,
           
           break;
         }
-      } __gmp_c = (unsigned long)0; __gmp_done: ;
+      }
+      __gmp_c = (unsigned long)0;
+      __gmp_done: ;
     }
     
     break;
@@ -466,8 +500,12 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
 {
   mp_limb_t __gmp_c;
   while (1) {
-    { mp_size_t __gmp_i; mp_limb_t __gmp_x; mp_limb_t __gmp_r;
-      __gmp_x = *(__gmp_src + 0); __gmp_r = __gmp_x - __gmp_n;
+    {
+      mp_size_t __gmp_i;
+      mp_limb_t __gmp_x;
+      mp_limb_t __gmp_r;
+      __gmp_x = *(__gmp_src + 0);
+      __gmp_r = __gmp_x - __gmp_n;
       *(__gmp_dst + 0) = __gmp_r;
       if (__gmp_x < __gmp_n) {
         __gmp_c = (unsigned long)1;
@@ -480,7 +518,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
           if (! (__gmp_x < (mp_limb_t)1)) {
             if (__gmp_src != __gmp_dst) {
               while (1) {
-                { mp_size_t __gmp_j; __gmp_j = __gmp_i;
+                {
+                  mp_size_t __gmp_j;
+                  __gmp_j = __gmp_i;
                   while (__gmp_j < __gmp_size) {
                     *(__gmp_dst + __gmp_j) = *(__gmp_src + __gmp_j);
                     __gmp_j += (mp_size_t)1;
@@ -498,7 +538,9 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
       else {
         if (__gmp_src != __gmp_dst) {
           while (1) {
-            { mp_size_t __gmp_j_0; __gmp_j_0 = (long)1;
+            {
+              mp_size_t __gmp_j_0;
+              __gmp_j_0 = (long)1;
               while (__gmp_j_0 < __gmp_size) {
                 *(__gmp_dst + __gmp_j_0) = *(__gmp_src + __gmp_j_0);
                 __gmp_j_0 += (mp_size_t)1;
@@ -517,21 +559,24 @@ __inline static mp_limb_t __gmpn_sub_1(mp_ptr __gmp_dst, mp_srcptr __gmp_src,
   return (__gmp_c);
 }
 
-__inline static mp_limb_t __gmpn_neg_n(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
-                                       mp_size_t __gmp_n)
+__inline static mp_limb_t __gmpn_neg(mp_ptr __gmp_rp, mp_srcptr __gmp_up,
+                                     mp_size_t __gmp_n)
 {
   mp_limb_t __gmp_ul;
   mp_limb_t __gmp_cy;
   __gmp_cy = (unsigned long)0;
   while (1) {
-    { mp_srcptr tmp; mp_ptr tmp_0;
+    {
+      mp_srcptr tmp;
+      mp_ptr tmp_0;
       { /*undefined sequence*/  tmp = __gmp_up; __gmp_up ++; __gmp_ul = *tmp;
       }
       { /*undefined sequence*/ 
         tmp_0 = __gmp_rp;
         __gmp_rp ++;
         *tmp_0 = - __gmp_ul - __gmp_cy;
-      } __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
+      }
+      __gmp_cy |= (unsigned long)(__gmp_ul != (mp_limb_t)0);
     }
     
     __gmp_n -= (mp_size_t)1;
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 0386082a1df..a43ccbfae6c 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
@@ -6,16 +6,16 @@ PROJECT_FILE.i:135:[value] Assertion got status valid.
 PROJECT_FILE.i:139:[value] Assertion got status valid.
 PROJECT_FILE.i:142:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_str <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:146.
 PROJECT_FILE.i:37:[value] Function mpz_init_set_str: postcondition got status valid.
 [value] Done for function mpz_init_set_str
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:147.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:147.
+        Called from PROJECT_FILE.i:149.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -26,7 +26,7 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:151.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] Recording results for main
@@ -80,13 +80,16 @@ int main(void)
   /*@ assert 0 ≢ 1; */ ;
   if (! (0 != 1)) { e_acsl_fail((char *)"(0 != 1)"); }
   /*@ assert 1152921504606846975 ≡ 0xfffffffffffffff; */ ;
-  { mpz_t e_acsl_1; int e_acsl_2;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
     mpz_init_set_str((__mpz_struct *)(e_acsl_1),"1152921504606846975",10);
     e_acsl_2 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_1));
     if (! (e_acsl_2 == 0)) {
       e_acsl_fail((char *)"(1152921504606846975 == 0xfffffffffffffff)");
-    } mpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_1));
   }
   
   __retres = 0;
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 3f60a357129..18fd2c7eeb3 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
@@ -4,36 +4,36 @@
 [value] Values of globals at initialization
 PROJECT_FILE.i:138:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:144.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:145.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:141.
+        Called from PROJECT_FILE.i:146.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:146.
+        Called from PROJECT_FILE.i:151.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:147.
+        Called from PROJECT_FILE.i:152.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:153.
 [value] Done for function mpz_cmp
-PROJECT_FILE.i:149:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:154:[value] assigning non deterministic value for the first time
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:150.
+        Called from PROJECT_FILE.i:155.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:151.
+        Called from PROJECT_FILE.i:156.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:159.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -44,58 +44,58 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:160.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:161.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:157:[value] Assertion got status valid.
+PROJECT_FILE.i:165:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:159.
+        Called from PROJECT_FILE.i:171.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:159.
+        Called from PROJECT_FILE.i:172.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:173.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:166.
+        Called from PROJECT_FILE.i:179.
 [value] Done for function mpz_init_set_si
-PROJECT_FILE.i:167:[value] Assertion got status invalid (stopping propagation).
+PROJECT_FILE.i:180:[value] Assertion got status invalid (stopping propagation).
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:177.
+        Called from PROJECT_FILE.i:191.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:177.
+        Called from PROJECT_FILE.i:192.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:180:[value] Assertion got status valid.
+PROJECT_FILE.i:196:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:202.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:203.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:189.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:190.
+        Called from PROJECT_FILE.i:211.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:191.
+        Called from PROJECT_FILE.i:212.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:214.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:215.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:195.
+        Called from PROJECT_FILE.i:217.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -105,58 +105,58 @@ PROJECT_FILE.i:180:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:196.
+        Called from PROJECT_FILE.i:218.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:196.
+        Called from PROJECT_FILE.i:219.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:199:[value] Assertion got status valid.
+PROJECT_FILE.i:223:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:201.
+        Called from PROJECT_FILE.i:229.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:201.
+        Called from PROJECT_FILE.i:230.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:202.
+        Called from PROJECT_FILE.i:231.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:238.
 [value] Done for function mpz_init_set_si
-PROJECT_FILE.i:210:[value] Assertion got status invalid (stopping propagation).
+PROJECT_FILE.i:239:[value] Assertion got status invalid (stopping propagation).
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:250.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:222:[value] Assertion got status valid.
+PROJECT_FILE.i:254:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:260.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:261.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:225.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:231.
+        Called from PROJECT_FILE.i:268.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:232.
+        Called from PROJECT_FILE.i:269.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:270.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:272.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:275.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -166,30 +166,30 @@ PROJECT_FILE.i:222:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:241:[value] Assertion got status valid.
+PROJECT_FILE.i:281:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:287.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:243.
+        Called from PROJECT_FILE.i:288.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:289.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:251.
+        Called from PROJECT_FILE.i:296.
 [value] Done for function mpz_init_set_si
-PROJECT_FILE.i:252:[value] Assertion got status invalid (stopping propagation).
+PROJECT_FILE.i:297:[value] Assertion got status invalid (stopping propagation).
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:307.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:261.
+        Called from PROJECT_FILE.i:308.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -241,7 +241,11 @@ int main(void)
   x = 0;
   y = 1;
   /*@ assert x ≡ 0 ∧ y ≡ 1; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; int e_acsl_7;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    int e_acsl_7;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -257,14 +261,19 @@ int main(void)
       e_acsl_7 = e_acsl_6 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_4));
       mpz_clear((__mpz_struct *)(e_acsl_5));
-    } else { e_acsl_7 = 0; }
+    }
+    else { e_acsl_7 = 0; }
     if (! e_acsl_7) { e_acsl_fail((char *)"(x == 0 && y == 1)"); }
     mpz_clear((__mpz_struct *)(e_acsl_1));
     mpz_clear((__mpz_struct *)(e_acsl_2));
   }
   
   /*@ assert ¬(x ≢ 0 ∧ y ≡ 1/0); */ ;
-  { mpz_t e_acsl_8; mpz_t e_acsl_9; int e_acsl_10; int e_acsl_15;
+  {
+    mpz_t e_acsl_8;
+    mpz_t e_acsl_9;
+    int e_acsl_10;
+    int e_acsl_15;
     mpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)0);
     e_acsl_10 = mpz_cmp((__mpz_struct const *)(e_acsl_8),
@@ -284,14 +293,19 @@ int main(void)
       e_acsl_15 = e_acsl_14 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_11));
       mpz_clear((__mpz_struct *)(e_acsl_13));
-    } else { e_acsl_15 = 0; }
+    }
+    else { e_acsl_15 = 0; }
     if (! (! e_acsl_15)) { e_acsl_fail((char *)"(!(x != 0 && y == 1/0))"); }
     mpz_clear((__mpz_struct *)(e_acsl_8));
     mpz_clear((__mpz_struct *)(e_acsl_9));
   }
   
   /*@ assert y ≡ 1 ∨ x ≡ 1; */ ;
-  { mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18; int e_acsl_22;
+  {
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
+    int e_acsl_22;
     mpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)y);
     mpz_init_set_si((__mpz_struct *)(e_acsl_17),(long)1);
     e_acsl_18 = mpz_cmp((__mpz_struct const *)(e_acsl_16),
@@ -308,13 +322,18 @@ int main(void)
       e_acsl_22 = e_acsl_21 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_19));
       mpz_clear((__mpz_struct *)(e_acsl_20));
-    } if (! e_acsl_22) { e_acsl_fail((char *)"(y == 1 || x == 1)"); }
+    }
+    if (! e_acsl_22) { e_acsl_fail((char *)"(y == 1 || x == 1)"); }
     mpz_clear((__mpz_struct *)(e_acsl_16));
     mpz_clear((__mpz_struct *)(e_acsl_17));
   }
   
   /*@ assert x ≡ 0 ∨ y ≡ 1/0; */ ;
-  { mpz_t e_acsl_23; mpz_t e_acsl_24; int e_acsl_25; int e_acsl_30;
+  {
+    mpz_t e_acsl_23;
+    mpz_t e_acsl_24;
+    int e_acsl_25;
+    int e_acsl_30;
     mpz_init_set_si((__mpz_struct *)(e_acsl_23),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_24),(long)0);
     e_acsl_25 = mpz_cmp((__mpz_struct const *)(e_acsl_23),
@@ -335,13 +354,18 @@ int main(void)
       e_acsl_30 = e_acsl_29 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_26));
       mpz_clear((__mpz_struct *)(e_acsl_28));
-    } if (! e_acsl_30) { e_acsl_fail((char *)"(x == 0 || y == 1/0)"); }
+    }
+    if (! e_acsl_30) { e_acsl_fail((char *)"(x == 0 || y == 1/0)"); }
     mpz_clear((__mpz_struct *)(e_acsl_23));
     mpz_clear((__mpz_struct *)(e_acsl_24));
   }
   
   /*@ assert x ≡ 0 ⇒ y ≡ 1; */ ;
-  { mpz_t e_acsl_31; mpz_t e_acsl_32; int e_acsl_33; int e_acsl_37;
+  {
+    mpz_t e_acsl_31;
+    mpz_t e_acsl_32;
+    int e_acsl_33;
+    int e_acsl_37;
     mpz_init_set_si((__mpz_struct *)(e_acsl_31),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_32),(long)0);
     e_acsl_33 = mpz_cmp((__mpz_struct const *)(e_acsl_31),
@@ -358,13 +382,18 @@ int main(void)
       e_acsl_37 = e_acsl_36 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_34));
       mpz_clear((__mpz_struct *)(e_acsl_35));
-    } if (! e_acsl_37) { e_acsl_fail((char *)"(x == 0 ==> y == 1)"); }
+    }
+    if (! e_acsl_37) { e_acsl_fail((char *)"(x == 0 ==> y == 1)"); }
     mpz_clear((__mpz_struct *)(e_acsl_31));
     mpz_clear((__mpz_struct *)(e_acsl_32));
   }
   
   /*@ assert x ≡ 1 ⇒ y ≡ 1/0; */ ;
-  { mpz_t e_acsl_38; mpz_t e_acsl_39; int e_acsl_40; int e_acsl_45;
+  {
+    mpz_t e_acsl_38;
+    mpz_t e_acsl_39;
+    int e_acsl_40;
+    int e_acsl_45;
     mpz_init_set_si((__mpz_struct *)(e_acsl_38),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_39),(long)1);
     e_acsl_40 = mpz_cmp((__mpz_struct const *)(e_acsl_38),
@@ -385,7 +414,8 @@ int main(void)
       e_acsl_45 = e_acsl_44 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_41));
       mpz_clear((__mpz_struct *)(e_acsl_43));
-    } if (! e_acsl_45) { e_acsl_fail((char *)"(x == 1 ==> y == 1/0)"); }
+    }
+    if (! e_acsl_45) { e_acsl_fail((char *)"(x == 1 ==> y == 1/0)"); }
     mpz_clear((__mpz_struct *)(e_acsl_38));
     mpz_clear((__mpz_struct *)(e_acsl_39));
   }
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 605d62c12fb..b371921de35 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
@@ -4,19 +4,19 @@
 [value] Values of globals at initialization
 PROJECT_FILE.i:138:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:151.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:152.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:146.
+        Called from PROJECT_FILE.i:153.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:147.
+        Called from PROJECT_FILE.i:154.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -27,23 +27,23 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:155.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:156.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:157.
+        Called from PROJECT_FILE.i:172.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:157.
+        Called from PROJECT_FILE.i:173.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:158.
+        Called from PROJECT_FILE.i:174.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:159.
+        Called from PROJECT_FILE.i:175.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -53,22 +53,22 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:176.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:177.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:181.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:182.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:163.
+        Called from PROJECT_FILE.i:183.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:164.
+        Called from PROJECT_FILE.i:184.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -78,22 +78,22 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:165.
+        Called from PROJECT_FILE.i:185.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:165.
+        Called from PROJECT_FILE.i:186.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:200.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:201.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:174.
+        Called from PROJECT_FILE.i:202.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:175.
+        Called from PROJECT_FILE.i:203.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -103,22 +103,22 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:176.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:176.
+        Called from PROJECT_FILE.i:205.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:178.
+        Called from PROJECT_FILE.i:209.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:178.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:179.
+        Called from PROJECT_FILE.i:211.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:180.
+        Called from PROJECT_FILE.i:212.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -128,22 +128,22 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:213.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:214.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:190.
+        Called from PROJECT_FILE.i:225.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:190.
+        Called from PROJECT_FILE.i:226.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:191.
+        Called from PROJECT_FILE.i:227.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:228.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -153,10 +153,10 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:229.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:230.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -211,8 +211,14 @@ int main(void)
   if (! (x < y)) { e_acsl_fail((char *)"(x < y)"); }
   /*@ requires x ≡ 0;
       ensures x ≥ 1; */
-  { mpz_t e_acsl_16; mpz_t e_acsl_17; int e_acsl_18;
-    { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_16;
+    mpz_t e_acsl_17;
+    int e_acsl_18;
+    {
+      mpz_t e_acsl_1;
+      mpz_t e_acsl_2;
+      int e_acsl_3;
       mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
       mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)0);
       e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -220,21 +226,31 @@ int main(void)
       if (! (e_acsl_3 == 0)) { e_acsl_fail((char *)"(x == 0)"); }
       mpz_clear((__mpz_struct *)(e_acsl_1));
       mpz_clear((__mpz_struct *)(e_acsl_2));
-      if (x) { /*@ assert \false; */ ; e_acsl_fail((char *)"(\\false)"); }
+      if (x) {
+        /*@ assert \false; */ ;
+        e_acsl_fail((char *)"(\\false)"); }
       else {
         /*@ requires x ≡ 0;
             ensures x ≡ 1; */
-        { mpz_t e_acsl_7; mpz_t e_acsl_8; int e_acsl_9;
-          { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+        {
+          mpz_t e_acsl_7;
+          mpz_t e_acsl_8;
+          int e_acsl_9;
+          {
+            mpz_t e_acsl_4;
+            mpz_t e_acsl_5;
+            int e_acsl_6;
             mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)x);
             mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)0);
             e_acsl_6 = mpz_cmp((__mpz_struct const *)(e_acsl_4),
                                (__mpz_struct const *)(e_acsl_5));
             if (! (e_acsl_6 == 0)) { e_acsl_fail((char *)"(x == 0)"); }
             mpz_clear((__mpz_struct *)(e_acsl_4));
-            mpz_clear((__mpz_struct *)(e_acsl_5)); x ++;
+            mpz_clear((__mpz_struct *)(e_acsl_5));
+            x ++;
           }
-           mpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)x);
+          
+          mpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)x);
           mpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)1);
           e_acsl_9 = mpz_cmp((__mpz_struct const *)(e_acsl_7),
                              (__mpz_struct const *)(e_acsl_8));
@@ -246,17 +262,25 @@ int main(void)
         if (x) {
           /*@ requires x ≡ 1;
               ensures x ≡ 2; */
-          { mpz_t e_acsl_13; mpz_t e_acsl_14; int e_acsl_15;
-            { mpz_t e_acsl_10; mpz_t e_acsl_11; int e_acsl_12;
+          {
+            mpz_t e_acsl_13;
+            mpz_t e_acsl_14;
+            int e_acsl_15;
+            {
+              mpz_t e_acsl_10;
+              mpz_t e_acsl_11;
+              int e_acsl_12;
               mpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)x);
               mpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)1);
               e_acsl_12 = mpz_cmp((__mpz_struct const *)(e_acsl_10),
                                   (__mpz_struct const *)(e_acsl_11));
               if (! (e_acsl_12 == 0)) { e_acsl_fail((char *)"(x == 1)"); }
               mpz_clear((__mpz_struct *)(e_acsl_10));
-              mpz_clear((__mpz_struct *)(e_acsl_11)); x ++;
+              mpz_clear((__mpz_struct *)(e_acsl_11));
+              x ++;
             }
-             mpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)x);
+            
+            mpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)x);
             mpz_init_set_si((__mpz_struct *)(e_acsl_14),(long)2);
             e_acsl_15 = mpz_cmp((__mpz_struct const *)(e_acsl_13),
                                 (__mpz_struct const *)(e_acsl_14));
@@ -266,10 +290,13 @@ int main(void)
           }
           
         }
-        else { /*@ assert \false; */ ; e_acsl_fail((char *)"(\\false)"); }
+        else {
+          /*@ assert \false; */ ;
+          e_acsl_fail((char *)"(\\false)"); }
       }
     }
-     mpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)x);
+    
+    mpz_init_set_si((__mpz_struct *)(e_acsl_16),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_17),(long)1);
     e_acsl_18 = mpz_cmp((__mpz_struct const *)(e_acsl_16),
                         (__mpz_struct const *)(e_acsl_17));
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 18d92acc275..9dd5837b9b3 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
@@ -5,16 +5,16 @@
 PROJECT_FILE.i:138:[value] Assertion got status unknown.
 PROJECT_FILE.i:141:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:145.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:146.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:147.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -25,10 +25,10 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:148.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:148:[value] Assertion got status valid.
+PROJECT_FILE.i:152:[value] Assertion got status valid.
 [value] Recording results for main
 [value] done for function main
 [value] ====== VALUES COMPUTED ======
@@ -80,7 +80,9 @@ int main(void)
   if (! ("toto" != "titi")) { e_acsl_fail((char *)"(\"toto\" != \"titi\")");
   }
   /*@ assert 'c' ≡ 'c'; */ ;
-  { mpz_t e_acsl_1; int e_acsl_2;
+  {
+    mpz_t e_acsl_1;
+    int e_acsl_2;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)'c');
     e_acsl_2 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_1));
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 24f4c27dc2a..ec9898e4f3b 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
@@ -16,19 +16,19 @@ tests/e-acsl-runtime/ptr.i:26:[e-acsl] warning: missing guard for ensuring that
 [value] Values of globals at initialization
 PROJECT_FILE.i:142:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:147.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:144.
+        Called from PROJECT_FILE.i:148.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:149.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:146.
+        Called from PROJECT_FILE.i:150.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -39,24 +39,24 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:146.
+        Called from PROJECT_FILE.i:151.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:147.
+        Called from PROJECT_FILE.i:152.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:150:[value] Assertion got status valid.
+PROJECT_FILE.i:156:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:161.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:162.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:163.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:164.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -66,23 +66,23 @@ PROJECT_FILE.i:150:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:155.
+        Called from PROJECT_FILE.i:165.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:155.
+        Called from PROJECT_FILE.i:166.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:158:[value] Assertion got status valid.
+PROJECT_FILE.i:170:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:175.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:176.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:161.
+        Called from PROJECT_FILE.i:177.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:178.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -92,43 +92,43 @@ PROJECT_FILE.i:158:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:163.
+        Called from PROJECT_FILE.i:179.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:163.
+        Called from PROJECT_FILE.i:180.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:166:[value] Assertion got status valid.
+PROJECT_FILE.i:184:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:170.
+        Called from PROJECT_FILE.i:197.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:170.
+        Called from PROJECT_FILE.i:198.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:171.
+        Called from PROJECT_FILE.i:199.
 PROJECT_FILE.i:21:[value] Function mpz_init: postcondition got status valid.
 [value] Done for function mpz_init
 [value] computing for function mpz_mul <- main.
-        Called from PROJECT_FILE.i:171.
+        Called from PROJECT_FILE.i:200.
 PROJECT_FILE.i:76:[value] Function mpz_mul: precondition got status valid.
 PROJECT_FILE.i:77:[value] Function mpz_mul: precondition got status valid.
 PROJECT_FILE.i:78:[value] Function mpz_mul: precondition got status valid.
 [value] Done for function mpz_mul
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:172.
+        Called from PROJECT_FILE.i:201.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:172.
+        Called from PROJECT_FILE.i:202.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:203.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_init
-PROJECT_FILE.i:174:[value] Assertion got status valid.
+PROJECT_FILE.i:205:[value] Assertion got status valid.
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:175.
+        Called from PROJECT_FILE.i:206.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -137,29 +137,29 @@ PROJECT_FILE.i:174:[value] Assertion got status valid.
 [value] Done for function exit
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
-[value] computing for function mpz_cdiv_q <- main.
-        Called from PROJECT_FILE.i:176.
-PROJECT_FILE.i:82:[value] Function mpz_cdiv_q: precondition got status valid.
-PROJECT_FILE.i:83:[value] Function mpz_cdiv_q: precondition got status valid.
-PROJECT_FILE.i:84:[value] Function mpz_cdiv_q: precondition got status valid.
-[value] Done for function mpz_cdiv_q
+[value] computing for function mpz_tdiv_q <- main.
+        Called from PROJECT_FILE.i:207.
+PROJECT_FILE.i:82:[value] Function mpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:83:[value] Function mpz_tdiv_q: precondition got status valid.
+PROJECT_FILE.i:84:[value] Function mpz_tdiv_q: precondition got status valid.
+[value] Done for function mpz_tdiv_q
 [value] computing for function mpz_get_si <- main.
-        Called from PROJECT_FILE.i:177.
+        Called from PROJECT_FILE.i:208.
 PROJECT_FILE.i:96:[value] Function mpz_get_si: precondition got status valid.
 [value] Done for function mpz_get_si
-PROJECT_FILE.i:178:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
+PROJECT_FILE.i:209:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                   assert 0 ≤ e_acsl_17 ∧ e_acsl_17 < 3;
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:178.
+        Called from PROJECT_FILE.i:209.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:178.
+        Called from PROJECT_FILE.i:210.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:179.
+        Called from PROJECT_FILE.i:211.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:181.
+        Called from PROJECT_FILE.i:213.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -169,54 +169,54 @@ PROJECT_FILE.i:178:[kernel] warning: accessing out of bounds index [-2147483648.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:215.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:216.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:182.
+        Called from PROJECT_FILE.i:217.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:218.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:219.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:183.
+        Called from PROJECT_FILE.i:220.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:184.
+        Called from PROJECT_FILE.i:221.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:184.
+        Called from PROJECT_FILE.i:222.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:188:[value] entering loop for the first time
-PROJECT_FILE.i:190:[value] Assertion got status valid.
+PROJECT_FILE.i:229:[value] entering loop for the first time
+PROJECT_FILE.i:232:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:239.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:240.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:241.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:242.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:243.
 PROJECT_FILE.i:64:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:65:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:195.
+        Called from PROJECT_FILE.i:244.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:196.
+        Called from PROJECT_FILE.i:245.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -226,55 +226,55 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:248.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:201:[value] Assertion got status valid.
+PROJECT_FILE.i:253:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:266.
 PROJECT_FILE.i:70:[value] Function mpz_sub: precondition got status valid.
 PROJECT_FILE.i:71:[value] Function mpz_sub: precondition got status valid.
 PROJECT_FILE.i:72:[value] Function mpz_sub: precondition got status valid.
 [value] Done for function mpz_sub
 [value] computing for function mpz_get_si <- main.
-        Called from PROJECT_FILE.i:206.
+        Called from PROJECT_FILE.i:267.
 [value] Done for function mpz_get_si
-PROJECT_FILE.i:207:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
+PROJECT_FILE.i:268:[kernel] warning: accessing out of bounds index [-2147483648..2147483647].
                   assert 0 ≤ e_acsl_29 ∧ e_acsl_29 < 3;
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:268.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:269.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:270.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:271.
 [value] Done for function mpz_sub
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:272.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:273.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -284,44 +284,44 @@ PROJECT_FILE.i:207:[kernel] warning: accessing out of bounds index [-2147483648.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:275.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:278.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:279.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:216:[value] Assertion got status valid.
+PROJECT_FILE.i:283:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:218.
+        Called from PROJECT_FILE.i:290.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:293.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:294.
 [value] Done for function mpz_sub
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:221.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:296.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -331,38 +331,38 @@ PROJECT_FILE.i:216:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:297.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:299.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:300.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:190:[value] Assertion got status unknown.
+PROJECT_FILE.i:232:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:192.
+        Called from PROJECT_FILE.i:239.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:240.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:241.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:242.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:243.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:195.
+        Called from PROJECT_FILE.i:244.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:196.
+        Called from PROJECT_FILE.i:245.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -372,51 +372,51 @@ PROJECT_FILE.i:190:[value] Assertion got status unknown.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:246.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:248.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:201:[value] Assertion got status unknown.
+PROJECT_FILE.i:253:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:264.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function mpz_sub
 [value] computing for function mpz_get_si <- main.
-        Called from PROJECT_FILE.i:206.
+        Called from PROJECT_FILE.i:267.
 [value] Done for function mpz_get_si
-PROJECT_FILE.i:207:[value] Assertion got status unknown.
+PROJECT_FILE.i:268:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:207.
+        Called from PROJECT_FILE.i:268.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:269.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:270.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:271.
 [value] Done for function mpz_sub
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:272.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:273.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -426,44 +426,44 @@ PROJECT_FILE.i:207:[value] Assertion got status unknown.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:275.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:276.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:277.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:278.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:279.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:216:[value] Assertion got status unknown.
+PROJECT_FILE.i:283:[value] Assertion got status unknown.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:218.
+        Called from PROJECT_FILE.i:290.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:291.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:219.
+        Called from PROJECT_FILE.i:292.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:293.
 [value] Done for function mpz_init
 [value] computing for function mpz_sub <- main.
-        Called from PROJECT_FILE.i:220.
+        Called from PROJECT_FILE.i:294.
 [value] Done for function mpz_sub
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:221.
+        Called from PROJECT_FILE.i:295.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:222.
+        Called from PROJECT_FILE.i:296.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -473,30 +473,30 @@ PROJECT_FILE.i:216:[value] Assertion got status unknown.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:297.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:298.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:223.
+        Called from PROJECT_FILE.i:299.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:224.
+        Called from PROJECT_FILE.i:300.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:227:[value] assigning non deterministic value for the first time
-PROJECT_FILE.i:233:[value] Assertion got status valid.
+PROJECT_FILE.i:304:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:310:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:315.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:235.
+        Called from PROJECT_FILE.i:316.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:236.
+        Called from PROJECT_FILE.i:317.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:237.
+        Called from PROJECT_FILE.i:318.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -506,10 +506,10 @@ PROJECT_FILE.i:233:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:319.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:238.
+        Called from PROJECT_FILE.i:320.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -575,7 +575,7 @@ extern void mpz_mul(__mpz_struct * /*[1]*/ z1,
     requires \valid(z3);
     assigns *z1; 
 */
-extern void mpz_cdiv_q(__mpz_struct * /*[1]*/ z1,
+extern void mpz_tdiv_q(__mpz_struct * /*[1]*/ z1,
                        __mpz_struct const * /*[1]*/ z2,
                        __mpz_struct const * /*[1]*/ z3);
 /*@ requires \valid(z);
@@ -606,7 +606,10 @@ int main(void)
   t[2] = 4;
   p = & x;
   /*@ assert *p ≡ 1; */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)*p);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -617,7 +620,10 @@ int main(void)
   }
   
   /*@ assert t[0] ≡ 2; */ ;
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)t[0]);
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)2);
     e_acsl_6 = mpz_cmp((__mpz_struct const *)(e_acsl_4),
@@ -628,7 +634,10 @@ int main(void)
   }
   
   /*@ assert t[2] ≡ 4; */ ;
-  { mpz_t e_acsl_7; mpz_t e_acsl_8; int e_acsl_9;
+  {
+    mpz_t e_acsl_7;
+    mpz_t e_acsl_8;
+    int e_acsl_9;
     mpz_init_set_si((__mpz_struct *)(e_acsl_7),(long)t[2]);
     mpz_init_set_si((__mpz_struct *)(e_acsl_8),(long)4);
     e_acsl_9 = mpz_cmp((__mpz_struct const *)(e_acsl_7),
@@ -639,9 +648,18 @@ int main(void)
   }
   
   /*@ assert t[(2*sizeof(int))/sizeof((int)0x0)] ≡ 4; */ ;
-  { mpz_t e_acsl_10; mpz_t e_acsl_11; mpz_t e_acsl_12; mpz_t e_acsl_13;
-    mpz_t e_acsl_14; int e_acsl_15; mpz_t e_acsl_16; int e_acsl_17;
-    mpz_t e_acsl_18; mpz_t e_acsl_19; int e_acsl_20;
+  {
+    mpz_t e_acsl_10;
+    mpz_t e_acsl_11;
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    mpz_t e_acsl_14;
+    int e_acsl_15;
+    mpz_t e_acsl_16;
+    int e_acsl_17;
+    mpz_t e_acsl_18;
+    mpz_t e_acsl_19;
+    int e_acsl_20;
     mpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)2);
     mpz_init_set_si((__mpz_struct *)(e_acsl_11),(long)4);
     mpz_init((__mpz_struct *)(e_acsl_12));
@@ -654,7 +672,7 @@ int main(void)
     mpz_init((__mpz_struct *)(e_acsl_16));
     /*@ assert sizeof((int)0x0) ≢ 0; */ ;
     if (e_acsl_15 == 0) { e_acsl_fail((char *)"(sizeof((int)0x0) == 0)"); }
-    mpz_cdiv_q((__mpz_struct *)(e_acsl_16),(__mpz_struct const *)(e_acsl_12),
+    mpz_tdiv_q((__mpz_struct *)(e_acsl_16),(__mpz_struct const *)(e_acsl_12),
                (__mpz_struct const *)(e_acsl_13));
     e_acsl_17 = (int)mpz_get_si((__mpz_struct const *)(e_acsl_16));
     /*@ assert 0 ≤ e_acsl_17 ∧ e_acsl_17 < 3;
@@ -666,7 +684,8 @@ int main(void)
                         (__mpz_struct const *)(e_acsl_19));
     if (! (e_acsl_20 == 0)) {
       e_acsl_fail((char *)"(t[(2*sizeof(int))/sizeof((int)0x0)] == 4)");
-    } mpz_clear((__mpz_struct *)(e_acsl_10));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_10));
     mpz_clear((__mpz_struct *)(e_acsl_11));
     mpz_clear((__mpz_struct *)(e_acsl_12));
     mpz_clear((__mpz_struct *)(e_acsl_13));
@@ -676,11 +695,17 @@ int main(void)
     mpz_clear((__mpz_struct *)(e_acsl_19));
   }
   
-  { int i; i = 0;
+  {
+    int i;
+    i = 0;
     while (1) {
       if (! (i < 2)) { break; }
       /*@ assert t[i] ≡ i+2; */ ;
-      { mpz_t e_acsl_21; mpz_t e_acsl_22; mpz_t e_acsl_23; mpz_t e_acsl_24;
+      {
+        mpz_t e_acsl_21;
+        mpz_t e_acsl_22;
+        mpz_t e_acsl_23;
+        mpz_t e_acsl_24;
         int e_acsl_25;
         mpz_init_set_si((__mpz_struct *)(e_acsl_21),(long)t[i]);
         mpz_init_set_si((__mpz_struct *)(e_acsl_22),(long)i);
@@ -699,8 +724,15 @@ int main(void)
       }
       
       /*@ assert t[2-i] ≡ 4-i; */ ;
-      { mpz_t e_acsl_26; mpz_t e_acsl_27; mpz_t e_acsl_28; int e_acsl_29;
-        mpz_t e_acsl_30; mpz_t e_acsl_31; mpz_t e_acsl_32; int e_acsl_33;
+      {
+        mpz_t e_acsl_26;
+        mpz_t e_acsl_27;
+        mpz_t e_acsl_28;
+        int e_acsl_29;
+        mpz_t e_acsl_30;
+        mpz_t e_acsl_31;
+        mpz_t e_acsl_32;
+        int e_acsl_33;
         mpz_init_set_si((__mpz_struct *)(e_acsl_26),(long)2);
         mpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)i);
         mpz_init((__mpz_struct *)(e_acsl_28));
@@ -729,7 +761,11 @@ int main(void)
       }
       
       /*@ assert *(&t[2]-i) ≡ 4-i; */ ;
-      { mpz_t e_acsl_34; mpz_t e_acsl_35; mpz_t e_acsl_36; mpz_t e_acsl_37;
+      {
+        mpz_t e_acsl_34;
+        mpz_t e_acsl_35;
+        mpz_t e_acsl_36;
+        mpz_t e_acsl_37;
         int e_acsl_38;
         mpz_init_set_si((__mpz_struct *)(e_acsl_34),(long)*(& t[2] - i));
         mpz_init_set_si((__mpz_struct *)(e_acsl_35),(long)4);
@@ -741,7 +777,8 @@ int main(void)
         e_acsl_38 = mpz_cmp((__mpz_struct const *)(e_acsl_34),
                             (__mpz_struct const *)(e_acsl_37));
         if (! (e_acsl_38 == 0)) { e_acsl_fail((char *)"(*(&t[2]-i) == 4-i)");
-        } mpz_clear((__mpz_struct *)(e_acsl_34));
+        }
+        mpz_clear((__mpz_struct *)(e_acsl_34));
         mpz_clear((__mpz_struct *)(e_acsl_35));
         mpz_clear((__mpz_struct *)(e_acsl_36));
         mpz_clear((__mpz_struct *)(e_acsl_37));
@@ -754,7 +791,10 @@ int main(void)
   p = & t[2];
   t[2] = 5;
   /*@ assert *p ≡ 5; */ ;
-  { mpz_t e_acsl_39; mpz_t e_acsl_40; int e_acsl_41;
+  {
+    mpz_t e_acsl_39;
+    mpz_t e_acsl_40;
+    int e_acsl_41;
     mpz_init_set_si((__mpz_struct *)(e_acsl_39),(long)*p);
     mpz_init_set_si((__mpz_struct *)(e_acsl_40),(long)5);
     e_acsl_41 = mpz_cmp((__mpz_struct const *)(e_acsl_39),
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 52bb002c5e5..d8a69d2f46d 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
@@ -2,21 +2,21 @@
 [value] Computing initial state
 [value] Initial state computed
 [value] Values of globals at initialization
-PROJECT_FILE.i:135:[value] Assertion got status valid.
+PROJECT_FILE.i:136:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:137.
+        Called from PROJECT_FILE.i:141.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:137.
+        Called from PROJECT_FILE.i:142.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:138.
+        Called from PROJECT_FILE.i:143.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:139.
+        Called from PROJECT_FILE.i:144.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -27,24 +27,24 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:145.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:146.
 [value] Done for function mpz_clear
-PROJECT_FILE.i:143:[value] Assertion got status valid.
+PROJECT_FILE.i:150:[value] Assertion got status valid.
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:155.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:145.
+        Called from PROJECT_FILE.i:156.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:146.
+        Called from PROJECT_FILE.i:157.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:148.
+        Called from PROJECT_FILE.i:159.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -54,10 +54,10 @@ PROJECT_FILE.i:143:[value] Assertion got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:161.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:162.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -65,6 +65,7 @@ PROJECT_FILE.i:143:[value] Assertion got status valid.
 [value] Values for function e_acsl_fail:
           NON TERMINATING FUNCTION
 [value] Values for function main:
+          __retres ∈ {0}
           x ∈ {0}
 /* Generated by Frama-C */
 struct __anonstruct___mpz_struct_1 {
@@ -99,35 +100,45 @@ void e_acsl_fail(char *msg)
   return;
 }
 
-void main(void)
+int main(void)
 {
+  int __retres;
   int x;
   x = 0;
   /*@ assert sizeof(int) ≡ sizeof(x); */ ;
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)4);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)4);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
                        (__mpz_struct const *)(e_acsl_2));
     if (! (e_acsl_3 == 0)) {
       e_acsl_fail((char *)"(sizeof(int) == sizeof(x))");
-    } mpz_clear((__mpz_struct *)(e_acsl_1));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_1));
     mpz_clear((__mpz_struct *)(e_acsl_2));
   }
   
   /*@ assert sizeof("totototototo") ≡ sizeof(char *); */ ;
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6;
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
     mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)4);
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)4);
     e_acsl_6 = mpz_cmp((__mpz_struct const *)(e_acsl_4),
                        (__mpz_struct const *)(e_acsl_5));
     if (! (e_acsl_6 == 0)) {
       e_acsl_fail((char *)"(sizeof(\"totototototo\") == sizeof(char *))");
-    } mpz_clear((__mpz_struct *)(e_acsl_4));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_4));
     mpz_clear((__mpz_struct *)(e_acsl_5));
   }
   
-  return;
+  __retres = 0;
+  return (__retres);
 }
 
 
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 21e10170516..54e4e162241 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
@@ -3,19 +3,19 @@
 [value] Initial state computed
 [value] Values of globals at initialization
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:144.
 PROJECT_FILE.i:33:[value] Function mpz_init_set_si: postcondition got status valid.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:140.
+        Called from PROJECT_FILE.i:145.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:141.
+        Called from PROJECT_FILE.i:146.
 PROJECT_FILE.i:49:[value] Function mpz_cmp: precondition got status valid.
 PROJECT_FILE.i:50:[value] Function mpz_cmp: precondition got status valid.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:147.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -26,23 +26,23 @@ PROJECT_FILE.i:119:[value] Function exit: postcondition got status invalid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:142.
+        Called from PROJECT_FILE.i:148.
 PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:143.
+        Called from PROJECT_FILE.i:149.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:149.
+        Called from PROJECT_FILE.i:161.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:150.
+        Called from PROJECT_FILE.i:162.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:150.
+        Called from PROJECT_FILE.i:163.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:151.
+        Called from PROJECT_FILE.i:164.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -52,13 +52,13 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:165.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:152.
+        Called from PROJECT_FILE.i:166.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:167.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -68,25 +68,25 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:153.
+        Called from PROJECT_FILE.i:168.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:169.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:154.
+        Called from PROJECT_FILE.i:170.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:159.
+        Called from PROJECT_FILE.i:178.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:159.
+        Called from PROJECT_FILE.i:179.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:160.
+        Called from PROJECT_FILE.i:180.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:161.
+        Called from PROJECT_FILE.i:181.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -96,22 +96,22 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:161.
+        Called from PROJECT_FILE.i:182.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:162.
+        Called from PROJECT_FILE.i:183.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:168.
+        Called from PROJECT_FILE.i:196.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:169.
+        Called from PROJECT_FILE.i:197.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:170.
+        Called from PROJECT_FILE.i:198.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:171.
+        Called from PROJECT_FILE.i:199.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -121,16 +121,16 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:172.
+        Called from PROJECT_FILE.i:200.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:172.
+        Called from PROJECT_FILE.i:201.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:173.
+        Called from PROJECT_FILE.i:202.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:174.
+        Called from PROJECT_FILE.i:203.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -140,28 +140,28 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:175.
+        Called from PROJECT_FILE.i:204.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:175.
+        Called from PROJECT_FILE.i:205.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:175.
+        Called from PROJECT_FILE.i:206.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:176.
+        Called from PROJECT_FILE.i:207.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:193.
+        Called from PROJECT_FILE.i:239.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:194.
+        Called from PROJECT_FILE.i:240.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:195.
+        Called from PROJECT_FILE.i:241.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:196.
+        Called from PROJECT_FILE.i:242.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -171,26 +171,26 @@ PROJECT_FILE.i:43:[value] Function mpz_clear: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:243.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:197.
+        Called from PROJECT_FILE.i:244.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:245.
 PROJECT_FILE.i:21:[value] Function mpz_init: postcondition got status valid.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:198.
+        Called from PROJECT_FILE.i:246.
 PROJECT_FILE.i:64:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:65:[value] Function mpz_add: precondition got status valid.
 PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:199.
+        Called from PROJECT_FILE.i:247.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:200.
+        Called from PROJECT_FILE.i:248.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -200,13 +200,13 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:201.
+        Called from PROJECT_FILE.i:249.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:202.
+        Called from PROJECT_FILE.i:250.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:203.
+        Called from PROJECT_FILE.i:251.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -216,34 +216,34 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:252.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:253.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:204.
+        Called from PROJECT_FILE.i:254.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:255.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:256.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:205.
+        Called from PROJECT_FILE.i:257.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:261.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:208.
+        Called from PROJECT_FILE.i:262.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:209.
+        Called from PROJECT_FILE.i:263.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:210.
+        Called from PROJECT_FILE.i:264.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -253,22 +253,22 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:265.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:211.
+        Called from PROJECT_FILE.i:266.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:267.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:212.
+        Called from PROJECT_FILE.i:268.
 [value] Done for function mpz_add
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:213.
+        Called from PROJECT_FILE.i:269.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:214.
+        Called from PROJECT_FILE.i:270.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -278,47 +278,47 @@ PROJECT_FILE.i:66:[value] Function mpz_add: precondition got status valid.
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:271.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:272.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:215.
+        Called from PROJECT_FILE.i:273.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:274.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:216.
+        Called from PROJECT_FILE.i:275.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:301.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:233.
+        Called from PROJECT_FILE.i:302.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:234.
+        Called from PROJECT_FILE.i:303.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:240.
+        Called from PROJECT_FILE.i:309.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:241.
+        Called from PROJECT_FILE.i:310.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:242.
+        Called from PROJECT_FILE.i:311.
 [value] Done for function mpz_cmp
-PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
+PROJECT_FILE.i:312:[value] assigning non deterministic value for the first time
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:244.
+        Called from PROJECT_FILE.i:313.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:245.
+        Called from PROJECT_FILE.i:314.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:246.
+        Called from PROJECT_FILE.i:316.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -328,43 +328,43 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:247.
+        Called from PROJECT_FILE.i:317.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:248.
+        Called from PROJECT_FILE.i:318.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:253.
+        Called from PROJECT_FILE.i:323.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:254.
+        Called from PROJECT_FILE.i:324.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:255.
+        Called from PROJECT_FILE.i:325.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:257.
+        Called from PROJECT_FILE.i:327.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:258.
+        Called from PROJECT_FILE.i:328.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:264.
+        Called from PROJECT_FILE.i:336.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:265.
+        Called from PROJECT_FILE.i:337.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:266.
+        Called from PROJECT_FILE.i:338.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:268.
+        Called from PROJECT_FILE.i:340.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:269.
+        Called from PROJECT_FILE.i:341.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:270.
+        Called from PROJECT_FILE.i:343.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -374,55 +374,55 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:271.
+        Called from PROJECT_FILE.i:344.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:276.
+        Called from PROJECT_FILE.i:349.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:277.
+        Called from PROJECT_FILE.i:350.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:278.
+        Called from PROJECT_FILE.i:351.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:280.
+        Called from PROJECT_FILE.i:353.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:281.
+        Called from PROJECT_FILE.i:354.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:289.
+        Called from PROJECT_FILE.i:364.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:290.
+        Called from PROJECT_FILE.i:365.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init <- main.
-        Called from PROJECT_FILE.i:291.
+        Called from PROJECT_FILE.i:366.
 [value] Done for function mpz_init
 [value] computing for function mpz_add <- main.
-        Called from PROJECT_FILE.i:292.
+        Called from PROJECT_FILE.i:367.
 [value] Done for function mpz_add
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:293.
+        Called from PROJECT_FILE.i:368.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:294.
+        Called from PROJECT_FILE.i:369.
 [value] Done for function mpz_cmp
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:296.
+        Called from PROJECT_FILE.i:371.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:297.
+        Called from PROJECT_FILE.i:372.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:298.
+        Called from PROJECT_FILE.i:373.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:299.
+        Called from PROJECT_FILE.i:374.
 [value] Done for function mpz_clear
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:300.
+        Called from PROJECT_FILE.i:376.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -432,25 +432,25 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:301.
+        Called from PROJECT_FILE.i:377.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:301.
+        Called from PROJECT_FILE.i:378.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:301.
+        Called from PROJECT_FILE.i:379.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:388.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:306.
+        Called from PROJECT_FILE.i:389.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:307.
+        Called from PROJECT_FILE.i:390.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:308.
+        Called from PROJECT_FILE.i:391.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -460,22 +460,22 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:392.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:309.
+        Called from PROJECT_FILE.i:393.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:399.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:312.
+        Called from PROJECT_FILE.i:400.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:313.
+        Called from PROJECT_FILE.i:401.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:314.
+        Called from PROJECT_FILE.i:402.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -485,22 +485,22 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:403.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:315.
+        Called from PROJECT_FILE.i:404.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:323.
+        Called from PROJECT_FILE.i:419.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:323.
+        Called from PROJECT_FILE.i:420.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:324.
+        Called from PROJECT_FILE.i:421.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:325.
+        Called from PROJECT_FILE.i:422.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -510,22 +510,22 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:423.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:326.
+        Called from PROJECT_FILE.i:424.
 [value] Done for function mpz_clear
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:428.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_init_set_si <- main.
-        Called from PROJECT_FILE.i:328.
+        Called from PROJECT_FILE.i:429.
 [value] Done for function mpz_init_set_si
 [value] computing for function mpz_cmp <- main.
-        Called from PROJECT_FILE.i:329.
+        Called from PROJECT_FILE.i:430.
 [value] Done for function mpz_cmp
 [value] computing for function e_acsl_fail <- main.
-        Called from PROJECT_FILE.i:330.
+        Called from PROJECT_FILE.i:431.
 [value] computing for function printf <- e_acsl_fail <- main.
         Called from PROJECT_FILE.i:129.
 [value] Done for function printf
@@ -535,10 +535,10 @@ PROJECT_FILE.i:243:[value] assigning non deterministic value for the first time
 [value] Recording results for e_acsl_fail
 [value] Done for function e_acsl_fail
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:432.
 [value] Done for function mpz_clear
 [value] computing for function mpz_clear <- main.
-        Called from PROJECT_FILE.i:331.
+        Called from PROJECT_FILE.i:433.
 [value] Done for function mpz_clear
 [value] Recording results for main
 [value] done for function main
@@ -601,7 +601,11 @@ int main(void)
   x = 0;
   y = 2;
   /*@ ensures x ≡ 1; */
-  { mpz_t e_acsl_1; mpz_t e_acsl_2; int e_acsl_3; x = 1;
+  {
+    mpz_t e_acsl_1;
+    mpz_t e_acsl_2;
+    int e_acsl_3;
+    x = 1;
     mpz_init_set_si((__mpz_struct *)(e_acsl_1),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_2),(long)1);
     e_acsl_3 = mpz_cmp((__mpz_struct const *)(e_acsl_1),
@@ -613,8 +617,14 @@ int main(void)
   
   /*@ ensures x ≡ 2;
       ensures y ≡ 2; */
-  { mpz_t e_acsl_4; mpz_t e_acsl_5; int e_acsl_6; mpz_t e_acsl_7;
-    int e_acsl_8; x = 2; mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)x);
+  {
+    mpz_t e_acsl_4;
+    mpz_t e_acsl_5;
+    int e_acsl_6;
+    mpz_t e_acsl_7;
+    int e_acsl_8;
+    x = 2;
+    mpz_init_set_si((__mpz_struct *)(e_acsl_4),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_5),(long)2);
     e_acsl_6 = mpz_cmp((__mpz_struct const *)(e_acsl_4),
                        (__mpz_struct const *)(e_acsl_5));
@@ -629,20 +639,29 @@ int main(void)
   }
   
   /*@ requires x ≡ 2; */
-  { mpz_t e_acsl_9; mpz_t e_acsl_10; int e_acsl_11;
+  {
+    mpz_t e_acsl_9;
+    mpz_t e_acsl_10;
+    int e_acsl_11;
     mpz_init_set_si((__mpz_struct *)(e_acsl_9),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_10),(long)2);
     e_acsl_11 = mpz_cmp((__mpz_struct const *)(e_acsl_9),
                         (__mpz_struct const *)(e_acsl_10));
     if (! (e_acsl_11 == 0)) { e_acsl_fail((char *)"(x == 2)"); }
     mpz_clear((__mpz_struct *)(e_acsl_9));
-    mpz_clear((__mpz_struct *)(e_acsl_10)); x ++;
+    mpz_clear((__mpz_struct *)(e_acsl_10));
+    x ++;
   }
   
   /*@ requires x ≡ 3;
       requires y ≡ 2; */
-  { mpz_t e_acsl_12; mpz_t e_acsl_13; int e_acsl_14; mpz_t e_acsl_15;
-    mpz_t e_acsl_16; int e_acsl_17;
+  {
+    mpz_t e_acsl_12;
+    mpz_t e_acsl_13;
+    int e_acsl_14;
+    mpz_t e_acsl_15;
+    mpz_t e_acsl_16;
+    int e_acsl_17;
     mpz_init_set_si((__mpz_struct *)(e_acsl_12),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_13),(long)3);
     e_acsl_14 = mpz_cmp((__mpz_struct const *)(e_acsl_12),
@@ -656,7 +675,8 @@ int main(void)
     mpz_clear((__mpz_struct *)(e_acsl_12));
     mpz_clear((__mpz_struct *)(e_acsl_13));
     mpz_clear((__mpz_struct *)(e_acsl_15));
-    mpz_clear((__mpz_struct *)(e_acsl_16)); x += y;
+    mpz_clear((__mpz_struct *)(e_acsl_16));
+    x += y;
   }
   
   /*@ behavior b1:
@@ -669,11 +689,25 @@ int main(void)
         ensures x ≡ y+1;
         
   */
-  { mpz_t e_acsl_27; mpz_t e_acsl_28; int e_acsl_29; mpz_t e_acsl_30;
-    mpz_t e_acsl_31; mpz_t e_acsl_32; int e_acsl_33;
-    { mpz_t e_acsl_18; mpz_t e_acsl_19; int e_acsl_20; mpz_t e_acsl_21;
-      mpz_t e_acsl_22; mpz_t e_acsl_23; int e_acsl_24; mpz_t e_acsl_25;
-      int e_acsl_26; mpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)x);
+  {
+    mpz_t e_acsl_27;
+    mpz_t e_acsl_28;
+    int e_acsl_29;
+    mpz_t e_acsl_30;
+    mpz_t e_acsl_31;
+    mpz_t e_acsl_32;
+    int e_acsl_33;
+    {
+      mpz_t e_acsl_18;
+      mpz_t e_acsl_19;
+      int e_acsl_20;
+      mpz_t e_acsl_21;
+      mpz_t e_acsl_22;
+      mpz_t e_acsl_23;
+      int e_acsl_24;
+      mpz_t e_acsl_25;
+      int e_acsl_26;
+      mpz_init_set_si((__mpz_struct *)(e_acsl_18),(long)x);
       mpz_init_set_si((__mpz_struct *)(e_acsl_19),(long)5);
       e_acsl_20 = mpz_cmp((__mpz_struct const *)(e_acsl_18),
                           (__mpz_struct const *)(e_acsl_19));
@@ -695,9 +729,11 @@ int main(void)
       mpz_clear((__mpz_struct *)(e_acsl_21));
       mpz_clear((__mpz_struct *)(e_acsl_22));
       mpz_clear((__mpz_struct *)(e_acsl_23));
-      mpz_clear((__mpz_struct *)(e_acsl_25)); x = 3;
+      mpz_clear((__mpz_struct *)(e_acsl_25));
+      x = 3;
     }
-     mpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)x);
+    
+    mpz_init_set_si((__mpz_struct *)(e_acsl_27),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_28),(long)3);
     e_acsl_29 = mpz_cmp((__mpz_struct const *)(e_acsl_27),
                         (__mpz_struct const *)(e_acsl_28));
@@ -728,9 +764,18 @@ int main(void)
         requires x+y ≡ 5;
         
   */
-  { mpz_t e_acsl_34; mpz_t e_acsl_35; int e_acsl_36; int e_acsl_40;
-    mpz_t e_acsl_41; int e_acsl_42; int e_acsl_46; int e_acsl_50;
-    int e_acsl_51; int e_acsl_55; int e_acsl_61;
+  {
+    mpz_t e_acsl_34;
+    mpz_t e_acsl_35;
+    int e_acsl_36;
+    int e_acsl_40;
+    mpz_t e_acsl_41;
+    int e_acsl_42;
+    int e_acsl_46;
+    int e_acsl_50;
+    int e_acsl_51;
+    int e_acsl_55;
+    int e_acsl_61;
     mpz_init_set_si((__mpz_struct *)(e_acsl_34),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_35),(long)1);
     e_acsl_36 = mpz_cmp((__mpz_struct const *)(e_acsl_34),
@@ -747,7 +792,8 @@ int main(void)
       e_acsl_40 = e_acsl_39 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_37));
       mpz_clear((__mpz_struct *)(e_acsl_38));
-    } if (! e_acsl_40) { e_acsl_fail((char *)"(x == 1 ==> x == 0)"); }
+    }
+    if (! e_acsl_40) { e_acsl_fail((char *)"(x == 1 ==> x == 0)"); }
     mpz_init_set_si((__mpz_struct *)(e_acsl_41),(long)3);
     e_acsl_42 = mpz_cmp((__mpz_struct const *)(e_acsl_34),
                         (__mpz_struct const *)(e_acsl_41));
@@ -762,7 +808,9 @@ int main(void)
       e_acsl_46 = e_acsl_45 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_43));
       mpz_clear((__mpz_struct *)(e_acsl_44));
-    } else { e_acsl_46 = 0; } if (! e_acsl_46) { e_acsl_50 = 1; }
+    }
+    else { e_acsl_46 = 0; }
+    if (! e_acsl_46) { e_acsl_50 = 1; }
     else {
       mpz_t e_acsl_47;
       mpz_t e_acsl_48;
@@ -790,7 +838,9 @@ int main(void)
       e_acsl_55 = e_acsl_54 == 0;
       mpz_clear((__mpz_struct *)(e_acsl_52));
       mpz_clear((__mpz_struct *)(e_acsl_53));
-    } else { e_acsl_55 = 0; } if (! e_acsl_55) { e_acsl_61 = 1; }
+    }
+    else { e_acsl_55 = 0; }
+    if (! e_acsl_55) { e_acsl_61 = 1; }
     else {
       mpz_t e_acsl_56;
       mpz_t e_acsl_57;
@@ -813,13 +863,18 @@ int main(void)
     }
     if (! e_acsl_61) {
       e_acsl_fail((char *)"(x == 3 && y == 2 ==> x+y == 5)");
-    } mpz_clear((__mpz_struct *)(e_acsl_34));
+    }
+    mpz_clear((__mpz_struct *)(e_acsl_34));
     mpz_clear((__mpz_struct *)(e_acsl_35));
-    mpz_clear((__mpz_struct *)(e_acsl_41)); x += y;
+    mpz_clear((__mpz_struct *)(e_acsl_41));
+    x += y;
   }
   
   /*@ requires x ≡ 5; */
-  { mpz_t e_acsl_62; mpz_t e_acsl_63; int e_acsl_64;
+  {
+    mpz_t e_acsl_62;
+    mpz_t e_acsl_63;
+    int e_acsl_64;
     mpz_init_set_si((__mpz_struct *)(e_acsl_62),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_63),(long)5);
     e_acsl_64 = mpz_cmp((__mpz_struct const *)(e_acsl_62),
@@ -828,30 +883,42 @@ int main(void)
     mpz_clear((__mpz_struct *)(e_acsl_62));
     mpz_clear((__mpz_struct *)(e_acsl_63));
     /*@ requires y ≡ 2; */
-    { mpz_t e_acsl_65; mpz_t e_acsl_66; int e_acsl_67;
+    {
+      mpz_t e_acsl_65;
+      mpz_t e_acsl_66;
+      int e_acsl_67;
       mpz_init_set_si((__mpz_struct *)(e_acsl_65),(long)y);
       mpz_init_set_si((__mpz_struct *)(e_acsl_66),(long)2);
       e_acsl_67 = mpz_cmp((__mpz_struct const *)(e_acsl_65),
                           (__mpz_struct const *)(e_acsl_66));
       if (! (e_acsl_67 == 0)) { e_acsl_fail((char *)"(y == 2)"); }
       mpz_clear((__mpz_struct *)(e_acsl_65));
-      mpz_clear((__mpz_struct *)(e_acsl_66)); x += y;
+      mpz_clear((__mpz_struct *)(e_acsl_66));
+      x += y;
     }
      }
   
   /*@ requires x ≡ 7;
       ensures x ≡ 7; */
-  { mpz_t e_acsl_71; mpz_t e_acsl_72; int e_acsl_73;
-    { mpz_t e_acsl_68; mpz_t e_acsl_69; int e_acsl_70;
+  {
+    mpz_t e_acsl_71;
+    mpz_t e_acsl_72;
+    int e_acsl_73;
+    {
+      mpz_t e_acsl_68;
+      mpz_t e_acsl_69;
+      int e_acsl_70;
       mpz_init_set_si((__mpz_struct *)(e_acsl_68),(long)x);
       mpz_init_set_si((__mpz_struct *)(e_acsl_69),(long)7);
       e_acsl_70 = mpz_cmp((__mpz_struct const *)(e_acsl_68),
                           (__mpz_struct const *)(e_acsl_69));
       if (! (e_acsl_70 == 0)) { e_acsl_fail((char *)"(x == 7)"); }
       mpz_clear((__mpz_struct *)(e_acsl_68));
-      mpz_clear((__mpz_struct *)(e_acsl_69)); __retres = 0;
+      mpz_clear((__mpz_struct *)(e_acsl_69));
+      __retres = 0;
     }
-     mpz_init_set_si((__mpz_struct *)(e_acsl_71),(long)x);
+    
+    mpz_init_set_si((__mpz_struct *)(e_acsl_71),(long)x);
     mpz_init_set_si((__mpz_struct *)(e_acsl_72),(long)7);
     e_acsl_73 = mpz_cmp((__mpz_struct const *)(e_acsl_71),
                         (__mpz_struct const *)(e_acsl_72));
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/other_constants.i b/src/plugins/e-acsl/tests/e-acsl-runtime/other_constants.i
index b901be8d453..39d8a7c4685 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/other_constants.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/other_constants.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: non integer constants
-   EXECNOW: LOG gen_other_constants.c BIN gen_other_constants.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/other_constants.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_other_constants.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_other_constants.out -lgmp ./tests/e-acsl-runtime/result/gen_other_constants.c && ./tests/e-acsl-runtime/result/gen_other_constants.out
+   EXECNOW: LOG gen_other_constants.c BIN gen_other_constants.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/other_constants.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_other_constants.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_other_constants.out ./tests/e-acsl-runtime/result/gen_other_constants.c -lgmp && ./tests/e-acsl-runtime/result/gen_other_constants.out
 */
 
 enum bool { false, true };
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/ptr.i b/src/plugins/e-acsl/tests/e-acsl-runtime/ptr.i
index e6864b08f8d..3905d46925f 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/ptr.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/ptr.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: pointers and pointer arithmetic
-   EXECNOW: LOG gen_ptr.c BIN gen_ptr.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/ptr.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_ptr.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_ptr.out -lgmp ./tests/e-acsl-runtime/result/gen_ptr.c && ./tests/e-acsl-runtime/result/gen_ptr.out
+   EXECNOW: LOG gen_ptr.c BIN gen_ptr.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/ptr.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_ptr.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_ptr.out ./tests/e-acsl-runtime/result/gen_ptr.c -lgmp && ./tests/e-acsl-runtime/result/gen_ptr.out
 */
 
 int main(void) {
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/sizeof.i b/src/plugins/e-acsl/tests/e-acsl-runtime/sizeof.i
index f56d5a47027..7c701fe1de3 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/sizeof.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/sizeof.i
@@ -1,10 +1,11 @@
 /* run.config
    COMMENT: sizeof
-   EXECNOW: LOG gen_sizeof.c BIN gen_sizeof.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/sizeof.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_sizeof.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_sizeof.out -lgmp ./tests/e-acsl-runtime/result/gen_sizeof.c
+   EXECNOW: LOG gen_sizeof.c BIN gen_sizeof.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/sizeof.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_sizeof.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_sizeof.out ./tests/e-acsl-runtime/result/gen_sizeof.c -lgmp && ./tests/e-acsl-runtime/result/gen_sizeof.out
 */
 
-void main() {
+int main(void) {
   int x = 0;
   /*@ assert sizeof(int) == sizeof(x); */ ;
   /*@ assert sizeof("totototototo") == sizeof(char *); */ ;
+  return 0;
 }
diff --git a/src/plugins/e-acsl/tests/e-acsl-runtime/stmt_contract.i b/src/plugins/e-acsl/tests/e-acsl-runtime/stmt_contract.i
index a7e13016e8e..60111c14b3f 100644
--- a/src/plugins/e-acsl/tests/e-acsl-runtime/stmt_contract.i
+++ b/src/plugins/e-acsl/tests/e-acsl-runtime/stmt_contract.i
@@ -1,6 +1,6 @@
 /* run.config
    COMMENT: stmt contract
-   EXECNOW: LOG gen_stmt_contract.c BIN gen_stmt_contract.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/stmt_contract.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_stmt_contract.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_stmt_contract.out -lgmp ./tests/e-acsl-runtime/result/gen_stmt_contract.c && ./tests/e-acsl-runtime/result/gen_stmt_contract.out
+   EXECNOW: LOG gen_stmt_contract.c BIN gen_stmt_contract.out FRAMAC_SHARE=./share @frama-c@ ./tests/e-acsl-runtime/stmt_contract.i -e-acsl-project p -e-acsl-include-headers -then-on p -print -ocode ./tests/e-acsl-runtime/result/gen_stmt_contract.c > /dev/null && gcc -o ./tests/e-acsl-runtime/result/gen_stmt_contract.out ./tests/e-acsl-runtime/result/gen_stmt_contract.c -lgmp && ./tests/e-acsl-runtime/result/gen_stmt_contract.out
 */
 int main(void) {
   int x = 0, y = 2;
diff --git a/src/plugins/e-acsl/visit.ml b/src/plugins/e-acsl/visit.ml
index b791937f817..d589571a43e 100644
--- a/src/plugins/e-acsl/visit.ml
+++ b/src/plugins/e-acsl/visit.ml
@@ -123,8 +123,8 @@ let name_of_mpz_arith_bop = function
   | PlusA -> "mpz_add"
   | MinusA -> "mpz_sub"
   | Mult -> "mpz_mul"
-  | Div -> "mpz_cdiv_q"
-  | Mod -> "mpz_mod_ui"
+  | Div -> "mpz_tdiv_q"
+  | Mod -> "mpz_tdiv_r"
   | Lt | Gt | Le | Ge | Eq | Ne | BAnd | BXor | BOr | LAnd | LOr
   | Shiftlt | Shiftrt | PlusPI | IndexPI | MinusPI | MinusPP -> assert false
 
@@ -297,8 +297,9 @@ and context_insensitive_term_to_exp env t =
   | Tlambda _ -> Misc.not_yet "functional"
   | TDataCons _ -> Misc.not_yet "constructor"
   | Tif _ -> Misc.not_yet "conditional"
-  | Tat(t', StmtLabel { contents = stmt } (*_label*)) ->
-(*    Options.feedback "proceeding term %a" Term.pretty t;*)
+  | Tat(t', label) ->
+    let stmt = Env.stmt_of_label env label in
+    (*    Options.feedback "proceeding term %a" Term.pretty t;*)
     let ty = t'.term_type in
     let e, env = term_to_exp (Env.push env) ty t' in
     let new_v = ref None in
@@ -343,7 +344,6 @@ and context_insensitive_term_to_exp env t =
     let new_stmt = Visitor.visitFramacStmt o (get_stmt bhv stmt) in
     set_stmt bhv stmt new_stmt;
     res, !env_ref, false
-  | Tat(_t, LogicLabel(_, _label)) -> Misc.not_yet "builtin logic label in \\at"
   | Tbase_addr _ -> Misc.not_yet "\\base_addr"
   | Tblock_length _ -> Misc.not_yet "\\block_length"
   | Tnull -> mkCast (zero ~loc) (TPtr(TVoid [], [])), env, false
-- 
GitLab