diff --git a/src/soc2c.ml b/src/soc2c.ml
index 0a26498745811dcf640543ec65cf821d6eee5e35..2d465fb35f0be13147e85cc5c2a3549352c85538 100644
--- a/src/soc2c.ml
+++ b/src/soc2c.ml
@@ -1,4 +1,4 @@
-(* Time-stamp: <modified the 07/10/2016 (at 15:36) by Erwan Jahier> *)
+(* Time-stamp: <modified the 25/10/2016 (at 17:06) by Erwan Jahier> *)
 
 
 (* let put (os: out_channel) (fmt:('a, unit, string, unit) format4) : 'a = *)
@@ -897,6 +897,7 @@ typedef float _float;
 #include <string.h>
 
 #include \"lustre_types.h\"
+#include \"lustre_consts.h\"
 
 ";
 
diff --git a/test/lus2lic.sum b/test/lus2lic.sum
index 434b12e1d9b26445ab016158ab06bb57dde5c58a..e748f86d45b2e20f9462cef0abe0802463e7bbbe 100644
--- a/test/lus2lic.sum
+++ b/test/lus2lic.sum
@@ -1,5 +1,5 @@
 ==> lus2lic0.sum <==
-Test Run By jahier on Fri Oct  7 15:46:11 
+Test Run By jahier on Tue Oct 25 17:15:37 
 Native configuration is x86_64-unknown-linux-gnu
 
 		=== lus2lic0 tests ===
@@ -64,7 +64,7 @@ XFAIL: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/lecte
 XFAIL: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/s.lus
 
 ==> lus2lic1.sum <==
-Test Run By jahier on Fri Oct  7 15:46:11 
+Test Run By jahier on Tue Oct 25 17:15:38 
 Native configuration is x86_64-unknown-linux-gnu
 
 		=== lus2lic1 tests ===
@@ -247,7 +247,8 @@ PASS: ./lus2lic  {-2c ec.lus -n ec}
 PASS: sh ec.sh 
 PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c ec.lus  {}
 PASS: ./lus2lic  {-2c enum0.lus -n enum0}
-FAIL: Check that the generated C code compiles  : sh enum0.sh 
+PASS: sh enum0.sh 
+PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c enum0.lus  {}
 FAIL: Generate c code  : ./lus2lic  {-2c enum0_lv4.lus -n enum0_lv4}
 PASS: ./lus2lic  {-2c ex.lus -n ex}
 PASS: sh ex.sh 
@@ -370,7 +371,8 @@ PASS: ./lus2lic  {-2c modes3x2_v2.lus -n modes3x2_v2}
 PASS: sh modes3x2_v2.sh 
 PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c modes3x2_v2.lus  {}
 PASS: ./lus2lic  {-2c modes3x2_v3.lus -n modes3x2_v3}
-FAIL: Check that the generated C code compiles  : sh modes3x2_v3.sh 
+PASS: sh modes3x2_v3.sh 
+PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c modes3x2_v3.lus  {}
 PASS: ./lus2lic  {-2c modes3x2_v4.lus -n modes3x2_v4}
 PASS: ./lus2lic  {-2c mouse.lus -n mouse}
 PASS: sh mouse.sh 
@@ -395,7 +397,7 @@ PASS: sh multipar.sh
 PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c multipar.lus  {}
 
 ==> lus2lic2.sum <==
-Test Run By jahier on Fri Oct  7 15:46:29 
+Test Run By jahier on Tue Oct 25 17:15:58 
 Native configuration is x86_64-unknown-linux-gnu
 
 		=== lus2lic2 tests ===
@@ -658,14 +660,16 @@ PASS: ./lus2lic  {-2c test_diese.lus -n test_diese}
 PASS: sh test_diese.sh 
 PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c test_diese.lus  {}
 PASS: ./lus2lic  {-2c test_enum.lus -n test_enum}
-FAIL: Check that the generated C code compiles  : sh test_enum.sh 
+PASS: sh test_enum.sh 
+PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c test_enum.lus  {}
 PASS: ./lus2lic  {-2c test_extern.lus -n test_extern}
 PASS: ./lus2lic  {-2c test_lustre.lus -n test_lustre}
 PASS: ./lus2lic  {-2c test_map.lus -n test_map}
 PASS: sh test_map.sh 
 PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c test_map.lus  {}
 PASS: ./lus2lic  {-2c test_merge.lus -n test_merge}
-FAIL: Check that the generated C code compiles  : sh test_merge.sh 
+PASS: sh test_merge.sh 
+PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c test_merge.lus  {}
 PASS: ./lus2lic  {-2c test_model.lus -n test_model}
 PASS: ./lus2lic  {-2c test_node_expand.lus -n test_node_expand}
 PASS: sh test_node_expand.sh 
@@ -739,7 +743,7 @@ PASS: sh zzz2.sh
 PASS: /home/jahier/lus2lic/test/../utils/compare_exec_and_2c zzz2.lus  {}
 
 ==> lus2lic3.sum <==
-Test Run By jahier on Fri Oct  7 15:47:08 
+Test Run By jahier on Tue Oct 25 17:16:40 
 Native configuration is x86_64-unknown-linux-gnu
 
 		=== lus2lic3 tests ===
@@ -1245,7 +1249,7 @@ PASS: ./myec2c {-o multipar.c multipar.ec}
 PASS: /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node multipar.lus {}
 
 ==> lus2lic4.sum <==
-Test Run By jahier on Fri Oct  7 15:47:19 
+Test Run By jahier on Tue Oct 25 17:16:51 
 Native configuration is x86_64-unknown-linux-gnu
 
 		=== lus2lic4 tests ===
@@ -1744,15 +1748,15 @@ PASS: /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node zzz2.lus {}
 
 		=== lus2lic1 Summary ===
 
-# of expected passes		311
-# of unexpected failures	8
+# of expected passes		315
+# of unexpected failures	6
 
 ==> lus2lic2.sum <==
 
 		=== lus2lic2 Summary ===
 
-# of expected passes		327
-# of unexpected failures	5
+# of expected passes		331
+# of unexpected failures	3
 
 ==> lus2lic3.sum <==
 
@@ -1768,15 +1772,15 @@ PASS: /home/jahier/lus2lic/test/../utils/test_lus2lic_no_node zzz2.lus {}
 # of expected passes		474
 # of unexpected failures	4
 ===============================
-# Total number of failures: 30
-lus2lic0.log:testcase ./lus2lic.tests/test0.exp completed in 0 seconds
-lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 18 seconds
-lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 39 seconds
+# Total number of failures: 26
+lus2lic0.log:testcase ./lus2lic.tests/test0.exp completed in 1 seconds
+lus2lic1.log:testcase ./lus2lic.tests/test1.exp completed in 20 seconds
+lus2lic2.log:testcase ./lus2lic.tests/test2.exp completed in 42 seconds
 lus2lic3.log:testcase ./lus2lic.tests/test3.exp completed in 11 seconds
-lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 31 seconds
+lus2lic4.log:testcase ./lus2lic.tests/test4.exp completed in 33 seconds
 * Ref time: 
-0.06user 0.02system 1:39.73elapsed 0%CPU (0avgtext+0avgdata 5648maxresident)k
-64inputs+0outputs (0major+6104minor)pagefaults 0swaps
+0.06user 0.02system 1:46.62elapsed 0%CPU (0avgtext+0avgdata 5676maxresident)k
+96inputs+0outputs (0major+6036minor)pagefaults 0swaps
 * Quick time (-j 4):
-0.04user 0.04system 0:47.38elapsed 0%CPU (0avgtext+0avgdata 5664maxresident)k
-64inputs+0outputs (0major+6123minor)pagefaults 0swaps
+0.06user 0.02system 0:58.31elapsed 0%CPU (0avgtext+0avgdata 5700maxresident)k
+96inputs+0outputs (0major+6022minor)pagefaults 0swaps