From f843d6b4d4d4d9fa3f0715d6999c61b6152aafca Mon Sep 17 00:00:00 2001
From: Erwan Jahier <jahier@imag.fr>
Date: Wed, 25 Feb 2009 14:11:12 +0100
Subject: [PATCH] Fixing ec the backend (cont'): add parenthesis around pre
 arguments.

---
 src/lazyCompiler.ml      |    2 +-
 src/licDump.ml           |    4 +-
 src/structArrayExpand.ml |    2 +-
 src/test/test.res.exp    | 1190 +++++++++++++++++++-------------------
 4 files changed, 599 insertions(+), 599 deletions(-)

diff --git a/src/lazyCompiler.ml b/src/lazyCompiler.ml
index 17664303..a34c8919 100644
--- a/src/lazyCompiler.ml
+++ b/src/lazyCompiler.ml
@@ -1,4 +1,4 @@
-(** Time-stamp: <modified the 24/02/2009 (at 17:35) by Erwan Jahier> *)
+(** Time-stamp: <modified the 25/02/2009 (at 13:56) by Erwan Jahier> *)
 
 
 open Lxm
diff --git a/src/licDump.ml b/src/licDump.ml
index 2490d9cf..02e07cd0 100644
--- a/src/licDump.ml
+++ b/src/licDump.ml
@@ -1,4 +1,4 @@
-(** Time-stamp: <modified the 25/02/2009 (at 10:33) by Erwan Jahier> *)
+(** Time-stamp: <modified the 25/02/2009 (at 14:10) by Erwan Jahier> *)
 
 open Printf
 open Lxm
@@ -356,7 +356,7 @@ and (string_of_by_pos_op_eff: Eff.by_pos_op srcflagged -> Eff.val_exp list -> st
 	      ((string_of_node_key_rec nee.it.node_key_eff) ^ (tuple_par vel))
 	  )
 	| IDENT idref, _ -> Ident.string_of_idref idref
-	| PRE, _ -> "pre "  ^ (tuple vel)
+	| PRE, _ -> "pre "  ^ (tuple_par vel)
 	| ARROW, [ve1; ve2] -> 
 	    (string_of_val_exp_eff ve1) ^ " -> " ^ (string_of_val_exp_eff ve2)
 	| FBY, [ve1; ve2] -> 
diff --git a/src/structArrayExpand.ml b/src/structArrayExpand.ml
index 59610bb1..8d312c86 100644
--- a/src/structArrayExpand.ml
+++ b/src/structArrayExpand.ml
@@ -1,4 +1,4 @@
-(** Time-stamp: <modified the 25/02/2009 (at 10:34) by Erwan Jahier> *)
+(** Time-stamp: <modified the 25/02/2009 (at 14:04) by Erwan Jahier> *)
 
 (* Replace structures and arrays by as many variables as necessary.
    Since structures can be recursive, it migth be a lot of new variables...
diff --git a/src/test/test.res.exp b/src/test/test.res.exp
index 5fcb7393..b1643979 100644
--- a/src/test/test.res.exp
+++ b/src/test/test.res.exp
@@ -106,7 +106,7 @@ var
    _v3:int;
 let
    PN = init -> _v1;
-   _v1 = pre N;
+   _v1 = pre (N);
    N =  if reset then init else _v3;
    _v2 = PN + incr;
    _v3 =  if X then _v2 else PN;
@@ -136,7 +136,7 @@ var
    _v3:bool;
 let
    Y = false -> _v3;
-   _v1 = pre X;
+   _v1 = pre (X);
    _v2 = not _v1;
    _v3 = X and _v2;
 tel
@@ -154,7 +154,7 @@ var
    _v3:bool;
 let
    Y = false -> _v3;
-   _v1 = pre X;
+   _v1 = pre (X);
    _v2 = not _v1;
    _v3 = X and _v2;
 tel
@@ -226,9 +226,9 @@ var
 let
    nat =  if _v1 then Int8::zero else _v5;
    _v1 = true -> reset;
-   _v2 = pre nat;
+   _v2 = pre (nat);
    _v3 = Int8::incr(_v2);
-   _v4 = pre nat;
+   _v4 = pre (nat);
    _v5 =  if evt then _v3 else _v4;
 tel
 -- end of node mainPack::Nat
@@ -543,9 +543,9 @@ var
 let
    date = 0 -> _v5;
    _v1 = etat2 or etat3;
-   _v2 = pre etat1;
+   _v2 = pre (etat1);
    _v3 = _v1 and _v2;
-   _v4 = pre date;
+   _v4 = pre (date);
    _v5 =  if _v3 then count else _v4;
    chgt = false -> _v24;
    _v6 = not clic;
@@ -574,107 +574,107 @@ let
    _v28 = _v27 and B3;
    _v29 = not _v28;
    prev = 0 -> _v36;
-   _v30 = pre B1;
-   _v31 = pre B2;
-   _v32 = pre B3;
-   _v33 = pre prev;
+   _v30 = pre (B1);
+   _v31 = pre (B2);
+   _v32 = pre (B3);
+   _v33 = pre (prev);
    _v34 =  if _v32 then 3 else _v33;
    _v35 =  if _v31 then 2 else _v34;
    _v36 =  if _v30 then 1 else _v35;
    fin_tps = false -> _v41;
-   _v37 = pre count;
+   _v37 = pre (count);
    _v38 = _v37 > 6;
-   _v39 = pre count;
+   _v39 = pre (count);
    _v40 = _v39 > 7;
    _v41 =  if TOP then _v38 else _v40;
    fin_tps2 = false -> _v46;
-   _v42 = pre count;
+   _v42 = pre (count);
    _v43 = _v42 > 4;
-   _v44 = pre count;
+   _v44 = pre (count);
    _v45 = _v44 > 5;
    _v46 =  if TOP then _v43 else _v45;
    count = 0 -> _v76;
-   _v47 = pre etat0;
-   _v48 = pre etat1;
+   _v47 = pre (etat0);
+   _v48 = pre (etat1);
    _v49 = _v48 and chgt;
    _v50 = _v47 or _v49;
-   _v51 = pre etat2;
+   _v51 = pre (etat2);
    _v52 = _v51 and chgt;
    _v53 = _v50 or _v52;
-   _v54 = pre etat3;
+   _v54 = pre (etat3);
    _v55 = _v54 and chgt;
    _v56 = _v53 or _v55;
    _v57 = etat1 and _v56;
    _v58 =  if TOP then 1 else 0;
-   _v59 = pre etat2;
-   _v60 = pre etat3;
+   _v59 = pre (etat2);
+   _v60 = pre (etat3);
    _v61 = _v59 or _v60;
    _v62 = etat1 and _v61;
-   _v63 = pre count;
-   _v64 = pre date;
+   _v63 = pre (count);
+   _v64 = pre (date);
    _v65 = _v63 - _v64;
    _v66 = _v65 + 1;
-   _v67 = pre count;
-   _v68 = pre date;
+   _v67 = pre (count);
+   _v68 = pre (date);
    _v69 = _v67 - _v68;
    _v70 =  if TOP then _v66 else _v69;
-   _v71 = pre count;
+   _v71 = pre (count);
    _v72 = _v71 + 1;
-   _v73 = pre count;
+   _v73 = pre (count);
    _v74 =  if TOP then _v72 else _v73;
    _v75 =  if _v62 then _v70 else _v74;
    _v76 =  if _v57 then _v58 else _v75;
    etat0 = true -> _v98;
-   _v77 = pre etat1;
+   _v77 = pre (etat1);
    _v78 = _v77 and fin_tps;
    _v79 = not clic;
    _v80 = _v78 and _v79;
-   _v81 = pre etat2;
+   _v81 = pre (etat2);
    _v82 = _v81 and clic;
    _v83 = not chgt;
    _v84 = _v82 and _v83;
    _v85 = _v80 or _v84;
-   _v86 = pre etat2;
+   _v86 = pre (etat2);
    _v87 = _v86 and fin_tps;
    _v88 = _v85 or _v87;
-   _v89 = pre etat3;
+   _v89 = pre (etat3);
    _v90 = _v89 and clic;
    _v91 = not chgt;
    _v92 = _v90 and _v91;
    _v93 = _v88 or _v92;
-   _v94 = pre etat0;
+   _v94 = pre (etat0);
    _v95 = not clic;
    _v96 = _v94 and _v95;
    _v97 = _v93 or _v96;
    _v98 =  if _v97 then true else false;
    etat1 = false -> _v117;
-   _v99 = pre etat0;
+   _v99 = pre (etat0);
    _v100 = _v99 and clic;
-   _v101 = pre etat2;
+   _v101 = pre (etat2);
    _v102 = _v101 and chgt;
    _v103 = _v100 or _v102;
-   _v104 = pre etat3;
+   _v104 = pre (etat3);
    _v105 = chgt or fin_tps;
    _v106 = _v104 and _v105;
    _v107 = _v103 or _v106;
-   _v108 = pre etat1;
+   _v108 = pre (etat1);
    _v109 = not clic;
    _v110 = _v108 and _v109;
    _v111 = not fin_tps;
    _v112 = _v110 and _v111;
    _v113 = _v107 or _v112;
-   _v114 = pre etat1;
+   _v114 = pre (etat1);
    _v115 = _v114 and chgt;
    _v116 = _v113 or _v115;
    _v117 =  if _v116 then true else false;
    etat2 = false -> _v130;
-   _v118 = pre etat1;
+   _v118 = pre (etat1);
    _v119 = _v118 and clic;
    _v120 = not fin_tps2;
    _v121 = _v119 and _v120;
    _v122 = not chgt;
    _v123 = _v121 and _v122;
-   _v124 = pre etat2;
+   _v124 = pre (etat2);
    _v125 = not clic;
    _v126 = _v124 and _v125;
    _v127 = not fin_tps;
@@ -682,12 +682,12 @@ let
    _v129 = _v123 or _v128;
    _v130 =  if _v129 then true else false;
    etat3 = false -> _v142;
-   _v131 = pre etat1;
+   _v131 = pre (etat1);
    _v132 = _v131 and clic;
    _v133 = _v132 and fin_tps2;
    _v134 = not chgt;
    _v135 = _v133 and _v134;
-   _v136 = pre etat3;
+   _v136 = pre (etat3);
    _v137 = not clic;
    _v138 = _v136 and _v137;
    _v139 = not fin_tps;
@@ -695,51 +695,51 @@ let
    _v141 = _v135 or _v140;
    _v142 =  if _v141 then true else false;
    BOUTON = 0 -> _v152;
-   _v143 = pre SIMPLE_2;
+   _v143 = pre (SIMPLE_2);
    _v144 = not _v143;
    _v145 = SIMPLE and _v144;
    _v146 = _v145 or DOUBLE;
    _v147 = _v146 or TRIPLE;
-   _v148 = pre SIMPLE_2;
+   _v148 = pre (SIMPLE_2);
    _v149 = SIMPLE and _v148;
-   _v150 = pre prev;
+   _v150 = pre (prev);
    _v151 =  if _v149 then _v150 else 0;
    _v152 =  if _v147 then prev else _v151;
    SIMPLE = false -> _v167;
-   _v153 = pre etat1;
+   _v153 = pre (etat1);
    _v154 = _v153 and etat0;
-   _v155 = pre etat1;
+   _v155 = pre (etat1);
    _v156 = _v155 and chgt;
    _v157 = _v154 or _v156;
-   _v158 = pre etat3;
+   _v158 = pre (etat3);
    _v159 = _v158 and etat1;
    _v160 = _v159 and fin_tps;
    _v161 = _v157 or _v160;
-   _v162 = pre etat3;
+   _v162 = pre (etat3);
    _v163 = _v162 and etat1;
    _v164 = _v163 and chgt;
    _v165 = _v161 or _v164;
-   _v166 = pre SIMPLE_2;
+   _v166 = pre (SIMPLE_2);
    _v167 = _v165 or _v166;
    SIMPLE_2 = false -> _v175;
-   _v168 = pre etat3;
+   _v168 = pre (etat3);
    _v169 = _v168 and etat1;
    _v170 = _v169 and chgt;
-   _v171 = pre etat1;
-   _v172 = pre SIMPLE_2;
+   _v171 = pre (etat1);
+   _v172 = pre (SIMPLE_2);
    _v173 = _v171 and _v172;
    _v174 = _v173 and chgt;
    _v175 = _v170 or _v174;
    DOUBLE = false -> _v180;
-   _v176 = pre etat2;
+   _v176 = pre (etat2);
    _v177 = _v176 and chgt;
-   _v178 = pre etat2;
+   _v178 = pre (etat2);
    _v179 = _v178 and fin_tps;
    _v180 = _v177 or _v179;
    TRIPLE = false -> _v189;
-   _v181 = pre etat3;
+   _v181 = pre (etat3);
    _v182 = _v181 and etat0;
-   _v183 = pre etat2;
+   _v183 = pre (etat2);
    _v184 = not fin_tps;
    _v185 = _v183 and _v184;
    _v186 = not chgt;
@@ -765,9 +765,9 @@ var
 let
    level = count > 0;
    count =  if set then delay else _v5;
-   _v1 = pre level;
+   _v1 = pre (level);
    _v2 = false -> _v1;
-   _v3 = pre count;
+   _v3 = pre (count);
    _v4 = _v3 - 1;
    _v5 =  if _v2 then _v4 else 0;
 tel
@@ -794,10 +794,10 @@ var
    _v6:bool;
 let
    level = initial -> _v6;
-   _v1 = pre level;
+   _v1 = pre (level);
    _v2 = not _v1;
    _v3 = set and _v2;
-   _v4 = pre level;
+   _v4 = pre (level);
    _v5 =  if reset then false else _v4;
    _v6 =  if _v3 then true else _v5;
 tel
@@ -821,7 +821,7 @@ var
    _v3:bool;
 let
    level = initial -> _v3;
-   _v1 = pre level;
+   _v1 = pre (level);
    _v2 =  if reset then false else _v1;
    _v3 =  if set then true else _v2;
 tel
@@ -843,9 +843,9 @@ var
 let
    level = count > 0;
    count =  if set then delay else _v5;
-   _v1 = pre level;
+   _v1 = pre (level);
    _v2 = false -> _v1;
-   _v3 = pre count;
+   _v3 = pre (count);
    _v4 = _v3 - 1;
    _v5 =  if _v2 then _v4 else 0;
 tel
@@ -898,12 +898,12 @@ var
 let
    level = count > 0;
    count =  if set then delay else _v8;
-   _v1 = pre level;
+   _v1 = pre (level);
    _v2 = false -> _v1;
-   _v3 = pre count;
+   _v3 = pre (count);
    _v4 = _v3 - 1;
    _v5 =  if _v2 then _v4 else 0;
-   _v6 = pre count;
+   _v6 = pre (count);
    _v7 = 0 -> _v6;
    _v8 =  if second then _v5 else _v7;
 tel
@@ -963,12 +963,12 @@ var
    _v8:bool;
 let
    state = init -> _v8;
-   _v1 = pre state;
+   _v1 = pre (state);
    _v2 = not _v1;
    _v3 = set and _v2;
-   _v4 = pre state;
+   _v4 = pre (state);
    _v5 = reset and _v4;
-   _v6 = pre state;
+   _v6 = pre (state);
    _v7 =  if _v5 then false else _v6;
    _v8 =  if _v3 then true else _v7;
 tel
@@ -986,10 +986,10 @@ var
 let
    n = 0 -> _v6;
    quotient = true -> _v7;
-   _v1 = pre n;
+   _v1 = pre (n);
    _v2 = _v1 + 1;
    _v3 = _v2 = scale;
-   _v4 = pre n;
+   _v4 = pre (n);
    _v5 = _v4 + 1;
    _v6 =  if _v3 then 0 else _v5;
    _v7 =  if _v3 then true else false;
@@ -1094,7 +1094,7 @@ var
    _v3:bool;
 let
    edge = b -> _v3;
-   _v1 = pre b;
+   _v1 = pre (b);
    _v2 = not _v1;
    _v3 = b and _v2;
 tel
@@ -1182,29 +1182,29 @@ let
    _v1 = Watch::COMPARE_WATCH_ALARM_TIME(watch_time, time);
    status = internal_status = 1;
    internal_status = 0 -> _v12;
-   _v2 = pre internal_status;
+   _v2 = pre (internal_status);
    _v3 = _v2 = 0;
    _v4 =  if _v3 then 1 else 0;
    _v5 = not in_set;
    _v6 = Watch::EDGE(_v5);
-   _v7 = pre internal_status;
+   _v7 = pre (internal_status);
    _v8 = _v7 = 0;
    _v9 = _v6 and _v8;
-   _v10 = pre internal_status;
+   _v10 = pre (internal_status);
    _v11 =  if _v9 then 1 else _v10;
    _v12 =  if toggle_alarm then _v4 else _v11;
    count = 0 -> _v21;
-   _v13 = pre count;
+   _v13 = pre (count);
    _v14 = _v13 <> 0;
    _v15 = _v14 and second;
-   _v16 = pre count;
+   _v16 = pre (count);
    _v17 = _v16 - 1;
-   _v18 = pre count;
+   _v18 = pre (count);
    _v19 = 0 -> _v18;
    _v20 =  if _v15 then _v17 else _v19;
    _v21 =  if start_beeping then Watch::ALARM_DURATION else _v20;
    time_out = false -> _v25;
-   _v22 = pre count;
+   _v22 = pre (count);
    _v23 = _v22 <> 0;
    _v24 = count = 0;
    _v25 = _v23 and _v24;
@@ -1213,20 +1213,20 @@ let
    _v27 = Watch::TWO_STATES(false, start_beeping, _v26);
    _v28 = _v27 and second;
    time = Watch::INITIAL_ALARM_TIME -> _v35;
-   _v29 = pre time;
+   _v29 = pre (time);
    _v30 = Watch::TOGGLE_24H_IN_ALARM_MODE(_v29);
-   _v31 = pre time;
+   _v31 = pre (time);
    _v32 = Watch::SET_ALARM_TIME(_v31, position_set);
-   _v33 = pre time;
+   _v33 = pre (time);
    _v34 =  if set then _v32 else _v33;
    _v35 =  if toggle_24h then _v30 else _v34;
    enhance = position_set;
    position_set =  if _v37 then Watch::INITIAL_ALARM_POSITION else _v41;
    _v36 = Watch::EDGE(in_set);
    _v37 = true -> _v36;
-   _v38 = pre position_set;
+   _v38 = pre (position_set);
    _v39 = Watch::NEXT_ALARM_TIME_POSITION(_v38);
-   _v40 = pre position_set;
+   _v40 = pre (position_set);
    _v41 =  if next_position then _v39 else _v40;
 tel
 -- end of node Watch::ALARM
@@ -1342,10 +1342,10 @@ var
    _v35:_Watch::WATCH_TIME_POSITION;
 let
    internal_chime_is_set = 0 -> _v5;
-   _v1 = pre internal_chime_is_set;
+   _v1 = pre (internal_chime_is_set);
    _v2 = _v1 = 0;
    _v3 =  if _v2 then 1 else 0;
-   _v4 = pre internal_chime_is_set;
+   _v4 = pre (internal_chime_is_set);
    _v5 =  if toggle_chime then _v3 else _v4;
    chime_is_set = internal_chime_is_set = 1;
    beep =  if second then _v8 else 0;
@@ -1354,23 +1354,23 @@ let
    _v8 =  if _v7 then 2 else 0;
    time = Watch::INITIAL_WATCH_TIME -> _v29;
    _v9 = not in_set;
-   _v10 = pre time;
+   _v10 = pre (time);
    _v11 = Watch::INCREMENT_WATCH_TIME(_v10);
-   _v12 = pre time;
+   _v12 = pre (time);
    _v13 = Watch::TOGGLE_24H_IN_WATCH_MODE(_v12);
    _v14 = not in_set;
    _v15 = Watch::EDGE(_v14);
-   _v16 = pre time;
+   _v16 = pre (time);
    _v17 = Watch::CONFIRM_TIME(_v16);
-   _v18 = pre time;
+   _v18 = pre (time);
    _v19 =  if _v15 then _v17 else _v18;
    _v20 =  if toggle_24h then _v13 else _v19;
    _v21 =  if second then _v11 else _v20;
-   _v22 = pre time;
+   _v22 = pre (time);
    _v23 = Watch::INCREMENT_WATCH_TIME_IN_SET_MODE(_v22, position_set);
-   _v24 = pre time;
+   _v24 = pre (time);
    _v25 = Watch::SET_WATCH_TIME(_v24, position_set);
-   _v26 = pre time;
+   _v26 = pre (time);
    _v27 =  if set then _v25 else _v26;
    _v28 =  if second then _v23 else _v27;
    _v29 =  if _v9 then _v21 else _v28;
@@ -1378,9 +1378,9 @@ let
    position_set =  if _v31 then Watch::INITIAL_WATCH_POSITION else _v35;
    _v30 = Watch::EDGE(in_set);
    _v31 = true -> _v30;
-   _v32 = pre position_set;
+   _v32 = pre (position_set);
    _v33 = Watch::NEXT_WATCH_TIME_POSITION(_v32);
-   _v34 = pre position_set;
+   _v34 = pre (position_set);
    _v35 =  if next_position then _v33 else _v34;
 tel
 -- end of node Watch::WATCH
@@ -1424,7 +1424,7 @@ let
    _v1 = not run_state;
    _v2 = not lap_state;
    _v3 = _v1 and _v2;
-   _v4 = pre _v3;
+   _v4 = pre (_v3);
    _v5 = lap and _v4;
    run_state = Watch::TWO_STATES(false, start_stop, start_stop);
    lap_state = Watch::TWO_STATES(false, _v6, lap);
@@ -1434,9 +1434,9 @@ let
    internal_time =  if _v8 then Watch::INITIAL_STOPWATCH_TIME else _v13;
    _v8 = true -> reset;
    _v9 = run_state and hs;
-   _v10 = pre internal_time;
+   _v10 = pre (internal_time);
    _v11 = Watch::INCREMENT_STOPWATCH_TIME(_v10);
-   _v12 = pre internal_time;
+   _v12 = pre (internal_time);
    _v13 =  if _v9 then _v11 else _v12;
    must_beep =  if start_stop then true else _v16;
    _v14 = hs and run_state;
@@ -1506,41 +1506,41 @@ var
    _v34:bool;
 let
    mode_is_watch = true -> _v9;
-   _v1 = pre mode_is_watch;
-   _v2 = pre mode_is_set_watch;
-   _v3 = pre mode_is_stopwatch;
-   _v4 = pre mode_is_set_alarm;
+   _v1 = pre (mode_is_watch);
+   _v2 = pre (mode_is_set_watch);
+   _v3 = pre (mode_is_stopwatch);
+   _v4 = pre (mode_is_set_alarm);
    _v5 = not _v4;
    _v6 =  if _v3 then false else _v5;
    _v7 =  if _v1 then _v2 else _v6;
-   _v8 = pre mode_is_watch;
+   _v8 = pre (mode_is_watch);
    _v9 =  if LL then _v7 else _v8;
    mode_is_stopwatch = false -> _v15;
-   _v10 = pre mode_is_watch;
-   _v11 = pre mode_is_set_watch;
+   _v10 = pre (mode_is_watch);
+   _v11 = pre (mode_is_set_watch);
    _v12 = not _v11;
    _v13 =  if _v10 then _v12 else false;
-   _v14 = pre mode_is_stopwatch;
+   _v14 = pre (mode_is_stopwatch);
    _v15 =  if LL then _v13 else _v14;
    mode_is_alarm = false -> _v22;
-   _v16 = pre mode_is_watch;
-   _v17 = pre mode_is_stopwatch;
-   _v18 = pre mode_is_set_alarm;
+   _v16 = pre (mode_is_watch);
+   _v17 = pre (mode_is_stopwatch);
+   _v18 = pre (mode_is_set_alarm);
    _v19 =  if _v17 then true else _v18;
    _v20 =  if _v16 then false else _v19;
-   _v21 = pre mode_is_alarm;
+   _v21 = pre (mode_is_alarm);
    _v22 =  if LL then _v20 else _v21;
    mode_is_set_watch =  if mode_is_watch then _v28 else false;
-   _v23 = pre mode_is_set_watch;
+   _v23 = pre (mode_is_set_watch);
    _v24 = not _v23;
    _v25 = false -> _v24;
-   _v26 = pre mode_is_set_watch;
+   _v26 = pre (mode_is_set_watch);
    _v27 = false -> _v26;
    _v28 =  if UL then _v25 else _v27;
    mode_is_set_alarm =  if mode_is_alarm then _v32 else false;
-   _v29 = pre mode_is_set_alarm;
+   _v29 = pre (mode_is_set_alarm);
    _v30 = not _v29;
-   _v31 = pre mode_is_set_alarm;
+   _v31 = pre (mode_is_set_alarm);
    _v32 =  if UL then _v30 else _v31;
    mode_is_standard_watch = mode_is_watch and _v33;
    _v33 = not mode_is_set_watch;
@@ -1656,11 +1656,11 @@ var
 let
    more_recent =  if evt then true else _v10;
    deadline =  if evt then 0 else _v11;
-   _v1 = pre more_recent;
+   _v1 = pre (more_recent);
    _v2 = deadline < delay;
-   _v3 = pre deadline;
+   _v3 = pre (deadline);
    _v4 = _v3 + 1;
-   _v5 = pre deadline;
+   _v5 = pre (deadline);
    _v6 =  if _v1 then _v2 else false;
    _v7 =  if _v1 then _v4 else _v5;
    _v8 =  if evt then true else _v6;
@@ -1696,14 +1696,14 @@ var
 let
    m = _v1 -> _v3;
    _v1 = 0 when c;
-   _v2 = pre m;
+   _v2 = pre (m);
    _v3 = _v2 + n;
    d = c and _v5;
    _v4 = current (m);
    _v5 = _v4 <= 10;
    p = _v6 -> _v9;
    _v6 = 0 when d;
-   _v7 = pre p;
+   _v7 = pre (p);
    _v8 = 1 when d;
    _v9 = _v7 + _v8;
 tel
@@ -1868,43 +1868,43 @@ let
    _v4 = not _v3;
    V_V112_X = false -> _v6;
    _v5 = I_y or V_V112_X;
-   _v6 = pre _v5;
+   _v6 = pre (_v5);
    V_V111_X =  if I_y then I_x else _v9;
-   _v7 = pre V_V111_X;
+   _v7 = pre (V_V111_X);
    _v8 = I_x or _v7;
    _v9 =  if V_V112_X then _v8 else true;
    V_V119_X = false -> _v11;
    _v10 = I_y or V_V119_X;
-   _v11 = pre _v10;
+   _v11 = pre (_v10);
    V_V118_X =  if I_y then I_x else _v14;
-   _v12 = pre V_V118_X;
+   _v12 = pre (V_V118_X);
    _v13 = I_x and _v12;
    _v14 =  if V_V119_X then _v13 else true;
    V_V126_X = false -> _v16;
    _v15 = V_V118_X or V_V126_X;
-   _v16 = pre _v15;
+   _v16 = pre (_v15);
    V_V125_X =  if V_V118_X then I_z else _v19;
-   _v17 = pre V_V125_X;
+   _v17 = pre (V_V125_X);
    _v18 = I_z or _v17;
    _v19 =  if V_V126_X then _v18 else true;
    V_V135_A_forbiden = false -> _v28;
-   _v20 = pre V_V111_X;
+   _v20 = pre (V_V111_X);
    _v21 = not V_V111_X;
    _v22 = _v20 and _v21;
-   _v23 = pre V_V125_X;
+   _v23 = pre (V_V125_X);
    _v24 = not V_V125_X;
    _v25 = _v23 and _v24;
-   _v26 = pre V_V135_A_forbiden;
+   _v26 = pre (V_V135_A_forbiden);
    _v27 =  if _v25 then false else _v26;
    _v28 =  if _v22 then true else _v27;
    V_V136_B_forbiden = true -> _v37;
-   _v29 = pre V_V125_X;
+   _v29 = pre (V_V125_X);
    _v30 = not V_V125_X;
    _v31 = _v29 and _v30;
-   _v32 = pre V_V111_X;
+   _v32 = pre (V_V111_X);
    _v33 = not V_V111_X;
    _v34 = _v32 and _v33;
-   _v35 = pre V_V136_B_forbiden;
+   _v35 = pre (V_V136_B_forbiden);
    _v36 =  if _v34 then false else _v35;
    _v37 =  if _v31 then true else _v36;
 tel
@@ -1934,19 +1934,19 @@ var
    _v14:bool;
 let
    scie = 0 -> _v7;
-   _v1 = pre scie;
+   _v1 = pre (scie);
    _v2 = _v1 + 1;
-   _v3 = pre scie;
+   _v3 = pre (scie);
    _v4 = _v3 - 1;
    _v5 =  if V10_go_up then _v2 else _v4;
-   _v6 = pre scie;
+   _v6 = pre (scie);
    _v7 =  if evt then _v5 else _v6;
    V10_go_up = true -> _v14;
-   _v8 = pre scie;
+   _v8 = pre (scie);
    _v9 = _v8 >= 5;
-   _v10 = pre scie;
+   _v10 = pre (scie);
    _v11 = _v10 <= 0;
-   _v12 = pre V10_go_up;
+   _v12 = pre (V10_go_up);
    _v13 =  if _v11 then true else _v12;
    _v14 =  if _v9 then false else _v13;
 tel
@@ -1963,7 +1963,7 @@ var
    _v2:bool;
 let
    after = x or _v2;
-   _v1 = pre after;
+   _v1 = pre (after);
    _v2 = false -> _v1;
 tel
 -- end of node after::after
@@ -1983,7 +1983,7 @@ var
    _v3:bool;
 let
    edge = false -> _v3;
-   _v1 = pre in;
+   _v1 = pre (in);
    _v2 = not _v1;
    _v3 = in and _v2;
 tel
@@ -2006,12 +2006,12 @@ var
    _v8:bool;
 let
    etat = init -> _v8;
-   _v1 = pre etat;
+   _v1 = pre (etat);
    _v2 = not _v1;
    _v3 = set and _v2;
-   _v4 = pre etat;
+   _v4 = pre (etat);
    _v5 = reset and _v4;
-   _v6 = pre etat;
+   _v6 = pre (etat);
    _v7 =  if _v5 then false else _v6;
    _v8 =  if _v3 then true else _v7;
 tel
@@ -2031,9 +2031,9 @@ var
    _v5:int;
 let
    n = 0 -> _v5;
-   _v1 = pre n;
+   _v1 = pre (n);
    _v2 = _v1 - 1;
-   _v3 = pre n;
+   _v3 = pre (n);
    _v4 =  if decr then _v2 else _v3;
    _v5 =  if init then val_init else _v4;
 tel
@@ -2104,42 +2104,42 @@ var
 let
    assert(#(MA, code));
    en_marche = alarme::bascule(false, MA, _v2);
-   _v1 = pre demande_entree;
+   _v1 = pre (demande_entree);
    _v2 = MA and _v1;
    demande_entree = alarme::bascule(false, code, _v4);
-   _v3 = pre tps_vigilence;
+   _v3 = pre (tps_vigilence);
    _v4 = _v3 = 0;
    vigilence_partielle = alarme::bascule(false, _v7, _v9);
    _v5 = alarme::edge(en_marche);
    _v6 = alarme::edge(demande_entree);
    _v7 = _v5 or _v6;
-   _v8 = pre tps_vigilence;
+   _v8 = pre (tps_vigilence);
    _v9 = _v8 = 0;
    tps_vigilence = alarme::decompte(_v12, 3, _v15);
    _v10 = alarme::edge(en_marche);
    _v11 = alarme::edge(demande_entree);
    _v12 = _v10 or _v11;
-   _v13 = pre tps_vigilence;
+   _v13 = pre (tps_vigilence);
    _v14 = _v13 > 0;
    _v15 = en_marche and _v14;
    tps_alarme = alarme::decompte(_v16, 6, _v20);
    _v16 = alarme::edge(alarme);
-   _v17 = pre alarme;
-   _v18 = pre tps_alarme;
+   _v17 = pre (alarme);
+   _v18 = pre (tps_alarme);
    _v19 = _v18 > 0;
    _v20 = _v17 and _v19;
    reprise = alarme::bascule(false, _v24, _v26);
-   _v21 = pre alarme;
-   _v22 = pre tps_alarme;
+   _v21 = pre (alarme);
+   _v22 = pre (tps_alarme);
    _v23 = _v22 = 0;
    _v24 = _v21 and _v23;
-   _v25 = pre tps_reprise;
+   _v25 = pre (tps_reprise);
    _v26 = _v25 = 0;
    tps_reprise = alarme::decompte(_v27, 4, _v31);
    _v27 = alarme::edge(reprise);
-   _v28 = pre reprise;
+   _v28 = pre (reprise);
    _v29 = tps_reprise > 0;
-   _v30 = pre _v29;
+   _v30 = pre (_v29);
    _v31 = _v28 and _v30;
    alarme = false -> _v47;
    _v32 = not reprise;
@@ -2148,14 +2148,14 @@ let
    _v35 = pb_tmp and _v34;
    _v36 = pb_hab or _v35;
    _v37 = _v33 and _v36;
-   _v38 = pre alarme;
-   _v39 = pre tps_alarme;
+   _v38 = pre (alarme);
+   _v39 = pre (tps_alarme);
    _v40 = _v39 = 0;
    _v41 = not en_marche;
    _v42 = alarme::edge(_v41);
    _v43 = _v40 or _v42;
    _v44 = _v38 and _v43;
-   _v45 = pre alarme;
+   _v45 = pre (alarme);
    _v46 =  if _v44 then false else _v45;
    _v47 =  if _v37 then true else _v46;
 tel
@@ -2184,12 +2184,12 @@ var
    _v8:bool;
 let
    level = initial -> _v8;
-   _v1 = pre level;
+   _v1 = pre (level);
    _v2 = not _v1;
    _v3 = set and _v2;
-   _v4 = pre level;
+   _v4 = pre (level);
    _v5 = reset and _v4;
-   _v6 = pre level;
+   _v6 = pre (level);
    _v7 =  if _v5 then false else _v6;
    _v8 =  if _v3 then true else _v7;
 tel
@@ -2218,7 +2218,7 @@ let
    _v2 = not request;
    _v3 = token and request;
    new_token = false -> _v9;
-   _v4 = pre token;
+   _v4 = pre (token);
    _v5 = not request;
    _v6 = _v4 and _v5;
    _v7 = not grant;
@@ -2256,13 +2256,13 @@ let
    (grant2, new_token2) = arbitre::process(req2, token2);
    (grant3, new_token3) = arbitre::process(req3, token3);
    token0 = true -> _v1;
-   _v1 = pre new_token3;
+   _v1 = pre (new_token3);
    token1 = false -> _v2;
-   _v2 = pre new_token0;
+   _v2 = pre (new_token0);
    token2 = false -> _v3;
-   _v3 = pre new_token1;
+   _v3 = pre (new_token1);
    token3 = false -> _v4;
-   _v4 = pre new_token2;
+   _v4 = pre (new_token2);
 tel
 -- end of node arbitre::mutex
 
@@ -2321,31 +2321,31 @@ let
    s0 = true -> _v3;
    _v1 = not a;
    _v2 = s0 and _v1;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    s1 = false -> _v7;
    _v4 = s0 and a;
    _v5 = _v4 and x;
    _v6 = s1 or _v5;
-   _v7 = pre _v6;
+   _v7 = pre (_v6);
    s2 = false -> _v12;
    _v8 = s0 and a;
    _v9 = not x;
    _v10 = _v8 and _v9;
    _v11 = s2 or _v10;
-   _v12 = pre _v11;
+   _v12 = pre (_v11);
    y = s0 and a;
    t0 = true -> _v17;
    _v13 = not b;
    _v14 = t0 and _v13;
    _v15 = t1 and b;
    _v16 = _v14 or _v15;
-   _v17 = pre _v16;
+   _v17 = pre (_v16);
    t1 = false -> _v22;
    _v18 = not b;
    _v19 = t1 and _v18;
    _v20 = t0 and b;
    _v21 = _v19 or _v20;
-   _v22 = pre _v21;
+   _v22 = pre (_v21);
    x = t0 and y;
 tel
 -- end of node argos::argos
@@ -2382,7 +2382,7 @@ var
    _v1:int;
 let
    x = _v1 + 1;
-   _v1 = pre x;
+   _v1 = pre (x);
 tel
 -- end of node aux::aux
 
@@ -2404,11 +2404,11 @@ let
    c =  if _v1 then _v2 else _v5;
    d =  if _v1 then _v3 else _v7;
    _v1 = a > 0;
-   _v2 = pre a;
-   _v3 = pre b;
-   _v4 = pre a;
+   _v2 = pre (a);
+   _v3 = pre (b);
+   _v4 = pre (a);
    _v5 = _v4 + 1;
-   _v6 = pre b;
+   _v6 = pre (b);
    _v7 = _v6 + 1;
 tel
 -- end of node aux1::aux1
@@ -2432,15 +2432,15 @@ var
    _v10:bool;
 let
    q = true -> _v5;
-   _v1 = pre r;
+   _v1 = pre (r);
    _v2 = not _v1;
-   _v3 = pre n;
+   _v3 = pre (n);
    _v4 = not _v3;
    _v5 = _v2 and _v4;
    n = false -> _v10;
-   _v6 = pre s;
+   _v6 = pre (s);
    _v7 = not _v6;
-   _v8 = pre q;
+   _v8 = pre (q);
    _v9 = not _v8;
    _v10 = _v7 and _v9;
 tel
@@ -2529,7 +2529,7 @@ var
    _v3:bool;
 let
    y = false -> _v3;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = not _v1;
    _v3 = x and _v2;
 tel
@@ -2637,8 +2637,8 @@ let
    v2 = in when v4;
    v3 = clock::outOnIn(in, v1);
    (v4, v5) = clock::outOnOut(_v2, _v3);
-   _v2 = pre v4;
-   _v3 = pre v4;
+   _v2 = pre (v4);
+   _v3 = pre (v4);
    (v6, v7) = clock::all(v4, v5);
    ok = boolred<<3, 3, 7>>(_v12);
    _v4 = current (v2);
@@ -2677,12 +2677,12 @@ var
    _v8:bool;
 let
    state = init -> _v8;
-   _v1 = pre state;
+   _v1 = pre (state);
    _v2 = not _v1;
    _v3 = set and _v2;
-   _v4 = pre state;
+   _v4 = pre (state);
    _v5 = reset and _v4;
-   _v6 = pre state;
+   _v6 = pre (state);
    _v7 =  if _v5 then false else _v6;
    _v8 =  if _v3 then true else _v7;
 tel
@@ -2700,7 +2700,7 @@ var
    _v3:bool;
 let
    state = init -> _v3;
-   _v1 = pre state;
+   _v1 = pre (state);
    _v2 =  if off then false else _v1;
 tel
 -- end of node cminus::TWO_BUTTONS
@@ -2739,7 +2739,7 @@ var
    _v3:int;
 let
    cpt = _v2 + _v3;
-   _v1 = pre cpt;
+   _v1 = pre (cpt);
    _v2 = 0 -> _v1;
    _v3 =  if evt then 1 else 0;
 tel
@@ -2772,7 +2772,7 @@ var
    _v4:int;
 let
    cpt =  if reset then 0 else _v4;
-   _v1 = pre cpt;
+   _v1 = pre (cpt);
    _v2 = 0 -> _v1;
    _v3 =  if evt then 1 else 0;
    _v4 = _v2 + _v3;
@@ -2863,13 +2863,13 @@ var
    _v6:int;
 let
    u = x -> _v2;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = x + _v1;
    v = 0 -> _v4;
-   _v3 = pre y;
+   _v3 = pre (y);
    _v4 = _v3 + 1;
    y = 0 -> _v6;
-   _v5 = pre v;
+   _v5 = pre (v);
    _v6 = _v5 + 1;
 tel
 -- end of node dep::dep
@@ -2996,58 +2996,58 @@ let
    assert(#(bleu, rouge, vert));
    assert(_v52 or vert);
    direct = false -> _v8;
-   _v1 = pre bleu;
+   _v1 = pre (bleu);
    _v2 = rouge and _v1;
-   _v3 = pre rouge;
+   _v3 = pre (rouge);
    _v4 = vert and _v3;
    _v5 = _v2 or _v4;
-   _v6 = pre vert;
+   _v6 = pre (vert);
    _v7 = bleu and _v6;
    _v8 = _v5 or _v7;
    a_or_i = indet or arret;
    indet = true -> _v31;
-   _v9 = pre rouge;
+   _v9 = pre (rouge);
    _v10 = rouge and _v9;
-   _v11 = pre rouge;
+   _v11 = pre (rouge);
    _v12 = false -> _v11;
-   _v13 = pre _v12;
+   _v13 = pre (_v12);
    _v14 = not _v13;
    _v15 = _v10 and _v14;
-   _v16 = pre bleu;
+   _v16 = pre (bleu);
    _v17 = bleu and _v16;
-   _v18 = pre bleu;
+   _v18 = pre (bleu);
    _v19 = false -> _v18;
-   _v20 = pre _v19;
+   _v20 = pre (_v19);
    _v21 = not _v20;
    _v22 = _v17 and _v21;
    _v23 = _v15 or _v22;
-   _v24 = pre vert;
+   _v24 = pre (vert);
    _v25 = vert and _v24;
-   _v26 = pre vert;
+   _v26 = pre (vert);
    _v27 = false -> _v26;
-   _v28 = pre _v27;
+   _v28 = pre (_v27);
    _v29 = not _v28;
    _v30 = _v25 and _v29;
    _v31 = _v23 or _v30;
    arret = false -> _v51;
-   _v32 = pre rouge;
+   _v32 = pre (rouge);
    _v33 = rouge and _v32;
-   _v34 = pre rouge;
+   _v34 = pre (rouge);
    _v35 = false -> _v34;
-   _v36 = pre _v35;
+   _v36 = pre (_v35);
    _v37 = _v33 and _v36;
-   _v38 = pre bleu;
+   _v38 = pre (bleu);
    _v39 = bleu and _v38;
-   _v40 = pre bleu;
+   _v40 = pre (bleu);
    _v41 = false -> _v40;
-   _v42 = pre _v41;
+   _v42 = pre (_v41);
    _v43 = _v39 and _v42;
    _v44 = _v37 or _v43;
-   _v45 = pre vert;
+   _v45 = pre (vert);
    _v46 = vert and _v45;
-   _v47 = pre vert;
+   _v47 = pre (vert);
    _v48 = false -> _v47;
-   _v49 = pre _v48;
+   _v49 = pre (_v48);
    _v50 = _v46 and _v49;
    _v51 = _v44 or _v50;
    _v52 = bleu or rouge;
@@ -3215,7 +3215,7 @@ var
    _v2:int;
 let
    x = 0 -> _v2;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = _v1 + 1;
 tel
 -- end of node fby::followed_by
@@ -3231,7 +3231,7 @@ var
    _v2:bool;
    _v3:bool;
 let
-   _v1 = pre state;
+   _v1 = pre (state);
    _v2 = init -> _v1;
    _v3 =  if off then false else _v2;
 tel
@@ -3308,7 +3308,7 @@ let
    _v1 = h1[0];
    _v2 = _v1 > 1;
    h1 = current (_v6);
-   _v3 = pre res;
+   _v3 = pre (res);
    _v4 = b1[1];
    _v5 = b1[2];
    _v6 =  if _v3 then _v4 else _v5;
@@ -3365,11 +3365,11 @@ var
    _v3:real;
 let
    oa = false -> _v1;
-   _v1 = pre oa;
+   _v1 = pre (oa);
    ob = 42 -> _v2;
-   _v2 = pre ob;
+   _v2 = pre (ob);
    oc = 42.42 -> _v3;
-   _v3 = pre oc;
+   _v3 = pre (oc);
 tel
 -- end of node initial::initial
 
@@ -3394,8 +3394,8 @@ var
    _v6:real;
 let
    Y = init -> _v6;
-   _v1 = pre Y;
-   _v2 = pre F;
+   _v1 = pre (Y);
+   _v2 = pre (F);
    _v3 = F + _v2;
    _v4 = _v3 * STEP;
    _v5 = _v4 / 2.0;
@@ -3417,7 +3417,7 @@ var
    _v1:int;
 let
    long_et_stupide_nom_de_sortie = long_parametre + _v1;
-   _v1 = pre long_parametre;
+   _v1 = pre (long_parametre);
 tel
 -- end of node long_et_stupide_nom_de_noeud::long_et_stupide_nom_de_noeud
 
@@ -3825,7 +3825,7 @@ var
    _v3:bool;
 let
    e = false -> _v3;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = not _v1;
    _v3 = x and _v2;
 tel
@@ -3871,31 +3871,31 @@ let
    single_click = _v2 and _v5;
    _v1 = not counting;
    _v2 = mouse::edge(_v1);
-   _v3 = pre more_than_one_click;
+   _v3 = pre (more_than_one_click);
    _v4 = false -> _v3;
    _v5 = not _v4;
    double_click = _v7 and _v9;
    _v6 = not counting;
    _v7 = mouse::edge(_v6);
-   _v8 = pre more_than_one_click;
+   _v8 = pre (more_than_one_click);
    _v9 = false -> _v8;
    more_than_one_click = click and _v11;
-   _v10 = pre counting;
+   _v10 = pre (counting);
    _v11 = false -> _v10;
    counting = clock_decount > 0;
    clock_decount =  if _v15 then _v17 else _v25;
-   _v12 = pre counting;
+   _v12 = pre (counting);
    _v13 = not _v12;
    _v14 = true -> _v13;
    _v15 = click and _v14;
    _v16 = delay - 1;
    _v17 =  if clock then _v16 else delay;
-   _v18 = pre counting;
+   _v18 = pre (counting);
    _v19 = false -> _v18;
    _v20 = clock and _v19;
-   _v21 = pre clock_decount;
+   _v21 = pre (clock_decount);
    _v22 = _v21 - 1;
-   _v23 = pre clock_decount;
+   _v23 = pre (clock_decount);
    _v24 = 0 -> _v23;
    _v25 =  if _v20 then _v22 else _v24;
 tel
@@ -3944,30 +3944,30 @@ var
 let
    single_click = _v1 and _v4;
    _v1 = not counting;
-   _v2 = pre more_than_one_click;
+   _v2 = pre (more_than_one_click);
    _v3 = false -> _v2;
    _v4 = not _v3;
    more_than_one_click = click and _v6;
-   _v5 = pre counting;
+   _v5 = pre (counting);
    _v6 = false -> _v5;
    double_click = _v7 and _v9;
    _v7 = not counting;
-   _v8 = pre more_than_one_click;
+   _v8 = pre (more_than_one_click);
    _v9 = false -> _v8;
    counting = clock_decount > 0;
    clock_decount =  if _v13 then _v15 else _v23;
-   _v10 = pre counting;
+   _v10 = pre (counting);
    _v11 = not _v10;
    _v12 = true -> _v11;
    _v13 = click and _v12;
    _v14 = delay - 1;
    _v15 =  if clock then _v14 else delay;
-   _v16 = pre counting;
+   _v16 = pre (counting);
    _v17 = false -> _v16;
    _v18 = clock and _v17;
-   _v19 = pre clock_decount;
+   _v19 = pre (clock_decount);
    _v20 = _v19 - 1;
-   _v21 = pre clock_decount;
+   _v21 = pre (clock_decount);
    _v22 = 0 -> _v21;
    _v23 =  if _v18 then _v20 else _v22;
 tel
@@ -3985,7 +3985,7 @@ var
    _v3:bool;
 let
    e = false -> _v3;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = not _v1;
    _v3 = x and _v2;
 tel
@@ -4031,31 +4031,31 @@ let
    single = _v2 and _v5;
    _v1 = not counting;
    _v2 = mouse2::edge(_v1);
-   _v3 = pre more_than_one_click;
+   _v3 = pre (more_than_one_click);
    _v4 = false -> _v3;
    _v5 = not _v4;
    double = _v7 and _v9;
    _v6 = not counting;
    _v7 = mouse2::edge(_v6);
-   _v8 = pre more_than_one_click;
+   _v8 = pre (more_than_one_click);
    _v9 = false -> _v8;
    more_than_one_click = click and _v11;
-   _v10 = pre counting;
+   _v10 = pre (counting);
    _v11 = false -> _v10;
    counting = clock_decount > 0;
    clock_decount =  if _v15 then _v17 else _v25;
-   _v12 = pre counting;
+   _v12 = pre (counting);
    _v13 = not _v12;
    _v14 = true -> _v13;
    _v15 = click and _v14;
    _v16 = delay - 1;
    _v17 =  if clock then _v16 else delay;
-   _v18 = pre counting;
+   _v18 = pre (counting);
    _v19 = false -> _v18;
    _v20 = clock and _v19;
-   _v21 = pre clock_decount;
+   _v21 = pre (clock_decount);
    _v22 = _v21 - 1;
-   _v23 = pre clock_decount;
+   _v23 = pre (clock_decount);
    _v24 = 0 -> _v23;
    _v25 =  if _v20 then _v22 else _v24;
 tel
@@ -4092,18 +4092,18 @@ var
 let
    counting = clock_decount > 0;
    clock_decount =  if _v4 then _v6 else _v14;
-   _v1 = pre counting;
+   _v1 = pre (counting);
    _v2 = not _v1;
    _v3 = true -> _v2;
    _v4 = click and _v3;
    _v5 = delay - 1;
    _v6 =  if clock then _v5 else delay;
-   _v7 = pre counting;
+   _v7 = pre (counting);
    _v8 = false -> _v7;
    _v9 = clock and _v8;
-   _v10 = pre clock_decount;
+   _v10 = pre (clock_decount);
    _v11 = _v10 - 1;
-   _v12 = pre clock_decount;
+   _v12 = pre (clock_decount);
    _v13 = 0 -> _v12;
    _v14 =  if _v9 then _v11 else _v13;
 tel
@@ -4150,7 +4150,7 @@ let
    u = _v5 -> _v8;
    _v5 = z when h;
    _v6 = z when h;
-   _v7 = pre u;
+   _v7 = pre (u);
    _v8 = multiclock::moyenne(_v6, _v7);
    s = current (u);
 tel
@@ -6140,7 +6140,7 @@ let
 	o2l_P_7, o2l_P_8, o2l_P_9, o2l_P_10, o2l_P_11, o2l_P_12, o2l_P_13,
 	 o2l_P_14, o2l_P_15));
    o2l_P_0 = true -> _v1;
-   _v1 = pre o2l_A_0;
+   _v1 = pre (o2l_A_0);
    o2l_A_0 = _v46 or _v55;
    _v2 = not TD;
    _v3 = o2l_P_0 and _v2;
@@ -6197,7 +6197,7 @@ let
    _v54 =  if TD then _v50 else _v53;
    _v55 = _v47 and _v54;
    o2l_P_1 = false -> _v56;
-   _v56 = pre o2l_A_1;
+   _v56 = pre (o2l_A_1);
    o2l_A_1 = _v103 or _v110;
    _v57 = not TD;
    _v58 = o2l_P_0 and _v57;
@@ -6254,7 +6254,7 @@ let
    _v109 =  if TD then _v106 else _v108;
    _v110 = _v104 and _v109;
    o2l_P_2 = false -> _v111;
-   _v111 = pre o2l_A_2;
+   _v111 = pre (o2l_A_2);
    o2l_A_2 = _v160 or _v165;
    _v112 = not TD;
    _v113 = o2l_P_0 and _v112;
@@ -6311,7 +6311,7 @@ let
    _v164 =  if TD then _v162 else _v163;
    _v165 = _v161 and _v164;
    o2l_P_3 = false -> _v166;
-   _v166 = pre o2l_A_3;
+   _v166 = pre (o2l_A_3);
    o2l_A_3 = _v213 or _v220;
    _v167 = not TD;
    _v168 = o2l_P_0 and _v167;
@@ -6368,7 +6368,7 @@ let
    _v219 =  if TD then _v216 else _v218;
    _v220 = _v214 and _v219;
    o2l_P_4 = false -> _v221;
-   _v221 = pre o2l_A_4;
+   _v221 = pre (o2l_A_4);
    o2l_A_4 = _v320 or _v323;
    _v222 = o2l_P_0 and TD;
    _v223 = _v222 and AB;
@@ -6473,7 +6473,7 @@ let
    _v322 = _v321 and AB;
    _v323 = _v322 and LP;
    o2l_P_5 = false -> _v324;
-   _v324 = pre o2l_A_5;
+   _v324 = pre (o2l_A_5);
    o2l_A_5 = _v422 or _v426;
    _v325 = o2l_P_0 and TD;
    _v326 = _v325 and AB;
@@ -6578,7 +6578,7 @@ let
    _v425 = not LP;
    _v426 = _v424 and _v425;
    o2l_P_6 = false -> _v427;
-   _v427 = pre o2l_A_6;
+   _v427 = pre (o2l_A_6);
    o2l_A_6 = _v525 or _v529;
    _v428 = o2l_P_0 and TD;
    _v429 = not AB;
@@ -6683,7 +6683,7 @@ let
    _v528 = _v526 and _v527;
    _v529 = _v528 and LP;
    o2l_P_7 = false -> _v530;
-   _v530 = pre o2l_A_7;
+   _v530 = pre (o2l_A_7);
    o2l_A_7 = _v627 or _v632;
    _v531 = o2l_P_0 and TD;
    _v532 = not AB;
@@ -6788,7 +6788,7 @@ let
    _v631 = not LP;
    _v632 = _v630 and _v631;
    o2l_P_8 = false -> _v633;
-   _v633 = pre o2l_A_8;
+   _v633 = pre (o2l_A_8);
    o2l_A_8 = _v714 or _v719;
    _v634 = not TI;
    _v635 = o2l_P_4 and _v634;
@@ -6877,7 +6877,7 @@ let
    _v718 = _v717 and AB;
    _v719 = _v718 and LP;
    o2l_P_9 = false -> _v720;
-   _v720 = pre o2l_A_9;
+   _v720 = pre (o2l_A_9);
    o2l_A_9 = _v800 or _v806;
    _v721 = not TI;
    _v722 = o2l_P_4 and _v721;
@@ -6966,7 +6966,7 @@ let
    _v805 = not LP;
    _v806 = _v804 and _v805;
    o2l_P_10 = false -> _v807;
-   _v807 = pre o2l_A_10;
+   _v807 = pre (o2l_A_10);
    o2l_A_10 = _v887 or _v893;
    _v808 = not TI;
    _v809 = o2l_P_4 and _v808;
@@ -7055,7 +7055,7 @@ let
    _v892 = _v890 and _v891;
    _v893 = _v892 and LP;
    o2l_P_11 = false -> _v894;
-   _v894 = pre o2l_A_11;
+   _v894 = pre (o2l_A_11);
    o2l_A_11 = _v973 or _v980;
    _v895 = not TI;
    _v896 = o2l_P_4 and _v895;
@@ -7144,7 +7144,7 @@ let
    _v979 = not LP;
    _v980 = _v978 and _v979;
    o2l_P_12 = false -> _v981;
-   _v981 = pre o2l_A_12;
+   _v981 = pre (o2l_A_12);
    o2l_A_12 = _v1033 or _v1039;
    _v982 = not TI;
    _v983 = o2l_P_8 and _v982;
@@ -7205,7 +7205,7 @@ let
    _v1038 = _v1037 and LP;
    _v1039 = _v1038 and AB;
    o2l_P_13 = false -> _v1040;
-   _v1040 = pre o2l_A_13;
+   _v1040 = pre (o2l_A_13);
    o2l_A_13 = _v1091 or _v1098;
    _v1041 = not TI;
    _v1042 = o2l_P_8 and _v1041;
@@ -7266,7 +7266,7 @@ let
    _v1097 = _v1095 and _v1096;
    _v1098 = _v1097 and AB;
    o2l_P_14 = false -> _v1099;
-   _v1099 = pre o2l_A_14;
+   _v1099 = pre (o2l_A_14);
    o2l_A_14 = _v1150 or _v1157;
    _v1100 = not TI;
    _v1101 = o2l_P_8 and _v1100;
@@ -7327,7 +7327,7 @@ let
    _v1156 = not AB;
    _v1157 = _v1155 and _v1156;
    o2l_P_15 = false -> _v1158;
-   _v1158 = pre o2l_A_15;
+   _v1158 = pre (o2l_A_15);
    o2l_A_15 = _v1208 or _v1216;
    _v1159 = not TI;
    _v1160 = o2l_P_8 and _v1159;
@@ -7774,12 +7774,12 @@ var
    _v8:bool;
 let
    state = init -> _v8;
-   _v1 = pre state;
+   _v1 = pre (state);
    _v2 = not _v1;
    _v3 = set and _v2;
-   _v4 = pre state;
+   _v4 = pre (state);
    _v5 = reset and _v4;
-   _v6 = pre state;
+   _v6 = pre (state);
    _v7 =  if _v5 then false else _v6;
    _v8 =  if _v3 then true else _v7;
 tel
@@ -7792,9 +7792,9 @@ var
    _v4:bool;
 let
    state = init -> _v4;
-   _v1 = pre state;
+   _v1 = pre (state);
    _v2 = not _v1;
-   _v3 = pre state;
+   _v3 = pre (state);
    _v4 =  if change then _v2 else _v3;
 tel
 -- end of node poussoir::ONE_BUTTON
@@ -7825,15 +7825,15 @@ var
    _v10:bool;
 let
    q = false -> _v5;
-   _v1 = pre r;
+   _v1 = pre (r);
    _v2 = not _v1;
-   _v3 = pre n;
+   _v3 = pre (n);
    _v4 = not _v3;
    _v5 = _v2 and _v4;
    n = true -> _v10;
-   _v6 = pre s;
+   _v6 = pre (s);
    _v7 = not _v6;
-   _v8 = pre q;
+   _v8 = pre (q);
    _v9 = not _v8;
    _v10 = _v7 and _v9;
 tel
@@ -7897,8 +7897,8 @@ var
    _v6:real;
 let
    Y = init -> _v6;
-   _v1 = pre Y;
-   _v2 = pre F;
+   _v1 = pre (Y);
+   _v2 = pre (F);
    _v3 = F + _v2;
    _v4 = _v3 * STEP;
    _v5 = _v4 / 2.0;
@@ -7930,7 +7930,7 @@ var
    _v2:int;
 let
    y = 0 -> _v2;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = _v1 + 1;
 tel
 -- end of node speedcontrol::f
@@ -7970,15 +7970,15 @@ var
 let
    time = 0 -> _v6;
    _v1 = running and time_unit;
-   _v2 = pre time;
+   _v2 = pre (time);
    _v3 = _v2 + 1;
-   _v4 = pre time;
+   _v4 = pre (time);
    _v5 =  if _v1 then _v3 else _v4;
    _v6 =  if reset then 0 else _v5;
    running = false -> _v10;
-   _v7 = pre running;
+   _v7 = pre (running);
    _v8 = not _v7;
-   _v9 = pre running;
+   _v9 = pre (running);
    _v10 =  if start_stop then _v8 else _v9;
 tel
 -- end of node stopwatch::simple_stopwatch
@@ -8012,22 +8012,22 @@ let
     (internal_time, running) = stopwatch::simple_stopwatch(time_unit, reset,
 	 start_stop);
    frozen = false -> _v4;
-   _v1 = pre frozen;
+   _v1 = pre (frozen);
    _v2 = not _v1;
-   _v3 = pre frozen;
+   _v3 = pre (frozen);
    _v4 =  if lap then _v2 else _v3;
    start_stop = b1;
    reset = b2 and _v8;
    _v5 = running or frozen;
-   _v6 = pre _v5;
+   _v6 = pre (_v5);
    _v7 = not _v6;
    _v8 = true -> _v7;
    lap = b2 and _v11;
    _v9 = running or frozen;
-   _v10 = pre _v9;
+   _v10 = pre (_v9);
    _v11 = false -> _v10;
    time =  if frozen then _v12 else internal_time;
-   _v12 = pre time;
+   _v12 = pre (time);
 tel
 -- end of node stopwatch::stopwatch
 
@@ -8161,7 +8161,7 @@ var
    _v3:bool;
 let
    e = false -> _v3;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = not _v1;
    _v3 = x and _v2;
 tel
@@ -8184,7 +8184,7 @@ var
    _v3:bool;
 let
    e = false -> _v3;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = not _v1;
    _v3 = x and _v2;
 tel
@@ -8280,43 +8280,43 @@ let
    _v4 = not _v3;
    V112_X = false -> _v6;
    _v5 = y or V112_X;
-   _v6 = pre _v5;
+   _v6 = pre (_v5);
    V111_X =  if y then x else _v9;
-   _v7 = pre V111_X;
+   _v7 = pre (V111_X);
    _v8 = x or _v7;
    _v9 =  if V112_X then _v8 else true;
    V119_X = false -> _v11;
    _v10 = y or V119_X;
-   _v11 = pre _v10;
+   _v11 = pre (_v10);
    V118_X =  if y then x else _v14;
-   _v12 = pre V118_X;
+   _v12 = pre (V118_X);
    _v13 = x and _v12;
    _v14 =  if V119_X then _v13 else true;
    V126_X = false -> _v16;
    _v15 = V118_X or V126_X;
-   _v16 = pre _v15;
+   _v16 = pre (_v15);
    V125_X =  if V118_X then z else _v19;
-   _v17 = pre V125_X;
+   _v17 = pre (V125_X);
    _v18 = z or _v17;
    _v19 =  if V126_X then _v18 else true;
    V135_A_forbiden = false -> _v28;
-   _v20 = pre V111_X;
+   _v20 = pre (V111_X);
    _v21 = not V111_X;
    _v22 = _v20 and _v21;
-   _v23 = pre V125_X;
+   _v23 = pre (V125_X);
    _v24 = not V125_X;
    _v25 = _v23 and _v24;
-   _v26 = pre V135_A_forbiden;
+   _v26 = pre (V135_A_forbiden);
    _v27 =  if _v25 then false else _v26;
    _v28 =  if _v22 then true else _v27;
    V136_B_forbiden = true -> _v37;
-   _v29 = pre V125_X;
+   _v29 = pre (V125_X);
    _v30 = not V125_X;
    _v31 = _v29 and _v30;
-   _v32 = pre V111_X;
+   _v32 = pre (V111_X);
    _v33 = not V111_X;
    _v34 = _v32 and _v33;
-   _v35 = pre V136_B_forbiden;
+   _v35 = pre (V136_B_forbiden);
    _v36 =  if _v34 then false else _v35;
    _v37 =  if _v31 then true else _v36;
 tel
@@ -8690,7 +8690,7 @@ var
    _v3:bool;
 let
    ok = true -> _v3;
-   _v1 = pre T;
+   _v1 = pre (T);
    _v2 = 9.0 - 6.0;
    _v3 = _v1 < _v2;
 tel
@@ -8886,7 +8886,7 @@ let
    _v19 = Tguess = -999.0;
    _v20 = Tguess < 6.0;
    _v21 = Tguess > 9.0;
-   _v22 = pre Heat_on;
+   _v22 = pre (Heat_on);
    _v23 =  if _v21 then false else _v22;
    _v24 =  if _v20 then true else _v23;
    _v25 =  if _v19 then false else _v24;
@@ -8907,7 +8907,7 @@ var
    _v3:bool;
 let
    ok = true -> _v3;
-   _v1 = pre T;
+   _v1 = pre (T);
    _v2 = 9.0 + 1.0;
    _v3 = _v1 < _v2;
 tel
@@ -8949,7 +8949,7 @@ var
    _v1:real;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node preal::fby1
 type _pbool::t = bool;
@@ -8958,7 +8958,7 @@ var
    _v1:bool;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pbool::fby1
 type _pint::t = int;
@@ -8967,7 +8967,7 @@ var
    _v1:int;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pint::fby1
 type _inter::selType = struct  {i : int; b : bool; r : real};
@@ -9520,9 +9520,9 @@ var
    _v17:real;
 let
    cpt_roll = 0 -> _v6;
-   _v1 = pre cpt_roll;
+   _v1 = pre (cpt_roll);
    _v2 = _v1 > 0;
-   _v3 = pre cpt_roll;
+   _v3 = pre (cpt_roll);
    _v4 = _v3 - 1;
    _v5 =  if _v2 then _v4 else 0;
    _v6 =  if three_roll then 3 else _v5;
@@ -9564,7 +9564,7 @@ var
 let
    cpt = _v1 -> _v4;
    _v1 =  if val then 1 else 0;
-   _v2 = pre cpt;
+   _v2 = pre (cpt);
    _v3 = _v2 + 1;
    _v4 =  if val then _v3 else 0;
    m = cpt >= n;
@@ -9737,21 +9737,21 @@ var
    _v43:bool;
 let
    debug_st = state;
-   ps = pre state;
+   ps = pre (state);
    state = 1 -> _v16;
    _v1 = ps = 1;
-   _v2 = pre reset;
-   _v3 = pre from1to2;
-   _v4 = pre from1to3;
+   _v2 = pre (reset);
+   _v3 = pre (from1to2);
+   _v4 = pre (from1to3);
    _v5 =  if _v4 then 3 else 1;
    _v6 =  if _v3 then 2 else _v5;
    _v7 =  if _v2 then 1 else _v6;
    _v8 = ps = 2;
-   _v9 = pre from2to1;
-   _v10 = pre from2to3;
+   _v9 = pre (from2to1);
+   _v10 = pre (from2to3);
    _v11 =  if _v10 then 3 else 2;
    _v12 =  if _v9 then 1 else _v11;
-   _v13 = pre from3to1;
+   _v13 = pre (from3to1);
    _v14 =  if _v13 then 1 else 3;
    _v15 =  if _v8 then _v12 else _v14;
    _v16 =  if _v1 then _v7 else _v15;
@@ -9775,20 +9775,20 @@ let
    _v27 = a and will_latch;
    _v28 = onlyroll::InNominalRange(xi);
    from2to3 = a and _v31;
-   _v29 = pre will_latch;
+   _v29 = pre (will_latch);
    _v30 = _v29 and foreign_failure;
    _v31 = _v30 or local_failure;
    from3to1 = ongroundreset;
    from2to1 = reset;
    r = false -> _v43;
-   _v32 = pre state;
+   _v32 = pre (state);
    _v33 = _v32 = 1;
    _v34 = _v33 and cross_failure;
    _v35 = onlyroll::InNominalRange(xi);
    _v36 = _v34 and _v35;
-   _v37 = pre state;
+   _v37 = pre (state);
    _v38 = _v37 = 2;
-   _v39 = pre cross_failure;
+   _v39 = pre (cross_failure);
    _v40 = _v39 and foreign_failure;
    _v41 = _v38 and _v40;
    _v42 = _v41 or local_failure;
@@ -9887,7 +9887,7 @@ var
 let
    already =  if _v1 then 0 else _v2;
    _v1 = true -> reset;
-   _v2 = pre nb_aut;
+   _v2 = pre (nb_aut);
    a1 = r1 and _v3;
    _v3 = already <= 1;
    a2 = r2 and _v9;
@@ -9921,7 +9921,7 @@ let
    _v29 = _v25 or _v28;
    nb_aut =  if _v30 then 0 else _v39;
    _v30 = true -> reset;
-   _v31 = pre nb_aut;
+   _v31 = pre (nb_aut);
    _v32 =  if a1 then 1 else 0;
    _v33 = _v31 + _v32;
    _v34 =  if a2 then 1 else 0;
@@ -10043,62 +10043,62 @@ let
     (x1, f1, ask1, debug_localfailure1, debug_cross_failure1, debug_st1) =
 	onlyroll::Channel(ongroundreset, inairreset, choff1, xa1, xb1, disc1, _v2,
 	 _v4, _v6, _v8, _v10, _v12, allowed1);
-   _v1 = pre x2;
+   _v1 = pre (x2);
    _v2 = 0.0 -> _v1;
-   _v3 = pre x3;
+   _v3 = pre (x3);
    _v4 = 0.0 -> _v3;
-   _v5 = pre x4;
+   _v5 = pre (x4);
    _v6 = 0.0 -> _v5;
-   _v7 = pre f2;
+   _v7 = pre (f2);
    _v8 = false -> _v7;
-   _v9 = pre f3;
+   _v9 = pre (f3);
    _v10 = false -> _v9;
-   _v11 = pre f4;
+   _v11 = pre (f4);
    _v12 = false -> _v11;
     (x2, f2, ask2, debug_localfailure2, debug_cross_failure2, debug_st2) =
 	onlyroll::Channel(ongroundreset, inairreset, choff2, xa2, xb2, disc2, _v14,
 	 _v16, _v18, _v20, _v22, _v24, allowed2);
-   _v13 = pre x1;
+   _v13 = pre (x1);
    _v14 = 0.0 -> _v13;
-   _v15 = pre x3;
+   _v15 = pre (x3);
    _v16 = 0.0 -> _v15;
-   _v17 = pre x4;
+   _v17 = pre (x4);
    _v18 = 0.0 -> _v17;
-   _v19 = pre f1;
+   _v19 = pre (f1);
    _v20 = false -> _v19;
-   _v21 = pre f3;
+   _v21 = pre (f3);
    _v22 = false -> _v21;
-   _v23 = pre f4;
+   _v23 = pre (f4);
    _v24 = false -> _v23;
     (x3, f3, ask3, debug_localfailure3, debug_cross_failure3, debug_st3) =
 	onlyroll::Channel(ongroundreset, inairreset, choff3, xa3, xb3, disc3, _v26,
 	 _v28, _v30, _v32, _v34, _v36, allowed3);
-   _v25 = pre x1;
+   _v25 = pre (x1);
    _v26 = 0.0 -> _v25;
-   _v27 = pre x2;
+   _v27 = pre (x2);
    _v28 = 0.0 -> _v27;
-   _v29 = pre x4;
+   _v29 = pre (x4);
    _v30 = 0.0 -> _v29;
-   _v31 = pre f1;
+   _v31 = pre (f1);
    _v32 = false -> _v31;
-   _v33 = pre f2;
+   _v33 = pre (f2);
    _v34 = false -> _v33;
-   _v35 = pre f4;
+   _v35 = pre (f4);
    _v36 = false -> _v35;
     (x4, f4, ask4, debug_localfailure4, debug_cross_failure4, debug_st4) =
 	onlyroll::Channel(ongroundreset, inairreset, choff4, xa4, xb4, disc4, _v38,
 	 _v40, _v42, _v44, _v46, _v48, allowed4);
-   _v37 = pre x1;
+   _v37 = pre (x1);
    _v38 = 0.0 -> _v37;
-   _v39 = pre x2;
+   _v39 = pre (x2);
    _v40 = 0.0 -> _v39;
-   _v41 = pre x3;
+   _v41 = pre (x3);
    _v42 = 0.0 -> _v41;
-   _v43 = pre f1;
+   _v43 = pre (f1);
    _v44 = false -> _v43;
-   _v45 = pre f2;
+   _v45 = pre (f2);
    _v46 = false -> _v45;
-   _v47 = pre f3;
+   _v47 = pre (f3);
    _v48 = false -> _v47;
     (allowed1, allowed2, allowed3, allowed4) = onlyroll::Allocator(ask1, ask2,
 	 ask3, ask4, ongroundreset);
@@ -10127,7 +10127,7 @@ var
    _v1:real;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node preal::fby1
 type _pbool::t = bool;
@@ -10136,7 +10136,7 @@ var
    _v1:bool;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pbool::fby1
 type _pint::t = int;
@@ -10145,7 +10145,7 @@ var
    _v1:int;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pint::fby1
 type _inter::selType = struct  {i : int; b : bool; r : real};
@@ -10195,7 +10195,7 @@ var
    _v1:real;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node preal::fby1
 type _pbool::t = bool;
@@ -10204,7 +10204,7 @@ var
    _v1:bool;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pbool::fby1
 type _pint::t = int;
@@ -10213,7 +10213,7 @@ var
    _v1:int;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pint::fby1
 const inter::n = -4;
@@ -10793,7 +10793,7 @@ var
    _v5:bool when e;
 let
    (z, x) = clock::clock3(_v2);
-   _v1 = pre z;
+   _v1 = pre (z);
    _v2 = true -> _v1;
    e = b when a;
    (c, d) = clock::clock4(a, _v3);
@@ -11546,7 +11546,7 @@ let
    _v5 = delta_to_god^4;
    AxisValue = Gyroscope2::Voter(resChannels, god, delta_to_god);
    fillredInit = initChannels -> _v6;
-   _v6 = pre resChannels;
+   _v6 = pre (resChannels);
 tel
 -- end of node Gyroscope2::EvaluateAxis
 
@@ -11706,7 +11706,7 @@ let
    _v1 = b when a;
    _v2 = clock::clock2(a, _v1);
    (z, x) = clock::clock3(_v3);
-   _v3 = pre z;
+   _v3 = pre (z);
    (c, d) = clock::clock4(a, _v4);
    _v4 = b when a;
 tel
@@ -11723,7 +11723,7 @@ var
    _v2:bool;
 let
    Clock1ms = true -> _v2;
-   _v1 = pre Clock1ms;
+   _v1 = pre (Clock1ms);
    _v2 = not _v1;
 tel
 -- end of node clock1_2ms::Clock1ms_node
@@ -11733,7 +11733,7 @@ var
    _v2:bool;
 let
    Clock2ms = true -> _v2;
-   _v1 = pre Clock2ms;
+   _v1 = pre (Clock2ms);
    _v2 = not _v1;
 tel
 -- end of node clock1_2ms::Clock2ms_node
@@ -11973,7 +11973,7 @@ var
 let
    res = _v3 when a1;
    _v1 = h1[0];
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    _v3 = _v2 > 0;
    h1[0] = current (_v8);
    _v4 = b1[0];
@@ -12164,7 +12164,7 @@ var
    _v3:bool;
 let
    out = false -> _v3;
-   _v1 = pre in;
+   _v1 = pre (in);
    _v2 = not _v1;
    _v3 = in and _v2;
 tel
@@ -12180,7 +12180,7 @@ let
    _v1 = 1.0 * E;
    _v2 = 0.5 * Sm_1;
    Sm_1 = 0.0 -> _v3;
-   _v3 = pre S;
+   _v3 = pre (S);
 tel
 -- end of node lustre_test1_ok::TransFnc_1
 node lustre_test1_ok::subsys1(s1:real) returns (s2:real);
@@ -12241,11 +12241,11 @@ let
    Unit_Delay1_ =  if cl2_6 then _v1 else _v4;
    _v1 = current (zoh2);
    _v2 = 0.0 when cl1_2;
-   _v3 = pre Unit_Delay1_;
+   _v3 = pre (Unit_Delay1_);
    _v4 = _v2 -> _v3;
    Unit_Delay1 =  if cl1_2 then _v5 else _v7;
    _v5 = current (Unit_Delay1_);
-   _v6 = pre Unit_Delay1;
+   _v6 = pre (Unit_Delay1);
    _v7 = 0.0 -> _v6;
    zoh1 = In1 when cl1_4;
    zoh2 = In2 when cl2_6;
@@ -12253,15 +12253,15 @@ let
    Out2_ =  if cl2_6 then _v8 else _v11;
    _v8 = current (zoh2);
    _v9 = 0.0 when cl1_2;
-   _v10 = pre Out2_;
+   _v10 = pre (Out2_);
    _v11 = _v9 -> _v10;
    Out2 =  if cl1_2 then _v12 else _v14;
    _v12 = current (Out2_);
-   _v13 = pre Out2;
+   _v13 = pre (Out2);
    _v14 = 0.0 -> _v13;
    Out3 =  if cl1_4 then _v15 else _v17;
    _v15 = current (subsys1_s2);
-   _v16 = pre Out3;
+   _v16 = pre (Out3);
    _v17 = 0.0 -> _v16;
    subsys1_Trigger = lustre_test1_ok::rising(In3);
    subsys1_s1 = zoh1;
@@ -12270,7 +12270,7 @@ let
    _v19 = lustre_test1_ok::subsys1(_v18);
    _v20 = current (_v19);
    _v21 = 0.0 when cl1_4;
-   _v22 = pre subsys1_s2;
+   _v22 = pre (subsys1_s2);
    _v23 = _v21 -> _v22;
 tel
 -- end of node lustre_test1_ok::lustre_test1_ok
@@ -12494,12 +12494,12 @@ var
    _v7:bool;
 let
    x = false -> _v7;
-   _v1 = pre a;
-   _v2 = pre b;
+   _v1 = pre (a);
+   _v2 = pre (b);
    _v3 = _v1 = _v2;
-   _v4 = pre x;
+   _v4 = pre (x);
    _v5 = not _v4;
-   _v6 = pre x;
+   _v6 = pre (x);
    _v7 =  if _v3 then _v5 else _v6;
 tel
 -- end of node pre_x::pre_x
@@ -12577,17 +12577,17 @@ var
    _v6:bool;
 let
    cl1 = true -> _v1;
-   _v1 = pre cl2;
+   _v1 = pre (cl2);
    cl2 = false -> _v2;
-   _v2 = pre cl3;
+   _v2 = pre (cl3);
    cl3 = false -> _v3;
-   _v3 = pre cl4;
+   _v3 = pre (cl4);
    cl4 = false -> _v4;
-   _v4 = pre cl1;
+   _v4 = pre (cl1);
    pha1 = false -> _v5;
-   _v5 = pre cl1;
+   _v5 = pre (cl1);
    pha2 = false -> _v6;
-   _v6 = pre pha1;
+   _v6 = pre (pha1);
    out = pha2;
 tel
 -- end of node sample_time_change::make_cl1_4_2
@@ -12625,35 +12625,35 @@ var
    _v15:bool;
 let
    cl1 = true -> _v1;
-   _v1 = pre cl2;
+   _v1 = pre (cl2);
    cl2 = false -> _v2;
-   _v2 = pre cl3;
+   _v2 = pre (cl3);
    cl3 = false -> _v3;
-   _v3 = pre cl4;
+   _v3 = pre (cl4);
    cl4 = false -> _v4;
-   _v4 = pre cl5;
+   _v4 = pre (cl5);
    cl5 = false -> _v5;
-   _v5 = pre cl6;
+   _v5 = pre (cl6);
    cl6 = false -> _v6;
-   _v6 = pre cl7;
+   _v6 = pre (cl7);
    cl7 = false -> _v7;
-   _v7 = pre cl8;
+   _v7 = pre (cl8);
    cl8 = false -> _v8;
-   _v8 = pre cl9;
+   _v8 = pre (cl9);
    cl9 = false -> _v9;
-   _v9 = pre cl10;
+   _v9 = pre (cl10);
    cl10 = false -> _v10;
-   _v10 = pre cl11;
+   _v10 = pre (cl11);
    cl11 = false -> _v11;
-   _v11 = pre cl12;
+   _v11 = pre (cl12);
    cl12 = false -> _v12;
-   _v12 = pre cl1;
+   _v12 = pre (cl1);
    pha1 = false -> _v13;
-   _v13 = pre cl1;
+   _v13 = pre (cl1);
    pha2 = false -> _v14;
-   _v14 = pre pha1;
+   _v14 = pre (pha1);
    pha3 = false -> _v15;
-   _v15 = pre pha2;
+   _v15 = pre (pha2);
    out = pha3;
 tel
 -- end of node sample_time_change::make_cl1_12_3
@@ -12674,10 +12674,10 @@ var
 let
    Unit_Delay1 = _v1 -> _v2;
    _v1 = 0.0 when cl1_12_3;
-   _v2 = pre In3;
+   _v2 = pre (In3);
    Unit_Delay2 = _v3 -> _v4;
    _v3 = 0.0 when cl1_4_2;
-   _v4 = pre Unit_Delay2;
+   _v4 = pre (Unit_Delay2);
    Out2 = Unit_Delay2;
 tel
 -- end of node sample_time_change::sample_time_change
@@ -12697,7 +12697,7 @@ let
    _v1 = In3 when cl1_12_3;
    Out2 =  if cl1_4_2 then _v2 else _v4;
    _v2 = current (Out2_);
-   _v3 = pre Out2;
+   _v3 = pre (Out2);
    _v4 = 0.0 -> _v3;
 tel
 -- end of node sample_time_change::MainNode
@@ -12718,11 +12718,11 @@ var
 let
    assert(true -> _v6);
    o = _v4 when i;
-   _v1 = pre i;
+   _v1 = pre (i);
    _v2 = false -> _v1;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = true -> _v3;
-   _v5 = pre i;
+   _v5 = pre (i);
    _v6 = i <> _v5;
 tel
 -- end of node bob::bob
@@ -12764,7 +12764,7 @@ var
    _v3:bool;
 let
    o = true -> _v3;
-   _v1 = pre i;
+   _v1 = pre (i);
    _v2 = ex::trueNode(i);
    _v3 = _v1 and _v2;
 tel
@@ -12936,11 +12936,11 @@ let
    _v1 = 8 <= vitesse;
    _v2 = vitesse <= 12;
    cpt = 0 -> _v5;
-   _v3 = pre cpt;
+   _v3 = pre (cpt);
    _v4 = _v3 + 1;
    _v5 =  if acceptable then 0 else _v4;
    ok = true -> _v7;
-   _v6 = pre cpt;
+   _v6 = pre (cpt);
    _v7 = _v6 < 15;
 tel
 -- end of node lecteur::Propriete
@@ -12956,7 +12956,7 @@ var
    _v2:int;
 let
    vitesse = 0 -> _v2;
-   _v1 = pre vitesse;
+   _v1 = pre (vitesse);
    _v2 = _v1 + diff;
    Plus = vitesse <= 9;
    Moins = vitesse >= 11;
@@ -12990,12 +12990,12 @@ let
    _v2 = _v1 <= diff;
    _v3 = diff <= 4;
    _v4 = _v2 and _v3;
-   _v5 = pre Plus;
+   _v5 = pre (Plus);
    _v6 = true -> _v5;
    _v7 = diff >= 1;
    _v8 =  if _v6 then _v7 else true;
    _v9 = _v4 and _v8;
-   _v10 = pre Moins;
+   _v10 = pre (Moins);
    _v11 = false -> _v10;
    _v12 = -1;
    _v13 = diff <= _v12;
@@ -13036,7 +13036,7 @@ var
 let
    afterX = false -> _v2;
    _v1 = X or afterX;
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
 tel
 -- end of node lucky::after
 node lucky::once_since(C:bool; A:bool) returns (X:bool);
@@ -13049,7 +13049,7 @@ var
 let
    X =  if A then C else _v5;
    _v1 = lucky::after(A);
-   _v2 = pre X;
+   _v2 = pre (X);
    _v3 = false -> _v2;
    _v4 = C or _v3;
    _v5 =  if _v1 then _v4 else false;
@@ -13063,7 +13063,7 @@ var
 let
    X = lucky::implies(B, _v3);
    _v1 = lucky::once_since(C, A);
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    _v3 = false -> _v2;
 tel
 -- end of node lucky::once_from_to
@@ -13077,10 +13077,10 @@ var
    _v6:int;
 let
    o =  if _v3 then _v6 else 0;
-   _v1 = pre i;
+   _v1 = pre (i);
    _v2 = i = _v1;
    _v3 = true -> _v2;
-   _v4 = pre o;
+   _v4 = pre (o);
    _v5 = 0 -> _v4;
    _v6 = 1 + _v5;
 tel
@@ -13108,17 +13108,17 @@ var
 let
    active = _v1 -> _v5;
    _v1 = signal > 20;
-   _v2 = pre active;
+   _v2 = pre (active);
    _v3 = signal > 10;
    _v4 = signal > 20;
    _v5 =  if _v2 then _v3 else _v4;
    begin = active and _v8;
-   _v6 = pre active;
+   _v6 = pre (active);
    _v7 = not _v6;
    _v8 = false -> _v7;
    en = _v9 and _v11;
    _v9 = not active;
-   _v10 = pre active;
+   _v10 = pre (active);
    _v11 = false -> _v10;
    alarm = _v13 or _v15;
    _v12 = lucky::once_from_to(action, begin, en);
@@ -13149,10 +13149,10 @@ let
    t = _v1 -> _v8;
    _v1 = [i, i];
    _v2 = t[0];
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = _v3 + 1;
    _v5 = t[1];
-   _v6 = pre _v5;
+   _v6 = pre (_v5);
    _v7 = _v6 + 2;
    _v8 = [_v4, _v7];
 tel
@@ -13266,10 +13266,10 @@ let
    t = _v1 -> _v8;
    _v1 = [i, i];
    _v2 = t[0];
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = _v3 + 1;
    _v5 = t[1];
-   _v6 = pre _v5;
+   _v6 = pre (_v5);
    _v7 = _v6 + 2;
    _v8 = [_v4, _v7];
 tel
@@ -13365,7 +13365,7 @@ let
    t = _v1 -> _v5;
    _v1 = [i, i];
    _v2 = t[1];
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = _v3 + 2;
    _v5 = [1, _v4];
 tel
@@ -13491,10 +13491,10 @@ let
    _v5 = _v4.out;
    _v6 = [_v3, _v5];
    _v7 = t[0];
-   _v8 = pre _v7;
+   _v8 = pre (_v7);
    _v9 = _v8 + 1;
    _v10 = t[1];
-   _v11 = pre _v10;
+   _v11 = pre (_v10);
    _v12 = [_v9, _v11];
 tel
 -- end of node morel4::mcmorel
@@ -13711,10 +13711,10 @@ let
    _v5 = _v4.out;
    _v6 = [_v3, _v5];
    _v7 = t[0];
-   _v8 = pre _v7;
+   _v8 = pre (_v7);
    _v9 = _v8 + 1;
    _v10 = t[1];
-   _v11 = pre _v10;
+   _v11 = pre (_v10);
    _v12 = [_v9, _v11];
    u = [_v13, _v14];
    _v13 = [10, 100];
@@ -14265,9 +14265,9 @@ var
    _v17:real;
 let
    cpt_roll = 0 -> _v6;
-   _v1 = pre cpt_roll;
+   _v1 = pre (cpt_roll);
    _v2 = _v1 > 0;
-   _v3 = pre cpt_roll;
+   _v3 = pre (cpt_roll);
    _v4 = _v3 - 1;
    _v5 =  if _v2 then _v4 else 0;
    _v6 =  if three_roll then 3 else _v5;
@@ -14309,7 +14309,7 @@ var
 let
    cpt = _v1 -> _v4;
    _v1 =  if val then 1 else 0;
-   _v2 = pre cpt;
+   _v2 = pre (cpt);
    _v3 = _v2 + 1;
    _v4 =  if val then _v3 else 0;
    m = cpt >= n;
@@ -14482,21 +14482,21 @@ var
 let
    debug_st = state;
    ps = 1 -> _v1;
-   _v1 = pre state;
+   _v1 = pre (state);
    state = 1 -> _v17;
    _v2 = ps = 1;
-   _v3 = pre reset;
-   _v4 = pre from1to2;
-   _v5 = pre from1to3;
+   _v3 = pre (reset);
+   _v4 = pre (from1to2);
+   _v5 = pre (from1to3);
    _v6 =  if _v5 then 3 else 1;
    _v7 =  if _v4 then 2 else _v6;
    _v8 =  if _v3 then 1 else _v7;
    _v9 = ps = 2;
-   _v10 = pre from2to1;
-   _v11 = pre from2to3;
+   _v10 = pre (from2to1);
+   _v11 = pre (from2to3);
    _v12 =  if _v11 then 3 else 2;
    _v13 =  if _v10 then 1 else _v12;
-   _v14 = pre from3to1;
+   _v14 = pre (from3to1);
    _v15 =  if _v14 then 1 else 3;
    _v16 =  if _v9 then _v13 else _v15;
    _v17 =  if _v2 then _v8 else _v16;
@@ -14520,18 +14520,18 @@ let
    _v28 = a and will_latch;
    _v29 = onlyroll::InNominalRange(xi);
    from2to3 = a and _v32;
-   _v30 = pre will_latch;
+   _v30 = pre (will_latch);
    _v31 = _v30 and foreign_failure;
    _v32 = _v31 or local_failure;
    from3to1 = ongroundreset;
    from2to1 = reset;
    r = false -> _v42;
-   _v33 = pre state;
+   _v33 = pre (state);
    _v34 = _v33 = 1;
    _v35 = _v34 and cross_failure;
-   _v36 = pre state;
+   _v36 = pre (state);
    _v37 = _v36 = 2;
-   _v38 = pre cross_failure;
+   _v38 = pre (cross_failure);
    _v39 = _v38 and foreign_failure;
    _v40 = _v37 and _v39;
    _v41 = _v40 or local_failure;
@@ -14630,7 +14630,7 @@ var
 let
    already =  if _v1 then 0 else _v2;
    _v1 = true -> reset;
-   _v2 = pre nb_aut;
+   _v2 = pre (nb_aut);
    a1 = r1 and _v3;
    _v3 = already <= 1;
    a2 = r2 and _v9;
@@ -14664,7 +14664,7 @@ let
    _v29 = _v25 or _v28;
    nb_aut =  if _v30 then 0 else _v39;
    _v30 = true -> reset;
-   _v31 = pre nb_aut;
+   _v31 = pre (nb_aut);
    _v32 =  if a4 then 1 else 0;
    _v33 = 0 + _v32;
    _v34 =  if a3 then 1 else _v33;
@@ -14790,67 +14790,67 @@ let
     (x1, f1, ask1, debug_localfailure1, debug_cross_failure1, debug_st1) =
 	onlyroll::Channel(ongroundreset, inairreset, choff1, xa1, xb1, disc1, _v2,
 	 _v4, _v6, _v8, _v10, _v12, allowed1);
-   _v1 = pre x2;
+   _v1 = pre (x2);
    _v2 = 0.0 -> _v1;
-   _v3 = pre x3;
+   _v3 = pre (x3);
    _v4 = 0.0 -> _v3;
-   _v5 = pre x4;
+   _v5 = pre (x4);
    _v6 = 0.0 -> _v5;
-   _v7 = pre f2;
+   _v7 = pre (f2);
    _v8 = false -> _v7;
-   _v9 = pre f3;
+   _v9 = pre (f3);
    _v10 = false -> _v9;
-   _v11 = pre f4;
+   _v11 = pre (f4);
    _v12 = false -> _v11;
     (x2, f2, ask2, debug_localfailure2, debug_cross_failure2, debug_st2) =
 	onlyroll::Channel(ongroundreset, inairreset, choff2, xa2, xb2, disc2, _v14,
 	 _v16, _v18, _v20, _v22, _v24, allowed2);
-   _v13 = pre x1;
+   _v13 = pre (x1);
    _v14 = 0.0 -> _v13;
-   _v15 = pre x3;
+   _v15 = pre (x3);
    _v16 = 0.0 -> _v15;
-   _v17 = pre x4;
+   _v17 = pre (x4);
    _v18 = 0.0 -> _v17;
-   _v19 = pre f1;
+   _v19 = pre (f1);
    _v20 = false -> _v19;
-   _v21 = pre f3;
+   _v21 = pre (f3);
    _v22 = false -> _v21;
-   _v23 = pre f4;
+   _v23 = pre (f4);
    _v24 = false -> _v23;
     (x3, f3, ask3, debug_localfailure3, debug_cross_failure3, debug_st3) =
 	onlyroll::Channel(ongroundreset, inairreset, choff3, xa3, xb3, disc3, _v26,
 	 _v28, _v30, _v32, _v34, _v36, allowed3);
-   _v25 = pre x1;
+   _v25 = pre (x1);
    _v26 = 0.0 -> _v25;
-   _v27 = pre x2;
+   _v27 = pre (x2);
    _v28 = 0.0 -> _v27;
-   _v29 = pre x4;
+   _v29 = pre (x4);
    _v30 = 0.0 -> _v29;
-   _v31 = pre f1;
+   _v31 = pre (f1);
    _v32 = false -> _v31;
-   _v33 = pre f2;
+   _v33 = pre (f2);
    _v34 = false -> _v33;
-   _v35 = pre f4;
+   _v35 = pre (f4);
    _v36 = false -> _v35;
     (x4, f4, ask4, debug_localfailure4, debug_cross_failure4, debug_st4) =
 	onlyroll::Channel(ongroundreset, inairreset, choff4, xa4, xb4, disc4, _v38,
 	 _v40, _v42, _v44, _v46, _v48, allowed4);
-   _v37 = pre x1;
+   _v37 = pre (x1);
    _v38 = 0.0 -> _v37;
-   _v39 = pre x2;
+   _v39 = pre (x2);
    _v40 = 0.0 -> _v39;
-   _v41 = pre x3;
+   _v41 = pre (x3);
    _v42 = 0.0 -> _v41;
-   _v43 = pre f1;
+   _v43 = pre (f1);
    _v44 = false -> _v43;
-   _v45 = pre f2;
+   _v45 = pre (f2);
    _v46 = false -> _v45;
-   _v47 = pre f3;
+   _v47 = pre (f3);
    _v48 = false -> _v47;
-   allowed1 = pre _v49;
-   allowed2 = pre _v50;
-   allowed3 = pre _v51;
-   allowed4 = pre _v52;
+   allowed1 = pre (_v49);
+   allowed2 = pre (_v50);
+   allowed3 = pre (_v51);
+   allowed4 = pre (_v52);
     (_v49, _v50, _v51, _v52) = onlyroll::Allocator(ask1, ask2, ask3, ask4,
 	 ongroundreset);
    x = onlyroll::Calculate(x1, x2, x3, x4, f1, f2, f3, f4);
@@ -15381,9 +15381,9 @@ var
    _v17:real;
 let
    cpt_roll = 0 -> _v6;
-   _v1 = pre cpt_roll;
+   _v1 = pre (cpt_roll);
    _v2 = _v1 > 0;
-   _v3 = pre cpt_roll;
+   _v3 = pre (cpt_roll);
    _v4 = _v3 - 1;
    _v5 =  if _v2 then _v4 else 0;
    _v6 =  if three_roll then 3 else _v5;
@@ -15425,7 +15425,7 @@ var
 let
    cpt = _v1 -> _v4;
    _v1 =  if val then 1 else 0;
-   _v2 = pre cpt;
+   _v2 = pre (cpt);
    _v3 = _v2 + 1;
    _v4 =  if val then _v3 else 0;
    m = cpt >= n;
@@ -15598,21 +15598,21 @@ var
 let
    debug_st = state;
    ps = 1 -> _v1;
-   _v1 = pre state;
+   _v1 = pre (state);
    state = 1 -> _v17;
    _v2 = ps = 1;
-   _v3 = pre reset;
-   _v4 = pre from1to2;
-   _v5 = pre from1to3;
+   _v3 = pre (reset);
+   _v4 = pre (from1to2);
+   _v5 = pre (from1to3);
    _v6 =  if _v5 then 3 else 1;
    _v7 =  if _v4 then 2 else _v6;
    _v8 =  if _v3 then 1 else _v7;
    _v9 = ps = 2;
-   _v10 = pre from2to1;
-   _v11 = pre from2to3;
+   _v10 = pre (from2to1);
+   _v11 = pre (from2to3);
    _v12 =  if _v11 then 3 else 2;
    _v13 =  if _v10 then 1 else _v12;
-   _v14 = pre from3to1;
+   _v14 = pre (from3to1);
    _v15 =  if _v14 then 1 else 3;
    _v16 =  if _v9 then _v13 else _v15;
    _v17 =  if _v2 then _v8 else _v16;
@@ -15636,18 +15636,18 @@ let
    _v28 = a and will_latch;
    _v29 = onlyroll2::InNominalRange(xi);
    from2to3 = a and _v32;
-   _v30 = pre will_latch;
+   _v30 = pre (will_latch);
    _v31 = _v30 and foreign_failure;
    _v32 = _v31 or local_failure;
    from3to1 = ongroundreset;
    from2to1 = reset;
    r = false -> _v42;
-   _v33 = pre state;
+   _v33 = pre (state);
    _v34 = _v33 = 1;
    _v35 = _v34 and cross_failure;
-   _v36 = pre state;
+   _v36 = pre (state);
    _v37 = _v36 = 2;
-   _v38 = pre cross_failure;
+   _v38 = pre (cross_failure);
    _v39 = _v38 and foreign_failure;
    _v40 = _v37 and _v39;
    _v41 = _v40 or local_failure;
@@ -15746,7 +15746,7 @@ var
 let
    already =  if _v1 then 0 else _v2;
    _v1 = true -> reset;
-   _v2 = pre nb_aut;
+   _v2 = pre (nb_aut);
    a1 = r1 and _v3;
    _v3 = already <= 1;
    a2 = r2 and _v9;
@@ -15780,7 +15780,7 @@ let
    _v29 = _v25 or _v28;
    nb_aut =  if _v30 then 0 else _v39;
    _v30 = true -> reset;
-   _v31 = pre nb_aut;
+   _v31 = pre (nb_aut);
    _v32 =  if a4 then 1 else 0;
    _v33 = 0 + _v32;
    _v34 =  if a3 then 1 else _v33;
@@ -15906,69 +15906,69 @@ let
     (x1, f1, ask1, debug_localfailure1, debug_cross_failure1, debug_st1) =
 	onlyroll2::Channel(ongroundreset, inairreset, choff1, xa1, xb1, disc1, _v2,
 	 _v4, _v6, _v8, _v10, _v12, allowed1);
-   _v1 = pre x2;
+   _v1 = pre (x2);
    _v2 = 0.0 -> _v1;
-   _v3 = pre x3;
+   _v3 = pre (x3);
    _v4 = 0.0 -> _v3;
-   _v5 = pre x4;
+   _v5 = pre (x4);
    _v6 = 0.0 -> _v5;
-   _v7 = pre f2;
+   _v7 = pre (f2);
    _v8 = false -> _v7;
-   _v9 = pre f3;
+   _v9 = pre (f3);
    _v10 = false -> _v9;
-   _v11 = pre f4;
+   _v11 = pre (f4);
    _v12 = false -> _v11;
     (x2, f2, ask2, debug_localfailure2, debug_cross_failure2, debug_st2) =
 	onlyroll2::Channel(ongroundreset, inairreset, choff2, xa2, xb2, disc2,
 	 _v14, _v16, _v18, _v20, _v22, _v24, allowed2);
-   _v13 = pre x1;
+   _v13 = pre (x1);
    _v14 = 0.0 -> _v13;
-   _v15 = pre x3;
+   _v15 = pre (x3);
    _v16 = 0.0 -> _v15;
-   _v17 = pre x4;
+   _v17 = pre (x4);
    _v18 = 0.0 -> _v17;
-   _v19 = pre f1;
+   _v19 = pre (f1);
    _v20 = false -> _v19;
-   _v21 = pre f3;
+   _v21 = pre (f3);
    _v22 = false -> _v21;
-   _v23 = pre f4;
+   _v23 = pre (f4);
    _v24 = false -> _v23;
     (x3, f3, ask3, debug_localfailure3, debug_cross_failure3, debug_st3) =
 	onlyroll2::Channel(ongroundreset, inairreset, choff3, xa3, xb3, disc3,
 	 _v26, _v28, _v30, _v32, _v34, _v36, allowed3);
-   _v25 = pre x1;
+   _v25 = pre (x1);
    _v26 = 0.0 -> _v25;
-   _v27 = pre x2;
+   _v27 = pre (x2);
    _v28 = 0.0 -> _v27;
-   _v29 = pre x4;
+   _v29 = pre (x4);
    _v30 = 0.0 -> _v29;
-   _v31 = pre f1;
+   _v31 = pre (f1);
    _v32 = false -> _v31;
-   _v33 = pre f2;
+   _v33 = pre (f2);
    _v34 = false -> _v33;
-   _v35 = pre f4;
+   _v35 = pre (f4);
    _v36 = false -> _v35;
     (x4, f4, ask4, debug_localfailure4, debug_cross_failure4, debug_st4) =
 	onlyroll2::Channel(ongroundreset, inairreset, choff4, xa4, xb4, disc4,
 	 _v38, _v40, _v42, _v44, _v46, _v48, allowed4);
-   _v37 = pre x1;
+   _v37 = pre (x1);
    _v38 = 0.0 -> _v37;
-   _v39 = pre x2;
+   _v39 = pre (x2);
    _v40 = 0.0 -> _v39;
-   _v41 = pre x3;
+   _v41 = pre (x3);
    _v42 = 0.0 -> _v41;
-   _v43 = pre f1;
+   _v43 = pre (f1);
    _v44 = false -> _v43;
-   _v45 = pre f2;
+   _v45 = pre (f2);
    _v46 = false -> _v45;
-   _v47 = pre f3;
+   _v47 = pre (f3);
    _v48 = false -> _v47;
     (allowed1, allowed2, allowed3, allowed4) = onlyroll2::Allocator(_v49,
 	 _v50, _v51, _v52, ongroundreset);
-   _v49 = pre ask1;
-   _v50 = pre ask2;
-   _v51 = pre ask3;
-   _v52 = pre ask4;
+   _v49 = pre (ask1);
+   _v50 = pre (ask2);
+   _v51 = pre (ask3);
+   _v52 = pre (ask4);
    x = onlyroll2::Calculate(x1, x2, x3, x4, f1, f2, f3, f4);
 tel
 -- end of node onlyroll2::onlyroll2
@@ -16016,9 +16016,9 @@ var
    _v2:bool;
 let
    c4 = false -> _v1;
-   _v1 = pre c1;
+   _v1 = pre (c1);
    c5 = true -> _v2;
-   _v2 = pre c2;
+   _v2 = pre (c2);
 tel
 -- end of node test::two_outputs
 
@@ -16098,7 +16098,7 @@ var
    _v5:bool;
 let
    edge = false -> _v5;
-   _v1 = pre in;
+   _v1 = pre (in);
    _v2 = not _v1;
    _v3 = in and _v2;
    _v4 = bidon2 and bidon1;
@@ -16125,7 +16125,7 @@ var
 let
    afterX = false -> _v4;
    _v1 = X or afterX;
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    _v3 = bidon2 and bidon1;
    _v4 = _v2 or _v3;
    (bidon1, bidon2) = toolate::bidon(X);
@@ -16141,7 +16141,7 @@ var
 let
    X =  if A then C else _v5;
    _v1 = toolate::after(A);
-   _v2 = pre X;
+   _v2 = pre (X);
    _v3 = false -> _v2;
    _v4 = C or _v3;
    _v5 =  if _v1 then _v4 else false;
@@ -16155,7 +16155,7 @@ var
 let
    X = toolate::implies(B, _v3);
    _v1 = toolate::once_since(C, A);
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    _v3 = false -> _v2;
 tel
 -- end of node toolate::once_from_to
@@ -16172,12 +16172,12 @@ var
    _v7:bool;
 let
    begin = active and _v3;
-   _v1 = pre active;
+   _v1 = pre (active);
    _v2 = not _v1;
    _v3 = false -> _v2;
    en = _v4 and _v6;
    _v4 = not active;
-   _v5 = pre active;
+   _v5 = pre (active);
    _v6 = false -> _v5;
    alarm = not _v7;
    _v7 = toolate::once_from_to(action, begin, en);
@@ -16400,7 +16400,7 @@ var
 let
    cpt = _v1 -> _v5;
    _v1 =  if val then 1 else 0;
-   _v2 = pre cpt;
+   _v2 = pre (cpt);
    _v3 = _v2 + 1;
    _v4 = Gyroscope::min_int(n, _v3);
    _v5 =  if val then _v4 else 0;
@@ -17292,7 +17292,7 @@ let
    red_res = arrays::big_sum(fill_res);
    fill_res = arrays::big_incr(init_incr);
    fillred_res = init_long -> _v2;
-   _v1 = pre fillred_res;
+   _v1 = pre (fillred_res);
    _v2 = arrays::add_long(init_long, _v1);
    ok = false -> _v3;
    _v3 = arrays::big_xor(fillred_res);
@@ -17481,7 +17481,7 @@ let
    _v2 = req and _v1;
    _v3 = accu_in.grant;
    _v4 = _v2 and _v3;
-   _v5 = pre ackout;
+   _v5 = pre (ackout);
    _v6 = false -> _v5;
    _v7 = not _v6;
    accu_out = _deSimone::cell_accu{token=_v8;grant=_v11};
@@ -18299,41 +18299,41 @@ let
    Hduree_pilote = cptDureeP = 2;
    Hduree_appli = cptDureeA = 7;
    countDP = false -> _v5;
-   _v1 = pre cptDureeP;
+   _v1 = pre (cptDureeP);
    _v2 = _v1 = 2;
-   _v3 = pre countDP;
+   _v3 = pre (countDP);
    _v4 =  if _v2 then false else _v3;
    _v5 =  if Hpilote then true else _v4;
    countDA = false -> _v10;
-   _v6 = pre cptDureeA;
+   _v6 = pre (cptDureeA);
    _v7 = _v6 = 7;
-   _v8 = pre countDA;
+   _v8 = pre (countDA);
    _v9 =  if _v7 then false else _v8;
    _v10 =  if Happli then true else _v9;
    cptDureeP = 1 -> _v13;
-   _v11 = pre cptDureeP;
+   _v11 = pre (cptDureeP);
    _v12 = _v11 + 1;
    _v13 =  if countDP then _v12 else 1;
    cptDureeA = 1 -> _v16;
-   _v14 = pre cptDureeA;
+   _v14 = pre (cptDureeA);
    _v15 = _v14 + 1;
    _v16 =  if countDA then _v15 else 1;
    cptC = 1 -> _v21;
-   _v17 = pre cptC;
+   _v17 = pre (cptC);
    _v18 = _v17 = 10;
-   _v19 = pre cptC;
+   _v19 = pre (cptC);
    _v20 = _v19 + 1;
    _v21 =  if _v18 then 1 else _v20;
    cptP = 1 -> _v26;
-   _v22 = pre cptP;
+   _v22 = pre (cptP);
    _v23 = _v22 = 5;
-   _v24 = pre cptP;
+   _v24 = pre (cptP);
    _v25 = _v24 + 1;
    _v26 =  if _v23 then 1 else _v25;
    cptA = 1 -> _v31;
-   _v27 = pre cptA;
+   _v27 = pre (cptA);
    _v28 = _v27 = 20;
-   _v29 = pre cptA;
+   _v29 = pre (cptA);
    _v30 = _v29 + 1;
    _v31 =  if _v28 then 1 else _v30;
 tel
@@ -18471,7 +18471,7 @@ let
    localData = _v1 -> _v5;
    _v1 = -1;
    _v2 = -1;
-   _v3 = pre localData;
+   _v3 = pre (localData);
    _v4 =  if dataGET then _v2 else _v3;
    _v5 =  if dataPUT then dataIN else _v4;
    localDataErasedFromBoiteCP = _v6 -> _v8;
@@ -18485,7 +18485,7 @@ let
    _v11 =  if dataPUT then localData else _v10;
    copyBoiteCPEvent = dataPUT;
    pLocalData = localData -> _v12;
-   _v12 = pre localData;
+   _v12 = pre (localData);
    dataOUT =  if dataGET then pLocalData else _v13;
    _v13 = -1;
 tel
@@ -18529,7 +18529,7 @@ let
    _v4 = semAutP and Hpilote;
    localDataErasedFromPilote = _v5 -> _v8;
    _v5 = -1;
-   _v6 = pre localData;
+   _v6 = pre (localData);
    _v7 = -1;
    _v8 =  if Hpilote then _v6 else _v7;
    erasedPiloteEvent = Hpilote;
@@ -18579,7 +18579,7 @@ let
    _v1 = getMem or putMem;
    localData = _v2 -> _v4;
    _v2 = -1;
-   _v3 = pre localData;
+   _v3 = pre (localData);
    _v4 =  if putMem then piloteData else _v3;
    readData =  if demandeGetMem then localData else _v5;
    _v5 = -1;
@@ -18587,13 +18587,13 @@ let
    _v6 = -1;
    _v7 = readData = _v6;
    _v8 = not _v7;
-   _v9 = pre _v8;
-   _v10 = pre demandeGetMem;
+   _v9 = pre (_v8);
+   _v10 = pre (demandeGetMem);
    _v11 =  if _v9 then false else _v10;
    _v12 =  if getMem then true else _v11;
    localDataErasedFromMem = _v13 -> _v16;
    _v13 = -1;
-   _v14 = pre localData;
+   _v14 = pre (localData);
    _v15 = -1;
    _v16 =  if putMem then _v14 else _v15;
    erasedMemEvent = putMem;
@@ -18638,7 +18638,7 @@ var
    _v21:bool;
 let
    free = true -> _v10;
-   _v1 = pre free;
+   _v1 = pre (free);
    _v2 = not semMemTakeP;
    _v3 = _v1 and _v2;
    _v4 = not semMemTakeR;
@@ -18649,16 +18649,16 @@ let
    _v9 = _v8 and semMemGive;
    _v10 = _v5 or _v9;
    semMemAutP = false -> _v12;
-   _v11 = pre free;
+   _v11 = pre (free);
    _v12 = _v11 and semMemTakeP;
    demandeR = false -> _v17;
    _v13 = semMemTakeR and semMemTakeP;
-   _v14 = pre semMemAutR;
-   _v15 = pre demandeR;
+   _v14 = pre (semMemAutR);
+   _v15 = pre (demandeR);
    _v16 =  if _v14 then false else _v15;
    _v17 =  if _v13 then true else _v16;
    semMemAutR = false -> _v21;
-   _v18 = pre free;
+   _v18 = pre (free);
    _v19 = not semMemTakeP;
    _v20 = _v18 and _v19;
    _v21 = _v20 and demandeR;
@@ -18823,7 +18823,7 @@ let
    _v2 = _v1^10;
    _v3 = _util::accObserver{nbCopy=_v2;indice=0};
    _v4 = accIterOut.nbCopy;
-   _v5 = pre _v4;
+   _v5 = pre (_v4);
    _v6 = _util::accObserver{nbCopy=_v5;indice=0};
    _v7 = red<<util::Niter, 8>>(_v6, numEvent_tab, value_tab);
    nbrCopy = accIterOut.nbCopy;
@@ -18856,14 +18856,14 @@ let
    newCptRetard =  if _v5 then 0 else _v16;
    _v1 = -1;
    _v2 = eltCopy = _v1;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = eltCopy = 1;
    _v5 = _v3 and _v4;
    _v6 = -1;
    _v7 = eltCopy <> _v6;
-   _v8 = pre _v7;
+   _v8 = pre (_v7);
    _v9 = eltCopy <> 0;
-   _v10 = pre _v9;
+   _v10 = pre (_v9);
    _v11 = _v8 and _v10;
    _v12 = eltCopy = 0;
    _v13 = _v11 and _v12;
@@ -18886,7 +18886,7 @@ let
    CptRetard = _v2 -> _v4;
    _v1 = -1;
    _v2 = _v1^10;
-   _v3 = pre CptRetard;
+   _v3 = pre (CptRetard);
    _v4 = map<<util::checkCopy, 10>>(nbrCopy, _v3);
 tel
 -- end of node util::updateCptRetard
@@ -18977,9 +18977,9 @@ let
    accOut =  if _v8 then _v12 else _v17;
    _v1 = -1;
    _v2 = eltCopy <> _v1;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = eltCopy <> 0;
-   _v5 = pre _v4;
+   _v5 = pre (_v4);
    _v6 = _v3 and _v5;
    _v7 = eltCopy = 0;
    _v8 = _v6 and _v7;
@@ -19136,7 +19136,7 @@ let
    _v5 = localDataFromRead = _v4;
    _v6 = not _v5;
    res = false -> _v8;
-   _v7 = pre res;
+   _v7 = pre (res);
    _v8 = v or _v7;
 tel
 -- end of node pilote::system
@@ -19164,7 +19164,7 @@ var
 let
    elt_out = true -> _v2;
    _v1 = not accu_in;
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    accu_out = elt_in;
 tel
 -- end of node pipeline::oneStep_pipe
@@ -19175,7 +19175,7 @@ var
    _v2:bool;
 let
    (accu_out, out) = fillred<<pipeline::oneStep_pipe, 10>>(_v2, in);
-   _v1 = pre accu_out;
+   _v1 = pre (accu_out);
    _v2 = true -> _v1;
 tel
 -- end of node pipeline::pipeline
@@ -19516,7 +19516,7 @@ let
    _v2 = _v1^10;
    _v3 = _util::accObserver{nbCopy=_v2;indice=0};
    _v4 = accIterOut.nbCopy;
-   _v5 = pre _v4;
+   _v5 = pre (_v4);
    _v6 = _util::accObserver{nbCopy=_v5;indice=0};
    _v7 = red<<util::Niter, 8>>(_v6, numEvent_tab, value_tab);
    nbrCopy = accIterOut.nbCopy;
@@ -19549,14 +19549,14 @@ let
    newCptRetard =  if _v5 then 0 else _v16;
    _v1 = -1;
    _v2 = eltCopy = _v1;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = eltCopy = 1;
    _v5 = _v3 and _v4;
    _v6 = -1;
    _v7 = eltCopy <> _v6;
-   _v8 = pre _v7;
+   _v8 = pre (_v7);
    _v9 = eltCopy <> 0;
-   _v10 = pre _v9;
+   _v10 = pre (_v9);
    _v11 = _v8 and _v10;
    _v12 = eltCopy = 0;
    _v13 = _v11 and _v12;
@@ -19579,7 +19579,7 @@ let
    CptRetard = _v2 -> _v4;
    _v1 = -1;
    _v2 = _v1^10;
-   _v3 = pre CptRetard;
+   _v3 = pre (CptRetard);
    _v4 = map<<util::checkCopy, 10>>(nbrCopy, _v3);
 tel
 -- end of node util::updateCptRetard
@@ -19670,9 +19670,9 @@ let
    accOut =  if _v8 then _v12 else _v17;
    _v1 = -1;
    _v2 = eltCopy <> _v1;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
    _v4 = eltCopy <> 0;
-   _v5 = pre _v4;
+   _v5 = pre (_v4);
    _v6 = _v3 and _v5;
    _v7 = eltCopy = 0;
    _v8 = _v6 and _v7;
@@ -20375,7 +20375,7 @@ var
 let
    y =  if c then _v1 else _v3;
    _v1 = TestCondact::n(x);
-   _v2 = pre y;
+   _v2 = pre (y);
    _v3 = d -> _v2;
 tel
 -- end of node TestCondact::C
@@ -21265,7 +21265,7 @@ var
    _v1:int;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pint::fby1
 
@@ -21280,7 +21280,7 @@ var
    _v1:int;
 let
    ok = init -> _v1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node Pint::n
 type _Preal::t = real;
@@ -21289,7 +21289,7 @@ var
    _v1:real;
 let
    ok = init -> _v1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node Preal::n
 type _Pbool::t = bool;
@@ -21298,7 +21298,7 @@ var
    _v1:bool;
 let
    ok = init -> _v1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node Pbool::n
 const main::pi = 3.14159;
@@ -21337,7 +21337,7 @@ var
    _v1:real;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node preal::fby1
 type _pbool::t = bool;
@@ -21346,7 +21346,7 @@ var
    _v1:bool;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pbool::fby1
 type _pint::t = int;
@@ -21355,7 +21355,7 @@ var
    _v1:int;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pint::fby1
 type _inter::selType = struct  {i : int; b : bool; r : real};
@@ -21405,7 +21405,7 @@ var
    _v1:real;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node preal::fby1
 type _pbool::t = bool;
@@ -21414,7 +21414,7 @@ var
    _v1:bool;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pbool::fby1
 type _pint::t = int;
@@ -21423,7 +21423,7 @@ var
    _v1:int;
 let
    next = init -> _v1;
-   _v1 = pre fb;
+   _v1 = pre (fb);
 tel
 -- end of node pint::fby1
 type _inter::selType = struct  {i : int; b : bool; r : real};
@@ -21495,7 +21495,7 @@ var
    _v3:real;
 let
    d = 0.0 -> _v3;
-   _v1 = pre x;
+   _v1 = pre (x);
    _v2 = x - _v1;
    _v3 = _v2 / 0.1;
 tel
@@ -21511,7 +21511,7 @@ let
    x = 0.0 -> _v3;
    _v1 = 0.1 * dx;
    _v2 = _v1 + x;
-   _v3 = pre _v2;
+   _v3 = pre (_v2);
 tel
 -- end of node asservi::I
 node asservi::I2(d2x:real) returns (x:real);
@@ -21524,7 +21524,7 @@ let
    dx = asservi::I(d2x);
    x = dx -> _v3;
    _v1 = 0.1 * dx;
-   _v2 = pre x;
+   _v2 = pre (x);
    _v3 = _v1 + _v2;
 tel
 -- end of node asservi::I2
@@ -21729,7 +21729,7 @@ var
    _v1:int;
 let
    out = _v1 + 1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node activation1::up
 node activation1::down(in:int) returns (out:int);
@@ -21737,7 +21737,7 @@ var
    _v1:int;
 let
    out = _v1 - 1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node activation1::down
 node activation1::activation1(evt:bool; reset:bool) returns (scie:int);
@@ -21756,11 +21756,11 @@ var
    _v11:int;
 let
    go_up = true -> _v7;
-   _v1 = pre scie;
+   _v1 = pre (scie);
    _v2 = _v1 >= 5;
-   _v3 = pre scie;
+   _v3 = pre (scie);
    _v4 = _v3 <= 0;
-   _v5 = pre go_up;
+   _v5 = pre (go_up);
    _v6 =  if _v4 then true else _v5;
    _v7 =  if _v2 then false else _v6;
    scie =  if reset then 0 else _v11;
@@ -21781,7 +21781,7 @@ var
    _v1:int;
 let
    out = _v1 + 1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node activation2::up
 node activation2::down(in:int) returns (out:int);
@@ -21789,7 +21789,7 @@ var
    _v1:int;
 let
    out = _v1 - 1;
-   _v1 = pre in;
+   _v1 = pre (in);
 tel
 -- end of node activation2::down
 node activation2::activation2(evt:bool) returns (scie:int);
@@ -21809,18 +21809,18 @@ var
    _v12:int;
 let
    go_up = true -> _v7;
-   _v1 = pre scie;
+   _v1 = pre (scie);
    _v2 = _v1 >= 5;
-   _v3 = pre scie;
+   _v3 = pre (scie);
    _v4 = _v3 <= 0;
-   _v5 = pre go_up;
+   _v5 = pre (go_up);
    _v6 =  if _v4 then true else _v5;
    _v7 =  if _v2 then false else _v6;
    scie = 0 -> _v12;
    _v8 = activation2::up(scie);
    _v9 = activation2::down(scie);
    _v10 =  if go_up then _v8 else _v9;
-   _v11 = pre scie;
+   _v11 = pre (scie);
    _v12 =  if evt then _v10 else _v11;
 tel
 -- end of node activation2::activation2
@@ -21873,7 +21873,7 @@ var
    _v5:bool;
 let
    edge = false -> _v5;
-   _v1 = pre in;
+   _v1 = pre (in);
    _v2 = not _v1;
    _v3 = in and _v2;
    _v4 = bidon2 and bidon1;
@@ -21892,7 +21892,7 @@ var
 let
    afterX = false -> _v4;
    _v1 = X or afterX;
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    _v3 = bidon2 and bidon1;
    _v4 = _v2 or _v3;
    (bidon1, bidon2) = bug::bidon(X);
@@ -21908,7 +21908,7 @@ var
 let
    X =  if A then C else _v5;
    _v1 = bug::after(A);
-   _v2 = pre X;
+   _v2 = pre (X);
    _v3 = false -> _v2;
    _v4 = C or _v3;
    _v5 =  if _v1 then _v4 else false;
@@ -21930,7 +21930,7 @@ var
 let
    X = bug::implies(B, _v3);
    _v1 = bug::once_since(C, A);
-   _v2 = pre _v1;
+   _v2 = pre (_v1);
    _v3 = false -> _v2;
 tel
 -- end of node bug::once_from_to
@@ -21977,14 +21977,14 @@ let
    _v5 = _v4 + y;
    _v6 = 10.0 - 10.0;
    _v7 = _v6 - 10.0;
-   _v8 = pre realO;
+   _v8 = pre (realO);
    _v9 = _v8 * realI;
    x = 0 -> _v12;
-   _v10 = pre x;
+   _v10 = pre (x);
    _v11 = _v10 + 1;
    _v12 =  if active then y else _v11;
    y = 1 -> _v15;
-   _v13 = pre y;
+   _v13 = pre (y);
    _v14 = _v13 + 1;
    _v15 =  if active then _v14 else x;
 tel
@@ -22111,7 +22111,7 @@ var
    _v1:bool;
 let
    out1 = true -> _v1;
-   _v1 = pre in1;
+   _v1 = pre (in1);
    out2 = in2;
 tel
 -- end of node piege::aux2
@@ -22121,7 +22121,7 @@ var
    _v2:bool;
 let
    out = in1 or _v2;
-   _v1 = pre in2;
+   _v1 = pre (in2);
    _v2 = true -> _v1;
 tel
 -- end of node piege::aux1
-- 
GitLab