From ad005c3c5ceba464a64649219008e8f5fc3c1285 Mon Sep 17 00:00:00 2001
From: Erwan Jahier <jahier@imag.fr>
Date: Fri, 13 Jun 2014 16:20:01 +0200
Subject: [PATCH] Soc2c : print "_true" instead of "true" for true constant
 (ditto for false).

test: 238->203 failures
---
 src/lic2soc.ml    |  2 +-
 src/soc2c.ml      |  8 +++--
 src/soc2cIdent.ml |  4 ++-
 test/lus2lic.sum  | 81 ++++++++++++++++++++++-------------------------
 test/lus2lic.time |  4 +--
 5 files changed, 48 insertions(+), 51 deletions(-)

diff --git a/src/lic2soc.ml b/src/lic2soc.ml
index 8554c055..2047902f 100644
--- a/src/lic2soc.ml
+++ b/src/lic2soc.ml
@@ -1,4 +1,4 @@
-(** Time-stamp: <modified the 12/06/2014 (at 09:32) by Erwan Jahier> *)
+(** Time-stamp: <modified the 13/06/2014 (at 16:28) by Erwan Jahier> *)
  
 open Lxm
 open Lic
diff --git a/src/soc2c.ml b/src/soc2c.ml
index de2115b0..2c1a8649 100644
--- a/src/soc2c.ml
+++ b/src/soc2c.ml
@@ -1,4 +1,4 @@
-(* Time-stamp: <modified the 13/06/2014 (at 15:36) by Erwan Jahier> *)
+(* Time-stamp: <modified the 13/06/2014 (at 16:23) by Erwan Jahier> *)
 
 
 (* let put (os: out_channel) (fmt:('a, unit, string, unit) format4) : 'a = *)
@@ -81,6 +81,8 @@ let (is_memory_less : Soc.t -> bool) =
 
 let rec (string_of_var_expr: Soc.t -> Soc.var_expr -> string) = 
   fun soc -> function
+    | Const("true", _) -> "_true"
+    | Const("false", _) -> "_false"
     | Const(id, _) -> id2s id
     | Var ("mem_pre",_)   -> (* Clutch! it's not an interface var... *) "ctx->mem_pre" 
     | Var (id,_)   -> 
@@ -408,10 +410,10 @@ let (gen_loop_file : Soc.t -> unit) =
 static int ISATTY;
 /* MACROS DEFINITIONS ****************/
 #ifndef TT
-#define TT \"true\"
+#define TT \"1\"
 #endif
 #ifndef FF
-#define FF \"false\"
+#define FF \"0\"
 #endif
 #ifndef BB
 #define BB \"bottom\"
diff --git a/src/soc2cIdent.ml b/src/soc2cIdent.ml
index fa81b1fd..b61716b7 100644
--- a/src/soc2cIdent.ml
+++ b/src/soc2cIdent.ml
@@ -1,9 +1,11 @@
-(* Time-stamp: <modified the 11/06/2014 (at 14:54) by Erwan Jahier> *)
+(* Time-stamp: <modified the 13/06/2014 (at 16:24) by Erwan Jahier> *)
 
 let colcol = Str.regexp "::"
 let id2s id = (* XXX Refuser les noms de module à la con plutot *)
   let str =
 	 match Str.split colcol id with
+	   | ["true"] -> "_true" (* a good idea to do that here ? *)  
+	   | ["false"] -> "_false"
 	   | [s] -> s
 	   | [m;s] -> if Lv6MainArgs.global_opt.Lv6MainArgs.no_prefix then s else m^"_"^s 
 	   | _ -> id
diff --git a/test/lus2lic.sum b/test/lus2lic.sum
index 01f9c38d..d5f2c813 100644
--- a/test/lus2lic.sum
+++ b/test/lus2lic.sum
@@ -1,4 +1,4 @@
-Test Run By jahier on Fri Jun 13 15:37:49 2014
+Test Run By jahier on Fri Jun 13 16:25:12 2014
 Native configuration is i686-pc-linux-gnu
 
 		=== lus2lic tests ===
@@ -20,13 +20,13 @@ PASS: ./lus2lic {-ec -o /tmp/argos.ec should_work/argos.lus}
 PASS: ./myec2c {-o /tmp/argos.c /tmp/argos.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/argos.lus
 PASS: ./lus2lic {-2c should_work/argos.lus -n argos}
-FAIL: Check that the generated C code compiles  : gcc argos_argos.c argos_argos_loop.c 
+PASS: gcc argos_argos.c argos_argos_loop.c 
 PASS: ./lus2lic {-o /tmp/ck5.lic should_work/ck5.lus}
 PASS: ./lus2lic {-ec -o /tmp/ck5.ec should_work/ck5.lus}
 PASS: ./myec2c {-o /tmp/ck5.c /tmp/ck5.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/ck5.lus
 PASS: ./lus2lic {-2c should_work/ck5.lus -n ck5}
-FAIL: Check that the generated C code compiles  : gcc ck5_ck5.c ck5_ck5_loop.c 
+PASS: gcc ck5_ck5.c ck5_ck5_loop.c 
 PASS: ./lus2lic {-o /tmp/normal.lic should_work/normal.lus}
 PASS: ./lus2lic {-ec -o /tmp/normal.ec should_work/normal.lus}
 PASS: ./myec2c {-o /tmp/normal.c /tmp/normal.ec}
@@ -106,7 +106,7 @@ PASS: ./lus2lic {-ec -o /tmp/heater_control.ec should_work/heater_control.lus}
 PASS: ./myec2c {-o /tmp/heater_control.c /tmp/heater_control.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/heater_control.lus
 PASS: ./lus2lic {-2c should_work/heater_control.lus -n heater_control}
-FAIL: Check that the generated C code compiles  : gcc heater_control_heater_control.c heater_control_heater_control_loop.c 
+PASS: gcc heater_control_heater_control.c heater_control_heater_control_loop.c 
 PASS: ./lus2lic {-o /tmp/titi.lic should_work/titi.lus}
 PASS: ./lus2lic {-ec -o /tmp/titi.ec should_work/titi.lus}
 PASS: ./myec2c {-o /tmp/titi.c /tmp/titi.ec}
@@ -124,7 +124,7 @@ PASS: ./lus2lic {-ec -o /tmp/rs.ec should_work/rs.lus}
 PASS: ./myec2c {-o /tmp/rs.c /tmp/rs.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/rs.lus
 PASS: ./lus2lic {-2c should_work/rs.lus -n rs}
-FAIL: Check that the generated C code compiles  : gcc rs_rs.c rs_rs_loop.c 
+PASS: gcc rs_rs.c rs_rs_loop.c 
 PASS: ./lus2lic {-o /tmp/access.lic should_work/access.lus}
 PASS: ./lus2lic {-ec -o /tmp/access.ec should_work/access.lus}
 PASS: ./myec2c {-o /tmp/access.c /tmp/access.ec}
@@ -183,7 +183,7 @@ PASS: ./lus2lic {-ec -o /tmp/toolate.ec should_work/toolate.lus}
 PASS: ./myec2c {-o /tmp/toolate.c /tmp/toolate.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/toolate.lus
 PASS: ./lus2lic {-2c should_work/toolate.lus -n toolate}
-FAIL: Check that the generated C code compiles  : gcc toolate_toolate.c toolate_toolate_loop.c 
+PASS: gcc toolate_toolate.c toolate_toolate_loop.c 
 PASS: ./lus2lic {-o /tmp/testCapt.lic should_work/testCapt.lus}
 PASS: ./lus2lic {-ec -o /tmp/testCapt.ec should_work/testCapt.lus}
 PASS: ./myec2c {-o /tmp/testCapt.c /tmp/testCapt.ec}
@@ -282,19 +282,19 @@ PASS: ./lus2lic {-ec -o /tmp/test.ec should_work/test.lus}
 PASS: ./myec2c {-o /tmp/test.c /tmp/test.ec}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/test.lus
 PASS: ./lus2lic {-2c should_work/test.lus -n test}
-FAIL: Check that the generated C code compiles  : gcc test_test.c test_test_loop.c 
+PASS: gcc test_test.c test_test_loop.c 
 PASS: ./lus2lic {-o /tmp/FALLING_EDGE.lic should_work/FALLING_EDGE.lus}
 PASS: ./lus2lic {-ec -o /tmp/FALLING_EDGE.ec should_work/FALLING_EDGE.lus}
 PASS: ./myec2c {-o /tmp/FALLING_EDGE.c /tmp/FALLING_EDGE.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/FALLING_EDGE.lus
 PASS: ./lus2lic {-2c should_work/FALLING_EDGE.lus -n FALLING_EDGE}
-FAIL: Check that the generated C code compiles  : gcc FALLING_EDGE_FALLING_EDGE.c FALLING_EDGE_FALLING_EDGE_loop.c 
+PASS: gcc FALLING_EDGE_FALLING_EDGE.c FALLING_EDGE_FALLING_EDGE_loop.c 
 PASS: ./lus2lic {-o /tmp/SWITCH.lic should_work/SWITCH.lus}
 PASS: ./lus2lic {-ec -o /tmp/SWITCH.ec should_work/SWITCH.lus}
 PASS: ./myec2c {-o /tmp/SWITCH.c /tmp/SWITCH.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/SWITCH.lus
 PASS: ./lus2lic {-2c should_work/SWITCH.lus -n SWITCH}
-FAIL: Check that the generated C code compiles  : gcc SWITCH_SWITCH.c SWITCH_SWITCH_loop.c 
+PASS: gcc SWITCH_SWITCH.c SWITCH_SWITCH_loop.c 
 PASS: ./lus2lic {-o /tmp/cst.lic should_work/cst.lus}
 PASS: ./lus2lic {-ec -o /tmp/cst.ec should_work/cst.lus}
 PASS: ./myec2c {-o /tmp/cst.c /tmp/cst.ec}
@@ -335,7 +335,7 @@ PASS: ./lus2lic {-ec -o /tmp/bascule.ec should_work/bascule.lus}
 PASS: ./myec2c {-o /tmp/bascule.c /tmp/bascule.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/bascule.lus
 PASS: ./lus2lic {-2c should_work/bascule.lus -n bascule}
-FAIL: Check that the generated C code compiles  : gcc bascule_bascule.c bascule_bascule_loop.c 
+PASS: gcc bascule_bascule.c bascule_bascule_loop.c 
 PASS: ./lus2lic {-o /tmp/double_delay.lic should_work/double_delay.lus}
 PASS: ./lus2lic {-ec -o /tmp/double_delay.ec should_work/double_delay.lus}
 PASS: ./myec2c {-o /tmp/double_delay.c /tmp/double_delay.ec}
@@ -429,7 +429,7 @@ PASS: ./lus2lic {-ec -o /tmp/ec.ec should_work/ec.lus}
 PASS: ./myec2c {-o /tmp/ec.c /tmp/ec.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/ec.lus
 PASS: ./lus2lic {-2c should_work/ec.lus -n ec}
-FAIL: Check that the generated C code compiles  : gcc ec_ec.c ec_ec_loop.c 
+PASS: gcc ec_ec.c ec_ec_loop.c 
 PASS: ./lus2lic {-o /tmp/morel3.lic should_work/morel3.lus}
 PASS: ./lus2lic {-ec -o /tmp/morel3.ec should_work/morel3.lus}
 PASS: ./myec2c {-o /tmp/morel3.c /tmp/morel3.ec}
@@ -494,7 +494,7 @@ PASS: ./lus2lic {-ec -o /tmp/trivial.ec should_work/trivial.lus}
 PASS: ./myec2c {-o /tmp/trivial.c /tmp/trivial.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/trivial.lus
 PASS: ./lus2lic {-2c should_work/trivial.lus -n trivial}
-FAIL: Check that the generated C code compiles  : gcc trivial_trivial.c trivial_trivial_loop.c 
+PASS: gcc trivial_trivial.c trivial_trivial_loop.c 
 PASS: ./lus2lic {-o /tmp/packs.lic should_work/packs.lus}
 PASS: ./lus2lic {-ec -o /tmp/packs.ec should_work/packs.lus}
 PASS: ./myec2c {-o /tmp/packs.c /tmp/packs.ec}
@@ -568,17 +568,10 @@ PASS: ./myec2c {-o /tmp/morel4.c /tmp/morel4.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/morel4.lus
 PASS: ./lus2lic {-2c should_work/morel4.lus -n morel4}
 FAIL: Check that the generated C code compiles  : gcc morel4_morel4.c morel4_morel4_loop.c 
-<<<<<<< HEAD
 PASS: ./lus2lic {-o /tmp/trivial_array.lic should_work/trivial_array.lus}
 FAIL: Generate ec code  : ./lus2lic {-ec -o /tmp/trivial_array.ec should_work/trivial_array.lus}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/trivial_array.lus
 PASS: ./lus2lic {-2c should_work/trivial_array.lus -n trivial_array}
-=======
-FAIL: without any option: ./lus2lic {-o /tmp/trivial_array.lic should_work/trivial_array.lus}
-FAIL: Generate ec code  : ./lus2lic {-ec -o /tmp/trivial_array.ec should_work/trivial_array.lus}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/trivial_array.lus
-FAIL: Generate c code  : ./lus2lic {-2c should_work/trivial_array.lus -n trivial_array}
->>>>>>> ede35c39b81d4bd20674ac6aaf4962417a1adf6f
 PASS: gcc trivial_array_trivial_array.c trivial_array_trivial_array_loop.c 
 PASS: ./lus2lic {-o /tmp/param_node4.lic should_work/param_node4.lus}
 PASS: ./lus2lic {-ec -o /tmp/param_node4.ec should_work/param_node4.lus}
@@ -603,7 +596,7 @@ PASS: ./lus2lic {-ec -o /tmp/produitBool.ec should_work/produitBool.lus}
 PASS: ./myec2c {-o /tmp/produitBool.c /tmp/produitBool.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/produitBool.lus
 PASS: ./lus2lic {-2c should_work/produitBool.lus -n produitBool}
-FAIL: Check that the generated C code compiles  : gcc produitBool_produitBool.c produitBool_produitBool_loop.c 
+PASS: gcc produitBool_produitBool.c produitBool_produitBool_loop.c 
 PASS: ./lus2lic {-o /tmp/noeudsIndependants.lic should_work/noeudsIndependants.lus}
 PASS: ./lus2lic {-ec -o /tmp/noeudsIndependants.ec should_work/noeudsIndependants.lus}
 PASS: ./myec2c {-o /tmp/noeudsIndependants.c /tmp/noeudsIndependants.ec}
@@ -675,7 +668,7 @@ PASS: ./lus2lic {-ec -o /tmp/initial.ec should_work/initial.lus}
 PASS: ./myec2c {-o /tmp/initial.c /tmp/initial.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/initial.lus
 PASS: ./lus2lic {-2c should_work/initial.lus -n initial}
-FAIL: Check that the generated C code compiles  : gcc initial_initial.c initial_initial_loop.c 
+PASS: gcc initial_initial.c initial_initial_loop.c 
 PASS: ./lus2lic {-o /tmp/declaration.lic should_work/declaration.lus}
 PASS: ./lus2lic {-ec -o /tmp/declaration.ec should_work/declaration.lus}
 PASS: ./myec2c {-o /tmp/declaration.c /tmp/declaration.ec}
@@ -693,7 +686,7 @@ PASS: ./lus2lic {-ec -o /tmp/TIME_STABLE1.ec should_work/TIME_STABLE1.lus}
 PASS: ./myec2c {-o /tmp/TIME_STABLE1.c /tmp/TIME_STABLE1.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/TIME_STABLE1.lus
 PASS: ./lus2lic {-2c should_work/TIME_STABLE1.lus -n TIME_STABLE1}
-FAIL: Check that the generated C code compiles  : gcc TIME_STABLE1_TIME_STABLE1.c TIME_STABLE1_TIME_STABLE1_loop.c 
+PASS: gcc TIME_STABLE1_TIME_STABLE1.c TIME_STABLE1_TIME_STABLE1_loop.c 
 PASS: ./lus2lic {-o /tmp/nc5.lic should_work/nc5.lus}
 PASS: ./lus2lic {-ec -o /tmp/nc5.ec should_work/nc5.lus}
 PASS: ./myec2c {-o /tmp/nc5.c /tmp/nc5.ec}
@@ -708,7 +701,7 @@ PASS: ./lus2lic {-ec -o /tmp/mouse1.ec should_work/mouse1.lus}
 PASS: ./myec2c {-o /tmp/mouse1.c /tmp/mouse1.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/mouse1.lus
 PASS: ./lus2lic {-2c should_work/mouse1.lus -n mouse1}
-FAIL: Check that the generated C code compiles  : gcc mouse1_mouse1.c mouse1_mouse1_loop.c 
+PASS: gcc mouse1_mouse1.c mouse1_mouse1_loop.c 
 PASS: ./lus2lic {-o /tmp/lustre_test1_ok.lic should_work/lustre_test1_ok.lus}
 PASS: ./lus2lic {-ec -o /tmp/lustre_test1_ok.ec should_work/lustre_test1_ok.lus}
 PASS: ./myec2c {-o /tmp/lustre_test1_ok.c /tmp/lustre_test1_ok.ec}
@@ -828,19 +821,19 @@ PASS: ./lus2lic {-ec -o /tmp/SOURIS.ec should_work/SOURIS.lus}
 PASS: ./myec2c {-o /tmp/SOURIS.c /tmp/SOURIS.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/SOURIS.lus
 PASS: ./lus2lic {-2c should_work/SOURIS.lus -n SOURIS}
-FAIL: Check that the generated C code compiles  : gcc SOURIS_SOURIS.c SOURIS_SOURIS_loop.c 
+PASS: gcc SOURIS_SOURIS.c SOURIS_SOURIS_loop.c 
 PASS: ./lus2lic {-o /tmp/param_node2.lic should_work/param_node2.lus}
 PASS: ./lus2lic {-ec -o /tmp/param_node2.ec should_work/param_node2.lus}
 PASS: ./myec2c {-o /tmp/param_node2.c /tmp/param_node2.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/param_node2.lus
 PASS: ./lus2lic {-2c should_work/param_node2.lus -n param_node2}
-FAIL: Check that the generated C code compiles  : gcc param_node2_param_node2.c param_node2_param_node2_loop.c 
+PASS: gcc param_node2_param_node2.c param_node2_param_node2_loop.c 
 PASS: ./lus2lic {-o /tmp/o2l_feux_compl.lic should_work/o2l_feux_compl.lus}
 PASS: ./lus2lic {-ec -o /tmp/o2l_feux_compl.ec should_work/o2l_feux_compl.lus}
 PASS: ./myec2c {-o /tmp/o2l_feux_compl.c /tmp/o2l_feux_compl.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/o2l_feux_compl.lus
 PASS: ./lus2lic {-2c should_work/o2l_feux_compl.lus -n o2l_feux_compl}
-FAIL: Check that the generated C code compiles  : gcc o2l_feux_compl_o2l_feux_compl.c o2l_feux_compl_o2l_feux_compl_loop.c 
+PASS: gcc o2l_feux_compl_o2l_feux_compl.c o2l_feux_compl_o2l_feux_compl_loop.c 
 PASS: ./lus2lic {-o /tmp/model.lic should_work/model.lus}
 PASS: ./lus2lic {-ec -o /tmp/model.ec should_work/model.lus}
 PASS: ./myec2c {-o /tmp/model.c /tmp/model.ec}
@@ -857,7 +850,7 @@ PASS: ./lus2lic {-ec -o /tmp/TIME_STABLE.ec should_work/TIME_STABLE.lus}
 PASS: ./myec2c {-o /tmp/TIME_STABLE.c /tmp/TIME_STABLE.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/TIME_STABLE.lus
 PASS: ./lus2lic {-2c should_work/TIME_STABLE.lus -n TIME_STABLE}
-FAIL: Check that the generated C code compiles  : gcc TIME_STABLE_TIME_STABLE.c TIME_STABLE_TIME_STABLE_loop.c 
+PASS: gcc TIME_STABLE_TIME_STABLE.c TIME_STABLE_TIME_STABLE_loop.c 
 PASS: ./lus2lic {-o /tmp/cpt.lic should_work/cpt.lus}
 PASS: ./lus2lic {-ec -o /tmp/cpt.ec should_work/cpt.lus}
 PASS: ./myec2c {-o /tmp/cpt.c /tmp/cpt.ec}
@@ -875,13 +868,13 @@ PASS: ./lus2lic {-ec -o /tmp/activation_ec.ec should_work/activation_ec.lus}
 PASS: ./myec2c {-o /tmp/activation_ec.c /tmp/activation_ec.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/activation_ec.lus
 PASS: ./lus2lic {-2c should_work/activation_ec.lus -n activation_ec}
-FAIL: Check that the generated C code compiles  : gcc activation_ec_activation_ec.c activation_ec_activation_ec_loop.c 
+PASS: gcc activation_ec_activation_ec.c activation_ec_activation_ec_loop.c 
 PASS: ./lus2lic {-o /tmp/impl_priority.lic should_work/impl_priority.lus}
 PASS: ./lus2lic {-ec -o /tmp/impl_priority.ec should_work/impl_priority.lus}
 PASS: ./myec2c {-o /tmp/impl_priority.c /tmp/impl_priority.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/impl_priority.lus
 PASS: ./lus2lic {-2c should_work/impl_priority.lus -n impl_priority}
-FAIL: Check that the generated C code compiles  : gcc impl_priority_impl_priority.c impl_priority_impl_priority_loop.c 
+PASS: gcc impl_priority_impl_priority.c impl_priority_impl_priority_loop.c 
 PASS: ./lus2lic {-o /tmp/exclusion.lic should_work/exclusion.lus}
 PASS: ./lus2lic {-ec -o /tmp/exclusion.ec should_work/exclusion.lus}
 PASS: ./myec2c {-o /tmp/exclusion.c /tmp/exclusion.ec}
@@ -981,7 +974,7 @@ PASS: ./lus2lic {-ec -o /tmp/mouse3.ec should_work/mouse3.lus}
 PASS: ./myec2c {-o /tmp/mouse3.c /tmp/mouse3.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/mouse3.lus
 PASS: ./lus2lic {-2c should_work/mouse3.lus -n mouse3}
-FAIL: Check that the generated C code compiles  : gcc mouse3_mouse3.c mouse3_mouse3_loop.c 
+PASS: gcc mouse3_mouse3.c mouse3_mouse3_loop.c 
 PASS: ./lus2lic {-o /tmp/array_concat.lic should_work/array_concat.lus}
 PASS: ./lus2lic {-ec -o /tmp/array_concat.ec should_work/array_concat.lus}
 FAIL: Try ec2c on the result: ./myec2c {-o /tmp/array_concat.c /tmp/array_concat.ec}
@@ -990,7 +983,7 @@ PASS: ./lus2lic {-ec -o /tmp/ex.ec should_work/ex.lus}
 PASS: ./myec2c {-o /tmp/ex.c /tmp/ex.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/ex.lus
 PASS: ./lus2lic {-2c should_work/ex.lus -n ex}
-FAIL: Check that the generated C code compiles  : gcc ex_ex.c ex_ex_loop.c 
+PASS: gcc ex_ex.c ex_ex_loop.c 
 PASS: ./lus2lic {-o /tmp/xxx.lic should_work/xxx.lus}
 PASS: ./lus2lic {-ec -o /tmp/xxx.ec should_work/xxx.lus}
 PASS: ./myec2c {-o /tmp/xxx.c /tmp/xxx.ec}
@@ -1118,7 +1111,7 @@ PASS: ./lus2lic {-ec -o /tmp/uu.ec should_work/uu.lus}
 PASS: ./myec2c {-o /tmp/uu.c /tmp/uu.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/uu.lus
 PASS: ./lus2lic {-2c should_work/uu.lus -n uu}
-FAIL: Check that the generated C code compiles  : gcc uu_uu.c uu_uu_loop.c 
+PASS: gcc uu_uu.c uu_uu_loop.c 
 PASS: ./lus2lic {-o /tmp/simpleRed.lic should_work/simpleRed.lus}
 PASS: ./lus2lic {-ec -o /tmp/simpleRed.ec should_work/simpleRed.lus}
 PASS: ./myec2c {-o /tmp/simpleRed.c /tmp/simpleRed.ec}
@@ -1136,7 +1129,7 @@ PASS: ./lus2lic {-ec -o /tmp/pre_x.ec should_work/pre_x.lus}
 PASS: ./myec2c {-o /tmp/pre_x.c /tmp/pre_x.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/pre_x.lus
 PASS: ./lus2lic {-2c should_work/pre_x.lus -n pre_x}
-FAIL: Check that the generated C code compiles  : gcc pre_x_pre_x.c pre_x_pre_x_loop.c 
+PASS: gcc pre_x_pre_x.c pre_x_pre_x_loop.c 
 PASS: ./lus2lic {-o /tmp/ts01.lic should_work/ts01.lus}
 PASS: ./lus2lic {-ec -o /tmp/ts01.ec should_work/ts01.lus}
 PASS: ./myec2c {-o /tmp/ts01.c /tmp/ts01.ec}
@@ -1148,7 +1141,7 @@ PASS: ./lus2lic {-ec -o /tmp/_N_uu.ec should_work/_N_uu.lus}
 PASS: ./myec2c {-o /tmp/_N_uu.c /tmp/_N_uu.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/_N_uu.lus
 PASS: ./lus2lic {-2c should_work/_N_uu.lus -n _N_uu}
-FAIL: Check that the generated C code compiles  : gcc _N_uu__N_uu.c _N_uu__N_uu_loop.c 
+PASS: gcc _N_uu__N_uu.c _N_uu__N_uu_loop.c 
 PASS: ./lus2lic {-o /tmp/X2.lic should_work/X2.lus}
 PASS: ./lus2lic {-ec -o /tmp/X2.ec should_work/X2.lus}
 PASS: ./myec2c {-o /tmp/X2.c /tmp/X2.ec}
@@ -1212,7 +1205,7 @@ PASS: ./lus2lic {-ec -o /tmp/STABLE.ec should_work/STABLE.lus}
 PASS: ./myec2c {-o /tmp/STABLE.c /tmp/STABLE.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/STABLE.lus
 PASS: ./lus2lic {-2c should_work/STABLE.lus -n STABLE}
-FAIL: Check that the generated C code compiles  : gcc STABLE_STABLE.c STABLE_STABLE_loop.c 
+PASS: gcc STABLE_STABLE.c STABLE_STABLE_loop.c 
 PASS: ./lus2lic {-o /tmp/mapiter.lic should_work/mapiter.lus}
 PASS: ./lus2lic {-ec -o /tmp/mapiter.ec should_work/mapiter.lus}
 PASS: ./myec2c {-o /tmp/mapiter.c /tmp/mapiter.ec}
@@ -1224,7 +1217,7 @@ PASS: ./lus2lic {-ec -o /tmp/tuple.ec should_work/tuple.lus}
 PASS: ./myec2c {-o /tmp/tuple.c /tmp/tuple.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/tuple.lus
 PASS: ./lus2lic {-2c should_work/tuple.lus -n tuple}
-FAIL: Check that the generated C code compiles  : gcc tuple_tuple.c tuple_tuple_loop.c 
+PASS: gcc tuple_tuple.c tuple_tuple_loop.c 
 PASS: ./lus2lic {-o /tmp/call02.lic should_work/call02.lus}
 PASS: ./lus2lic {-ec -o /tmp/call02.ec should_work/call02.lus}
 PASS: ./myec2c {-o /tmp/call02.c /tmp/call02.ec}
@@ -1260,7 +1253,7 @@ PASS: ./lus2lic {-ec -o /tmp/flo.ec should_work/flo.lus}
 PASS: ./myec2c {-o /tmp/flo.c /tmp/flo.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/flo.lus
 PASS: ./lus2lic {-2c should_work/flo.lus -n flo}
-FAIL: Check that the generated C code compiles  : gcc flo_flo.c flo_flo_loop.c 
+PASS: gcc flo_flo.c flo_flo_loop.c 
 PASS: ./lus2lic {-o /tmp/cond01.lic should_work/cond01.lus}
 PASS: ./lus2lic {-ec -o /tmp/cond01.ec should_work/cond01.lus}
 PASS: ./myec2c {-o /tmp/cond01.c /tmp/cond01.ec}
@@ -1278,7 +1271,7 @@ PASS: ./lus2lic {-ec -o /tmp/after.ec should_work/after.lus}
 PASS: ./myec2c {-o /tmp/after.c /tmp/after.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/after.lus
 PASS: ./lus2lic {-2c should_work/after.lus -n after}
-FAIL: Check that the generated C code compiles  : gcc after_after.c after_after_loop.c 
+PASS: gcc after_after.c after_after_loop.c 
 PASS: ./lus2lic {-o /tmp/arrays.lic should_work/arrays.lus}
 PASS: ./lus2lic {-ec -o /tmp/arrays.ec should_work/arrays.lus}
 PASS: ./myec2c {-o /tmp/arrays.c /tmp/arrays.ec}
@@ -1319,7 +1312,7 @@ PASS: ./lus2lic {-ec -o /tmp/EDGE.ec should_work/EDGE.lus}
 PASS: ./myec2c {-o /tmp/EDGE.c /tmp/EDGE.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/EDGE.lus
 PASS: ./lus2lic {-2c should_work/EDGE.lus -n EDGE}
-FAIL: Check that the generated C code compiles  : gcc EDGE_EDGE.c EDGE_EDGE_loop.c 
+PASS: gcc EDGE_EDGE.c EDGE_EDGE_loop.c 
 PASS: ./lus2lic {-o /tmp/call03.lic should_work/call03.lus}
 PASS: ./lus2lic {-ec -o /tmp/call03.ec should_work/call03.lus}
 PASS: ./myec2c {-o /tmp/call03.c /tmp/call03.ec}
@@ -1363,7 +1356,7 @@ PASS: ./lus2lic {-ec -o /tmp/SWITCH1.ec should_work/SWITCH1.lus}
 PASS: ./myec2c {-o /tmp/SWITCH1.c /tmp/SWITCH1.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/SWITCH1.lus
 PASS: ./lus2lic {-2c should_work/SWITCH1.lus -n SWITCH1}
-FAIL: Check that the generated C code compiles  : gcc SWITCH1_SWITCH1.c SWITCH1_SWITCH1_loop.c 
+PASS: gcc SWITCH1_SWITCH1.c SWITCH1_SWITCH1_loop.c 
 PASS: ./lus2lic {-o /tmp/clock1_2ms.lic should_work/clock1_2ms.lus}
 PASS: ./lus2lic {-ec -o /tmp/clock1_2ms.ec should_work/clock1_2ms.lus}
 PASS: ./myec2c {-o /tmp/clock1_2ms.c /tmp/clock1_2ms.ec}
@@ -1386,7 +1379,7 @@ PASS: ./lus2lic {-ec -o /tmp/trivial2.ec should_work/trivial2.lus}
 PASS: ./myec2c {-o /tmp/trivial2.c /tmp/trivial2.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/trivial2.lus
 PASS: ./lus2lic {-2c should_work/trivial2.lus -n trivial2}
-FAIL: Check that the generated C code compiles  : gcc trivial2_trivial2.c trivial2_trivial2_loop.c 
+PASS: gcc trivial2_trivial2.c trivial2_trivial2_loop.c 
 PASS: ./lus2lic {-o /tmp/param_node.lic should_work/param_node.lus}
 PASS: ./lus2lic {-ec -o /tmp/param_node.ec should_work/param_node.lus}
 PASS: ./myec2c {-o /tmp/param_node.c /tmp/param_node.ec}
@@ -1486,9 +1479,9 @@ XPASS: Test bad programs (semantics): lus2lic {-o /tmp/bug.lic should_fail/seman
 
 		=== lus2lic Summary ===
 
-# of expected passes		1171
-# of unexpected failures	238
+# of expected passes		1206
+# of unexpected failures	203
 # of unexpected successes	21
 # of expected failures		37
-testcase ./lus2lic.tests/non-reg.exp completed in 116 seconds
+testcase ./lus2lic.tests/non-reg.exp completed in 121 seconds
 testcase ./lus2lic.tests/progression.exp completed in 0 seconds
diff --git a/test/lus2lic.time b/test/lus2lic.time
index 45e9567c..efbe1164 100644
--- a/test/lus2lic.time
+++ b/test/lus2lic.time
@@ -1,2 +1,2 @@
-testcase ./lus2lic.tests/non-reg.exp completed in 118 seconds
-testcase ./lus2lic.tests/progression.exp completed in 1 seconds
+testcase ./lus2lic.tests/non-reg.exp completed in 121 seconds
+testcase ./lus2lic.tests/progression.exp completed in 0 seconds
-- 
GitLab