diff --git a/test/Makefile b/test/Makefile
index 45cc0329de4a3efb325a58a6c7f68386d06544c4..4da70c5085ad5bb3076e865665d6ac7ae12799cc 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -22,11 +22,12 @@ lus2lic.diff:
 	  lus2lic.log.ref lus2lic.log > lus2lic.diff || \
 	(ls -l lus2lic.diff; exit 1)
 
-
+time:lus2lic.time
 lus2lic.time:
 	grep "testcase \./lus2lic" lus2lic.log > lus2lic.time
 	cat lus2lic.time >> lus2lic.sum
 	cat lus2lic.time
+.PHONY:lus2lic.time
 
 utest:
 	cp lus2lic.log lus2lic.log.ref
diff --git a/test/lus2lic.sum b/test/lus2lic.sum
index cf933fc341eccff574687c77f584075310eac31e..e8f2b055ecab1a391611ccfda5cc0b463caf8b7b 100644
--- a/test/lus2lic.sum
+++ b/test/lus2lic.sum
@@ -1,4 +1,4 @@
-Test Run By jahier on Fri May 31 16:46:26 2013
+Test Run By jahier on Mon Jun  3 09:40:39 2013
 Native configuration is i686-pc-linux-gnu
 
 		=== lus2lic tests ===
@@ -21,10 +21,6 @@ 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 {-o /tmp/assertion.lic should_work/assertion.lus}
-PASS: ./lus2lic {-ec -o /tmp/assertion.ec should_work/assertion.lus}
-PASS: ./myec2c {-o /tmp/assertion.c /tmp/assertion.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/assertion.lus
 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}
@@ -259,10 +255,6 @@ PASS: ./lus2lic {-o /tmp/model2.lic should_work/model2.lus}
 PASS: ./lus2lic {-ec -o /tmp/model2.ec should_work/model2.lus}
 PASS: ./myec2c {-o /tmp/model2.c /tmp/model2.ec}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/model2.lus
-PASS: ./lus2lic {-o /tmp/alarme.lic should_work/alarme.lus}
-PASS: ./lus2lic {-ec -o /tmp/alarme.ec should_work/alarme.lus}
-PASS: ./myec2c {-o /tmp/alarme.c /tmp/alarme.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/alarme.lus
 PASS: ./lus2lic {-o /tmp/onlyroll2.lic should_work/onlyroll2.lus}
 PASS: ./lus2lic {-ec -o /tmp/onlyroll2.ec should_work/onlyroll2.lus}
 PASS: ./myec2c {-o /tmp/onlyroll2.c /tmp/onlyroll2.ec}
@@ -485,6 +477,8 @@ PASS: ./lus2lic {-o /tmp/Int.lic should_work/Int.lus}
 PASS: ./lus2lic {-ec -o /tmp/Int.ec should_work/Int.lus}
 PASS: ./myec2c {-o /tmp/Int.c /tmp/Int.ec}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/Int.lus
+FAIL: without any option: ./lus2lic {-o /tmp/tranche.lic should_work/tranche.lus}
+FAIL: Generate ec code  : ./lus2lic {-ec -o /tmp/tranche.ec should_work/tranche.lus}
 PASS: ./lus2lic {-o /tmp/t2.lic should_work/t2.lus}
 PASS: ./lus2lic {-ec -o /tmp/t2.ec should_work/t2.lus}
 PASS: ./myec2c {-o /tmp/t2.c /tmp/t2.ec}
@@ -559,7 +553,7 @@ PASS: ../utils/test_lus2lic_no_node should_work/SOURIS.lus
 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}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/param_node2.lus
+PASS: ../utils/test_lus2lic_no_node should_work/param_node2.lus
 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}
@@ -680,10 +674,6 @@ PASS: ./lus2lic {-o /tmp/call01.lic should_work/call01.lus}
 PASS: ./lus2lic {-ec -o /tmp/call01.ec should_work/call01.lus}
 PASS: ./myec2c {-o /tmp/call01.c /tmp/call01.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/call01.lus
-PASS: ./lus2lic {-o /tmp/lecteur.lic should_work/lecteur.lus}
-PASS: ./lus2lic {-ec -o /tmp/lecteur.ec should_work/lecteur.lus}
-PASS: ./myec2c {-o /tmp/lecteur.c /tmp/lecteur.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/lecteur.lus
 PASS: ./lus2lic {-o /tmp/bug.lic should_work/bug.lus}
 PASS: ./lus2lic {-ec -o /tmp/bug.ec should_work/bug.lus}
 PASS: ./myec2c {-o /tmp/bug.c /tmp/bug.ec}
@@ -764,10 +754,6 @@ PASS: ./lus2lic {-o /tmp/map.lic should_work/map.lus}
 PASS: ./lus2lic {-ec -o /tmp/map.ec should_work/map.lus}
 PASS: ./myec2c {-o /tmp/map.c /tmp/map.ec}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/map.lus
-PASS: ./lus2lic {-o /tmp/drapfab.lic should_work/drapfab.lus}
-PASS: ./lus2lic {-ec -o /tmp/drapfab.ec should_work/drapfab.lus}
-PASS: ./myec2c {-o /tmp/drapfab.c /tmp/drapfab.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/drapfab.lus
 PASS: ./lus2lic {-o /tmp/pre_x.lic should_work/pre_x.lus}
 PASS: ./lus2lic {-ec -o /tmp/pre_x.ec should_work/pre_x.lus}
 PASS: ./myec2c {-o /tmp/pre_x.c /tmp/pre_x.ec}
@@ -848,10 +834,6 @@ PASS: ./lus2lic {-o /tmp/triSel.lic should_work/triSel.lus}
 PASS: ./lus2lic {-ec -o /tmp/triSel.ec should_work/triSel.lus}
 PASS: ./myec2c {-o /tmp/triSel.c /tmp/triSel.ec}
 PASS: ../utils/test_lus2lic_no_node should_work/triSel.lus
-PASS: ./lus2lic {-o /tmp/s.lic should_work/s.lus}
-PASS: ./lus2lic {-ec -o /tmp/s.ec should_work/s.lus}
-PASS: ./myec2c {-o /tmp/s.c /tmp/s.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/s.lus
 PASS: ./lus2lic {-o /tmp/redoptest.lic should_work/redoptest.lus}
 PASS: ./lus2lic {-ec -o /tmp/redoptest.ec should_work/redoptest.lus}
 PASS: ./myec2c {-o /tmp/redoptest.c /tmp/redoptest.ec}
@@ -876,10 +858,6 @@ 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}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/arrays.lus
-PASS: ./lus2lic {-o /tmp/eq1.lic should_work/eq1.lus}
-PASS: ./lus2lic {-ec -o /tmp/eq1.ec should_work/eq1.lus}
-PASS: ./myec2c {-o /tmp/eq1.c /tmp/eq1.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/eq1.lus
 PASS: ./lus2lic {-o /tmp/nc3.lic should_work/nc3.lus}
 PASS: ./lus2lic {-ec -o /tmp/nc3.ec should_work/nc3.lus}
 PASS: ./myec2c {-o /tmp/nc3.c /tmp/nc3.ec}
@@ -895,7 +873,7 @@ PASS: ../utils/test_lus2lic_no_node should_work/iterate.lus
 PASS: ./lus2lic {-o /tmp/overload.lic should_work/overload.lus}
 PASS: ./lus2lic {-ec -o /tmp/overload.ec should_work/overload.lus}
 PASS: ./myec2c {-o /tmp/overload.c /tmp/overload.ec}
-FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/overload.lus
+PASS: ../utils/test_lus2lic_no_node should_work/overload.lus
 PASS: ./lus2lic {-o /tmp/PCOND.lic should_work/PCOND.lus}
 PASS: ./lus2lic {-ec -o /tmp/PCOND.ec should_work/PCOND.lus}
 PASS: ./myec2c {-o /tmp/PCOND.c /tmp/PCOND.ec}
@@ -968,51 +946,56 @@ PASS: ./lus2lic {-o /tmp/remplissage-1.0.lic should_work/remplissage-1.0.lus}
 PASS: ./lus2lic {-ec -o /tmp/remplissage-1.0.ec should_work/remplissage-1.0.lus}
 PASS: ./myec2c {-o /tmp/remplissage-1.0.c /tmp/remplissage-1.0.ec}
 FAIL: Try to compare lus2lic -exec and ecexe: ../utils/test_lus2lic_no_node should_work/remplissage-1.0.lus
-XFAIL: Test bad programs (syntax): lus2lic {-o /tmp/old_style_and_pack.lic should_fail/syntax/old_style_and_pack.lus}
-XFAIL: Test bad programs (syntax): lus2lic {-o /tmp/record.lic should_fail/syntax/record.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/parametric_node3.lic should_fail/type/parametric_node3.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/parametric_node.lic should_fail/type/parametric_node.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/t1.lic should_fail/type/t1.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/merge_bad_enum.lic should_fail/type/merge_bad_enum.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/condact2.lic should_fail/type/condact2.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/merge_bad_type.lic should_fail/type/merge_bad_type.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/packages.lic should_fail/type/packages.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/packages2.lic should_fail/type/packages2.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/Gyro.lic should_fail/type/Gyro.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/Gyro-2.lic should_fail/type/Gyro-2.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/merge_bad.lic should_fail/type/merge_bad.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/merge_bad_clk.lic should_fail/type/merge_bad_clk.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/parametric_node4.lic should_fail/type/parametric_node4.lus}
-XPASS: Test bad programs (type): lus2lic {-o /tmp/merge_not_exhaustive.lic should_fail/type/merge_not_exhaustive.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/const2.lic should_fail/type/const2.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/ts02.lic should_fail/type/ts02.lus}
-XPASS: Test bad programs (type): lus2lic {-o /tmp/parametric_node2.lic should_fail/type/parametric_node2.lus}
-XFAIL: Test bad programs (type): lus2lic {-o /tmp/merge.lic should_fail/type/merge.lus}
-XFAIL: Test bad programs (clock): lus2lic {-o /tmp/when_enum.lic should_fail/clock/when_enum.lus}
-XFAIL: Test bad programs (clock): lus2lic {-o /tmp/bad_call02.lic should_fail/clock/bad_call02.lus}
-XFAIL: Test bad programs (clock): lus2lic {-o /tmp/inonout.lic should_fail/clock/inonout.lus}
-XFAIL: Test bad programs (clock): lus2lic {-o /tmp/clock.lic should_fail/clock/clock.lus}
-XFAIL: Test bad programs (clock): lus2lic {-o /tmp/bad_id.lic should_fail/clock/bad_id.lus}
-XFAIL: Test bad programs (clock): lus2lic {-o /tmp/clock2.lic should_fail/clock/clock2.lus}
-XPASS: Test bad programs (semantics): lus2lic {-o /tmp/aux.lic should_fail/semantics/aux.lus}
-XPASS: Test bad programs (semantics): lus2lic {-o /tmp/deploop.lic should_fail/semantics/deploop.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/const3.lic should_fail/semantics/const3.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/not_a_constant.lic should_fail/semantics/not_a_constant.lus}
-XPASS: Test bad programs (semantics): lus2lic {-o /tmp/X1.lic should_fail/semantics/X1.lus}
-XPASS: Test bad programs (semantics): lus2lic {-o /tmp/sincos.lic should_fail/semantics/sincos.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/tranche.lic should_fail/semantics/tranche.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/import2.lic should_fail/semantics/import2.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/bad_call01.lic should_fail/semantics/bad_call01.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/x.lic should_fail/semantics/x.lus}
-XPASS: Test bad programs (semantics): lus2lic {-o /tmp/aux1.lic should_fail/semantics/aux1.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/t.lic should_fail/semantics/t.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/parametric_node4.lic should_fail/semantics/parametric_node4.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/const2.lic should_fail/semantics/const2.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/sargs.lic should_fail/semantics/sargs.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/patrick.lic should_fail/semantics/patrick.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/const.lic should_fail/semantics/const.lus}
-XFAIL: Test bad programs (semantics): lus2lic {-o /tmp/m.lic should_fail/semantics/m.lus}
-XPASS: Test bad programs (exec): lus2lic {-o /tmp/X3.lic should_fail/exec/X3.lus}
+XFAIL: Test bad programs (syntax): test_lus2lic_no_node should_fail/syntax/old_style_and_pack.lus
+XFAIL: Test bad programs (syntax): test_lus2lic_no_node should_fail/syntax/record.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/parametric_node3.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/parametric_node.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/t1.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/merge_bad_enum.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/condact2.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/merge_bad_type.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/packages.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/packages2.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/Gyro.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/merge_bad.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/merge_bad_clk.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/parametric_node4.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/merge_node.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/merge_not_exhaustive.lus
+XPASS: Test bad programs (type): test_lus2lic_no_node should_fail/type/const2.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/ts02.lus
+XPASS: Test bad programs (type): test_lus2lic_no_node should_fail/type/parametric_node2.lus
+XFAIL: Test bad programs (type): test_lus2lic_no_node should_fail/type/Gyro2.lus
+XFAIL: Test bad programs (clock): test_lus2lic_no_node should_fail/clock/when_enum.lus
+XFAIL: Test bad programs (clock): test_lus2lic_no_node should_fail/clock/bad_call02.lus
+XFAIL: Test bad programs (clock): test_lus2lic_no_node should_fail/clock/inonout.lus
+XFAIL: Test bad programs (clock): test_lus2lic_no_node should_fail/clock/clock.lus
+XFAIL: Test bad programs (clock): test_lus2lic_no_node should_fail/clock/bad_id.lus
+XFAIL: Test bad programs (clock): test_lus2lic_no_node should_fail/clock/clock2.lus
+XPASS: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/aux.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/deploop.lus
+XPASS: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/const3.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/not_a_constant.lus
+XPASS: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/X1.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/sincos.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/test_const.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/import2.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/bad_call01.lus
+XPASS: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/x.lus
+XPASS: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/aux1.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/t.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/parametric_node4.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/const2.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/sargs.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/patrick.lus
+XFAIL: Test bad programs (semantics): test_lus2lic_no_node should_fail/semantics/m.lus
+XPASS: Test bad programs (exec): test_lus2lic_no_node should_fail/exec/X3.lus
+XPASS: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/assertion.lus
+XPASS: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/alarme.lus
+XPASS: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/lecteur.lus
+XPASS: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/drapfab.lus
+XPASS: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/s.lus
+XPASS: Test bad programs (assert): test_lus2lic_no_node should_fail/assert/eq1.lus
 Running ./lus2lic.tests/progression.exp ...
 PASS: ./lus2lic {    -o /tmp/when_not.out should_work/broken/when_not.lus}
 PASS: ./lus2lic {-ec -o /tmp/when_not.ec  should_work/broken/when_not.lus}
@@ -1033,9 +1016,9 @@ XPASS: Test bad programs (semantics): lus2lic {-o /tmp/bug.lic should_fail/seman
 
 		=== lus2lic Summary ===
 
-# of expected passes		874
-# of unexpected failures	94
-# of unexpected successes	15
-# of expected failures		38
-testcase ./lus2lic.tests/non-reg.exp completed in 101 seconds
-testcase ./lus2lic.tests/progression.exp completed in 0 seconds
+# of expected passes		858
+# of unexpected failures	88
+# of unexpected successes	21
+# of expected failures		37
+testcase ./lus2lic.tests/non-reg.exp completed in 147 seconds
+testcase ./lus2lic.tests/progression.exp completed in 1 seconds
diff --git a/test/lus2lic.tests/non-reg.exp b/test/lus2lic.tests/non-reg.exp
index c360df679f0c265d6826338fc0e98abf02cd73d4..204460eac915b0097bc8056ea08530764e00a15f 100644
--- a/test/lus2lic.tests/non-reg.exp
+++ b/test/lus2lic.tests/non-reg.exp
@@ -26,22 +26,24 @@ foreach f $ok_files {
 
 # Programs that should fail
 proc iter_should_fail { fail_kind } {
-    global lus2lic
+    global lus2lic test_lus2lic_no_node
 
     set files  [glob should_fail/$fail_kind/*.lus]
     foreach f $files {
         set bf [file rootname $f]
         set bf /tmp/[file tail $bf]
-        set id [should_fail "Test bad programs" "$fail_kind" "$lus2lic" "-o $bf.lic $f"]
+        set id [should_fail "Test bad programs" "$fail_kind" "$test_lus2lic_no_node" "$f"]
         wait -i $id
     }
 }
+#        set id [should_fail "Test bad programs" "$fail_kind" "$lus2lic" "-o $bf.lic $f"]
 
 iter_should_fail "syntax"
 iter_should_fail "type"
 iter_should_fail "clock"
 iter_should_fail "semantics"
 iter_should_fail "exec"
+iter_should_fail "assert"
 
 
 
diff --git a/test/lus2lic.tests/progression.exp b/test/lus2lic.tests/progression.exp
index 048efc8c47092627189366d4d55ca391f9809438..473153d5c9c3ad05be226efb992647c929881267 100644
--- a/test/lus2lic.tests/progression.exp
+++ b/test/lus2lic.tests/progression.exp
@@ -33,6 +33,8 @@ iter_should_fail "syntax"
 iter_should_fail "type"
 iter_should_fail "clock"
 iter_should_fail "semantics"
+iter_should_fail "assert"
+iter_should_fail "exec"
 
 
 
diff --git a/test/lus2lic.time b/test/lus2lic.time
index fb760bc9ae033f25a995d284af1de833c7b38fbf..ee692e2238892369a67052e4c550066279e39020 100644
--- a/test/lus2lic.time
+++ b/test/lus2lic.time
@@ -1,2 +1,2 @@
-testcase ./lus2lic.tests/non-reg.exp completed in 101 seconds
-testcase ./lus2lic.tests/progression.exp completed in 0 seconds
+testcase ./lus2lic.tests/non-reg.exp completed in 147 seconds
+testcase ./lus2lic.tests/progression.exp completed in 1 seconds
diff --git a/test/should_work/alarme.lus b/test/should_fail/assert/alarme.lus
similarity index 100%
rename from test/should_work/alarme.lus
rename to test/should_fail/assert/alarme.lus
diff --git a/test/should_work/assertion.lus b/test/should_fail/assert/assertion.lus
similarity index 100%
rename from test/should_work/assertion.lus
rename to test/should_fail/assert/assertion.lus
diff --git a/test/should_work/drapfab.lus b/test/should_fail/assert/drapfab.lus
similarity index 100%
rename from test/should_work/drapfab.lus
rename to test/should_fail/assert/drapfab.lus
diff --git a/test/should_work/eq1.lus b/test/should_fail/assert/eq1.lus
similarity index 100%
rename from test/should_work/eq1.lus
rename to test/should_fail/assert/eq1.lus
diff --git a/test/should_work/lecteur.lus b/test/should_fail/assert/lecteur.lus
similarity index 100%
rename from test/should_work/lecteur.lus
rename to test/should_fail/assert/lecteur.lus
diff --git a/test/should_work/s.lus b/test/should_fail/assert/s.lus
similarity index 100%
rename from test/should_work/s.lus
rename to test/should_fail/assert/s.lus
diff --git a/test/should_fail/clock/bad_id.lus b/test/should_fail/clock/bad_id.lus
index e8a54da15012e54ebd85a396bf7fa014241ff616..f1811e5324aed43a6964727988107f1c233f309b 100644
--- a/test/should_fail/clock/bad_id.lus
+++ b/test/should_fail/clock/bad_id.lus
@@ -1,6 +1,6 @@
 
 
-node toto(c: bool; x: int) returns (y: int when b);
+node bad_id(c: bool; x: int) returns (y: int when b);
 let
 
   y = 1+1+(x when c);
diff --git a/test/should_fail/clock/clock2.lus b/test/should_fail/clock/clock2.lus
index d2c6fabcd3c929604ac548bbf4a99f5e93d56c45..7214da80482b3107899372f716b0f97f52956226 100644
--- a/test/should_fail/clock/clock2.lus
+++ b/test/should_fail/clock/clock2.lus
@@ -1,6 +1,6 @@
 
 
-node clock(a: int; b: int) returns (c: int when a);
+node clock2(a: int; b: int) returns (c: int when a);
 
 let 
   c = 1 + 1 + b when a;-- should fail since a cannot be of type int!
diff --git a/test/should_fail/clock/inonout.lus b/test/should_fail/clock/inonout.lus
index 3f804ea6f8f4b630f512fe62e45d5e6134053d4c..de95df40e91894fa42737ee49c14aefa9f169664 100644
--- a/test/should_fail/clock/inonout.lus
+++ b/test/should_fail/clock/inonout.lus
@@ -1,3 +1,3 @@
 
 -- we cannot have an input clocked on an output
-extern node inOnOut( a : bool; b : bool when c ) returns (c : bool);
+extern node inonout( a : bool; b : bool when c ) returns (c : bool);
diff --git a/test/should_fail/clock/when_enum.lus b/test/should_fail/clock/when_enum.lus
index df436c416ad494f14df8378e48bf826009bc8e57..50d693be5c70ec92623a08267f83864f149b002d 100644
--- a/test/should_fail/clock/when_enum.lus
+++ b/test/should_fail/clock/when_enum.lus
@@ -2,7 +2,7 @@
 
 type t = enum {A,  B,  C};
 
-node clock(a : t ; b,  c: bool) returns (x: bool when a; y: bool when a);
+node when_enum(a : t ; b,  c: bool) returns (x: bool when a; y: bool when a);
 var
   clk :  bool;
 let 
diff --git a/test/should_fail/semantics/const3.lus b/test/should_fail/semantics/const3.lus
index 5aeffbe53aeffb7efed1d7d88f9bbcf3f7ec66b9..414400ddeef0d1079da96c3b9680aaafebc60c1f 100644
--- a/test/should_fail/semantics/const3.lus
+++ b/test/should_fail/semantics/const3.lus
@@ -1,2 +1,4 @@
 const pi = 3.1416;
 const right = pi/2.;
+
+node const3 = Lustre::and
\ No newline at end of file
diff --git a/test/should_fail/semantics/deploop.lus b/test/should_fail/semantics/deploop.lus
index c8407e396a0ab4bf4820702084cd5aa4256d6d97..775fcd0ac798cacb94b7b605292b346219f3c3a9 100644
--- a/test/should_fail/semantics/deploop.lus
+++ b/test/should_fail/semantics/deploop.lus
@@ -3,7 +3,7 @@ type
   complexe = {x: real;  y: real};
   cdouble = {x: complexe; y: complexe};
 
-node filter(a, b: real) returns (ok: bool );
+node deploop(a, b: real) returns (ok: bool );
 var
   i: real;
  z: cdouble;
diff --git a/test/should_fail/semantics/parametric_node4.lus b/test/should_fail/semantics/parametric_node4.lus
index 0d75a8ba8c5d9ad2776d0184ff6919edee2390af..e2cb97a3b733491b6bbc68d8af832bea9fab4463 100644
--- a/test/should_fail/semantics/parametric_node4.lus
+++ b/test/should_fail/semantics/parametric_node4.lus
@@ -10,5 +10,5 @@ tel
 
 const x: real = 3.0;
 
-node toto_3 = toto_n<<Lustre::iplus, x>>;
+node parametric_node4 = toto_n<<Lustre::iplus, x>>;
 
diff --git a/test/should_fail/semantics/sargs.lus b/test/should_fail/semantics/sargs.lus
index 6fc97bcb46e167a32fd12c27c8af8672ebcb2121..b54323efca8f71c6ffc30e788471e40685b3b55d 100644
--- a/test/should_fail/semantics/sargs.lus
+++ b/test/should_fail/semantics/sargs.lus
@@ -7,7 +7,7 @@ let
    y = n + x;
 tel
 
-node saturne(x: int) returns (y:int);
+node sargs(x: int) returns (y:int);
 let
    y = 2 * pluton<<42.0>>(x);
 tel
diff --git a/test/should_fail/semantics/const.lus b/test/should_fail/semantics/test_const.lus
similarity index 94%
rename from test/should_fail/semantics/const.lus
rename to test/should_fail/semantics/test_const.lus
index 6cec3e1ad18289ae392bde960db23e5387ed55a5..84fdcb7bb2a3cdafe769b0d53ed9525a70f2ba2c 100644
--- a/test/should_fail/semantics/const.lus
+++ b/test/should_fail/semantics/test_const.lus
@@ -43,4 +43,4 @@ const
   c9 = c4+3=7;
   c10 = not(c5 and c9);   
 
-node node1(a: int) returns (a: int);
+node test_const(a: int) returns (a: int);
diff --git a/test/should_fail/semantics/x.lus b/test/should_fail/semantics/x.lus
index 6775086d9a4bcc8edfc74b8afe73514677da3fe9..af6fd015e203d9437724d46116ff66f8cd9e44a0 100644
--- a/test/should_fail/semantics/x.lus
+++ b/test/should_fail/semantics/x.lus
@@ -8,3 +8,5 @@ const x = t + 1;
 const t = n mod 2;
 
 const y = 42;
+
+node x = Lustre::and
\ No newline at end of file
diff --git a/test/should_fail/type/Gyro.lus b/test/should_fail/type/Gyro.lus
index f3b8ba3948d315b25a78ac5f7316b72da0fdd7e3..3b75b75e9bbd3a39068b11740bb029edb560e6a9 100644
--- a/test/should_fail/type/Gyro.lus
+++ b/test/should_fail/type/Gyro.lus
@@ -354,7 +354,7 @@ let
 tel
 
 
-node Gyroscope2(axis : Faulty_Array) returns (valid : bool);
+node Gyro(axis : Faulty_Array) returns (valid : bool);
 -- Assumes : 
 -- true;
 -- Guarantees : 
diff --git a/test/should_fail/type/Gyro-2.lus b/test/should_fail/type/Gyro2.lus
similarity index 99%
rename from test/should_fail/type/Gyro-2.lus
rename to test/should_fail/type/Gyro2.lus
index 4d776211629ad9b63f28e8c1bebf9e7e1caac281..20b8ac176b8d442fd2f1dfd7b4406e8d836f109e 100644
--- a/test/should_fail/type/Gyro-2.lus
+++ b/test/should_fail/type/Gyro2.lus
@@ -355,7 +355,7 @@ let
 tel
 
 
-node Gyroscope2(axis : Faulty_Array) returns (valid : bool);
+node Gyro2(axis : Faulty_Array) returns (valid : bool);
 -- Assumes : 
 -- true;
 -- Guarantees : 
diff --git a/test/should_fail/type/condact2.lus b/test/should_fail/type/condact2.lus
index 84d176b0c0ea7841eec3b3ac2bf5a37e8e28cbff..132bcfacc4057cdd172bd8e710d63b3f95059b9e 100644
--- a/test/should_fail/type/condact2.lus
+++ b/test/should_fail/type/condact2.lus
@@ -1,6 +1,6 @@
 
 
-node truc(c,x,y : int) returns (o: int);
+node condact2(c,x,y : int) returns (o: int);
 let
 	o = condact<<+, 0>>(c,x,y);
 tel  
diff --git a/test/should_fail/type/const2.lus b/test/should_fail/type/const2.lus
index feb44c1faf228e1ccfcbd14857e6df20ff0de3b2..176b6398ab5157ff40dfe3cdff2abb8105c0e54d 100644
--- a/test/should_fail/type/const2.lus
+++ b/test/should_fail/type/const2.lus
@@ -25,4 +25,6 @@ type
   t5 = t4^P;
   t6 = t5^c10;
   t7 = t6^O;
-  t8 = t7^O;
\ No newline at end of file
+  t8 = t7^O;
+
+node const2 = Lustre::and
\ No newline at end of file
diff --git a/test/should_fail/type/merge_bad.lus b/test/should_fail/type/merge_bad.lus
index a66bd162f8ead58bfe1125aa412c3a208b5f15c9..62f8dbc850180c9b4430f52781ca3e638d7cc252 100644
--- a/test/should_fail/type/merge_bad.lus
+++ b/test/should_fail/type/merge_bad.lus
@@ -2,7 +2,7 @@
 type mybool = enum { True, False }; 
 
 
-node merge_bool_ter(clk : bool ; i1  : int when clk ; i2 : int when not clk) returns (y: int); 
+node merge_bad(clk : bool ; i1  : int when clk ; i2 : int when not clk) returns (y: int); 
 let
     y = merge clk (false-> i2) (True -> i1) ;
 tel
diff --git a/test/should_fail/type/merge_bad_clk.lus b/test/should_fail/type/merge_bad_clk.lus
index 4225ecf661bd4af091568930fc6581bc44317fb7..2e2e82cdcc71cd60e43b4184cbf6c1de34b9532c 100644
--- a/test/should_fail/type/merge_bad_clk.lus
+++ b/test/should_fail/type/merge_bad_clk.lus
@@ -1,5 +1,5 @@
 type trival = enum { Pile, Face, Tranche }; ---
-node merge_node(clk: trival; ---
+node merge_bad_clk(clk: trival; ---
    i1 : int when Pile(clk) ; 
    i2 : int when Face(clk); 
    i3 : int when Tranche(clk)) 
diff --git a/test/should_fail/type/merge_bad_enum.lus b/test/should_fail/type/merge_bad_enum.lus
index e0e9623b419372bda30099e0f3c7214275144159..01f1956986b41bcdbbf93c1da1535548e8554043 100644
--- a/test/should_fail/type/merge_bad_enum.lus
+++ b/test/should_fail/type/merge_bad_enum.lus
@@ -1,6 +1,6 @@
 type trival = enum { Pile, Face, Tranche }; ---
 type okko = enum { Ok,ko }; ---
-node merge_node(clk: trival; ---
+node merge_bad_enum(clk: trival; ---
    i1 : int when Pile(clk) ; 
    i2 : int when Face(clk); 
    i3 : int when Tranche(clk)) 
diff --git a/test/should_fail/type/merge_bad_type.lus b/test/should_fail/type/merge_bad_type.lus
index ccb45908e7a8fe0d9f93957ecb7240e79a3e9208..2ff2868dd1b7c3eb18fcae482eb8c15d54c48e34 100644
--- a/test/should_fail/type/merge_bad_type.lus
+++ b/test/should_fail/type/merge_bad_type.lus
@@ -1,5 +1,5 @@
 type trival = enum { Pile, Face, Tranche }; ---
-node merge_node(clk: trival; ---
+node merge_bad_type(clk: trival; ---
    i1 : int  when Pile(clk) ; 
    i2 : real when Face(clk); 
    i3 : int  when Tranche(clk)) 
diff --git a/test/should_fail/type/merge.lus b/test/should_fail/type/merge_node.lus
similarity index 100%
rename from test/should_fail/type/merge.lus
rename to test/should_fail/type/merge_node.lus
diff --git a/test/should_fail/type/merge_not_exhaustive.lus b/test/should_fail/type/merge_not_exhaustive.lus
index 554ba4b83cf77e39ad059cdd7806ce9269c0aa4e..ad91aaaa9ff2a81acac192055b2b6da7f7f83133 100644
--- a/test/should_fail/type/merge_not_exhaustive.lus
+++ b/test/should_fail/type/merge_not_exhaustive.lus
@@ -1,5 +1,5 @@
 type trival = enum { Pile, Face, Tranche }; ---
-node merge_node(clk: trival; ---
+node merge_not_exhaustive(clk: trival; ---
    i1 : int when Pile(clk) ;
    i2 : int when Face(clk); 
    i3 : int when Tranche(clk)) 
diff --git a/test/should_fail/type/parametric_node.lus b/test/should_fail/type/parametric_node.lus
index 7d1daacd641a0cdeb5ca07a923ac9d49eedc25e5..44b4b7958e9f87d2217324a20b67da6acc145f01 100644
--- a/test/should_fail/type/parametric_node.lus
+++ b/test/should_fail/type/parametric_node.lus
@@ -8,5 +8,5 @@ let
   x =  v ^ n;
 tel
 
-node toto_3 = toto_n<<Lustre::iplus, 3.0>>;
+node parametric_node = toto_n<<Lustre::iplus, 3.0>>;
 --                                  ^^^^ bad type here...
diff --git a/test/should_fail/type/parametric_node2.lus b/test/should_fail/type/parametric_node2.lus
index 41846b3d73a685af89a149259406aab4d91010eb..5926cb97bc42e5915459cf1a2eddf3898a3a7eed 100644
--- a/test/should_fail/type/parametric_node2.lus
+++ b/test/should_fail/type/parametric_node2.lus
@@ -9,5 +9,5 @@ let
   x =  v ^ n;
 tel
 
-node toto_3 = toto_n<<Lustre::iplus, 3>>;
+node parametric_node2 = toto_n<<Lustre::iplus, 3>>;
 
diff --git a/test/should_fail/type/parametric_node3.lus b/test/should_fail/type/parametric_node3.lus
index 728f35b2555a80f823f3bb92f865b3b58f135fea..7987d3c871083c8d8c4998cf7cd9ecdc703d73ea 100644
--- a/test/should_fail/type/parametric_node3.lus
+++ b/test/should_fail/type/parametric_node3.lus
@@ -7,5 +7,5 @@ let
   res =  a ^ n;
 tel
 
-node toto_int3 = toto_n<<int, 3>>; -- one arg is missing
+node parametric_node3 = toto_n<<int, 3>>; -- one arg is missing
 
diff --git a/test/should_fail/type/parametric_node4.lus b/test/should_fail/type/parametric_node4.lus
index 0d75a8ba8c5d9ad2776d0184ff6919edee2390af..e2cb97a3b733491b6bbc68d8af832bea9fab4463 100644
--- a/test/should_fail/type/parametric_node4.lus
+++ b/test/should_fail/type/parametric_node4.lus
@@ -10,5 +10,5 @@ tel
 
 const x: real = 3.0;
 
-node toto_3 = toto_n<<Lustre::iplus, x>>;
+node parametric_node4 = toto_n<<Lustre::iplus, x>>;
 
diff --git a/test/should_fail/type/ts02.lus b/test/should_fail/type/ts02.lus
index d13971cc86c9f0f0ae6874973c7eb4626a9f54b0..e91c17954faed06acd9396b9a55b012ad12dec1d 100644
--- a/test/should_fail/type/ts02.lus
+++ b/test/should_fail/type/ts02.lus
@@ -7,4 +7,4 @@ let
 tel
 
 -- n.b. ko à l'utilisation uniquement
-node main = ma_macro<<32.0>>;
+node ts02 = ma_macro<<32.0>>;
diff --git a/test/should_work/complex.lus b/test/should_work/complex.lus
index 552c5d674f18772cf93dac63ca80265b9ca16f3f..c9b16b4aa169f501118dc941b756121562f0022a 100644
--- a/test/should_work/complex.lus
+++ b/test/should_work/complex.lus
@@ -8,4 +8,5 @@ body
   const i:t = t { re = 0. ; im = 1. };
   node re(c: t) returns (re:real); 
   let re = c.re; tel;
+  node complex = re;
 end
\ No newline at end of file
diff --git a/test/should_work/overload.lus b/test/should_work/overload.lus
index 7d02f8730f8171c8c8a92e8ec523aec154bc7d04..5742403147838ac5e7b6a1b1a7f9234b934d8992 100644
--- a/test/should_work/overload.lus
+++ b/test/should_work/overload.lus
@@ -9,3 +9,5 @@ let o = overplus(x,y); tel
 
 node do_real(x,y: real^4) returns (o: real^4);
 let o = overplus(x,y); tel
+
+node overload = do_real;
\ No newline at end of file
diff --git a/test/should_work/pack1.lus b/test/should_work/pack1.lus
index 9c4ecc1cb361465a189b86488d6ad3a37e69633e..0a0410ec4cecf7323309efc5c2e5255059aa4001 100644
--- a/test/should_work/pack1.lus
+++ b/test/should_work/pack1.lus
@@ -2,7 +2,7 @@ package pack1
 
 provides 
 node n1(ck : bool) returns (out : int when ck; ckout : bool);
-node n2(ck : bool; in : int) returns (out : int when ck);
+node pack1(ck : bool; in : int) returns (out : int when ck);
 const toto:  int =3;
 
 body
@@ -16,7 +16,7 @@ let
   ckout = ck;
 tel 
 
-node n2(ck : bool; in : int) returns (out : int when ck);
+node pack1(ck : bool; in : int) returns (out : int when ck);
 let
   out = in when ck;
 tel 
diff --git a/test/should_work/param_node2.lus b/test/should_work/param_node2.lus
index 5c861f34594fcf5710c47a5b00978b277c7dbe4e..bc9d26d522b0816b72579e8ad260c54899d740ca 100644
--- a/test/should_work/param_node2.lus
+++ b/test/should_work/param_node2.lus
@@ -5,4 +5,4 @@ let
   res =  init ^ size;
 tel ---
 node tab_int3 = mk_tab<<int, 0, 3>>; ---
-node should_work = mk_tab<<bool, true, 4>>;
+node param_node2 = mk_tab<<bool, true, 4>>;
diff --git a/test/should_fail/semantics/tranche.lus b/test/should_work/tranche.lus
similarity index 89%
rename from test/should_fail/semantics/tranche.lus
rename to test/should_work/tranche.lus
index 519482500cd13d6a669158f332afaec1c1109484..62a9abc92cb0e18d51b9582516988d2bd730b040 100644
--- a/test/should_fail/semantics/tranche.lus
+++ b/test/should_work/tranche.lus
@@ -20,7 +20,7 @@ let
   y = 1.;
   x[if(1>2) then -2 else 0] = true;
   x[1..2] = a[1..2];
-  res = true or false; --if x[1] then x[0] else x[2];
+  res = if x[1] then x[0] else x[2];
   z[0][0] = true;
   z[0][1] = true;
   z[0][2] = true;
diff --git a/todo.org b/todo.org
index 209565a51ed883840a2c742931ba9dc58568de88..cb8788deaa25b0054d9468e749575a18eb362257 100644
--- a/todo.org
+++ b/todo.org
@@ -234,6 +234,18 @@ le role et le perimetre get_leaf en particulier n'est pas clair.
 de plus son code est dupliqué.
 file:src/lic2soc.ml
 
+** TODO pb sur le GYRO : bug dans le prog ou dans le compilo ???
+   - State "TODO"       from ""           [2013-05-31 Fri 16:30]
+
+ ../utils/test_lus2lic_no_node should_work/Gyroscope2.lus
+ ../utils/test_lus2lic_no_node should_work/Gyroscope.lus
+
+si je lance ecexe dessus, j'obtiens un 
+    "#ERROR: Output takes on nil"
+au step 3
+Mais curieusement, via lus2lic -exec, je n'ai pas de soucis.
+
+
 * Pas clair
 ** WAITING Regarder si on pourrait se passer du PREDEF_CALL (et de passer par le  CALL normal)
    - State "WAITING"    from "STARTED"    [2013-02-06 Wed 17:14]
@@ -314,42 +326,13 @@ bon, y'a plus d'erreur, mais ca ne compile pas. Est-ce choquant ?
 On pourrait utiliser   file:src/misc.ml pour prendre finement en compte les 
 struct et les arrays.
 
-** TODO la aussi il semble y avoir un pb de self loop
+** TODO Faut-il jeter ces self loop ? Sans doute pas.
    - State "TODO"       from ""           [2013-05-10 Fri 17:44]
 ../utils/test_lus2lic_no_node should_work/filter.lus
 ../utils/test_lus2lic_no_node should_work/activation2.lus
 ../utils/test_lus2lic_no_node should_work/activation1.lus
 ../utils/test_lus2lic_no_node should_work/speedcontrol.lus
 
-
-** WAITING Ya un probleme avec ce fichier lustre (compilait avant)
-   - State "WAITING"    from "STARTED"    [2013-01-17 Thu 10:48]
-   - State "STARTED"    from "TODO"       [2013-01-17 Thu 10:48]
-file:test/should_work/call/call04.lus
-
-il semble y avoir une confusion entre parametre et arguments lors
-d'appels de noeuds définis via des itérateurs de tableau
-
-idem pour
-file:test/should_work/fab_test/morel2.lus
-et pleins d'autres. hm, y'aurait pas d'itérateurs dans celui la.
-
--> ok  : c'était à  de l2lAliasType (que  j'ai déranché du  coup) qui
-faisait  que les  types lic  n'étaient plus  uniques et  du coup  les
-substitutions  dans  l'expansion  des  noeuds ne  se  faisaient  plus
-correctement.
-
-je met en attente en attendant de savoir ce qu'on fait de ce module.
-moi j'ai bien envie de virer AbstractType de Lic.type_. En effet, j'avais 
-fait attention à tous les virer pour éviter les soucis, mais le plus 
-propre c'est d'y virer vraiment. 
-
-Pascal lui, s'en  est servi pour faire des types  alias, alors que ca
-n'est pas fait pour. Cela dit, si  on créé des types alias, on risque
-d'avoir le meme genre de soucis. A quoi ca sert d'avoir de tels types
-?  pour moi le role de la compil ca serait plutot de les virer que de
-les rajouter, mais bon. A discuter. cf point d'apres
-
 ** TODO Enlever Abstract_type_eff de Lic.type_ ou vérifier partout que c'est correct.
    - State "TODO"       from ""           [2012-12-20 Thu 17:26]
 dans lic.ml, on definit les types compilés ainsi :
@@ -403,24 +386,7 @@ suivante (soc). Oui, ca fait du sens. en plus, les l2l* utilisent les
 infos Lic.type_, donc autant attendre un peu avant de s'en passer.
 
 
-** TODO Les assertions qui echouent font planter les tests : reflechir a une parade
-
-car apres tout, c'est voulu dans le prog, et ca n'est donc pas un pb du compilo
-
-   - State "TODO"       from ""           [2013-05-31 Fri 16:30]
- ../utils/test_lus2lic_no_node should_work/assertion.lus
-
 ** TODO C'est normal qu'il se plante au step 2 celui la ???
    - State "TODO"       from ""           [2013-05-31 Fri 16:42]
  ../utils/test_lus2lic_no_node should_work/sincos.lus
 
-** TODO pb de lecture RIF depuis lurette (
-   - State "TODO"       from ""           [2013-05-31 Fri 16:30]
-
- ../utils/test_lus2lic_no_node should_work/Gyroscope2.lus
- ../utils/test_lus2lic_no_node should_work/alarme.lus
- ../utils/test_lus2lic_no_node should_work/lecteur.lus
- ../utils/test_lus2lic_no_node should_work/Gyroscope.lus
- ../utils/test_lus2lic_no_node should_work/drapfab.lus
- ../utils/test_lus2lic_no_node should_work/s.lus
- ../utils/test_lus2lic_no_node should_work/eq1.lus
diff --git a/todo.org_archive b/todo.org_archive
index 764e012edba3f0c60b9120745a8233a6e37be243..2988ce824281edec5b20b98979148d228c2b7939 100644
--- a/todo.org_archive
+++ b/todo.org_archive
@@ -862,6 +862,63 @@ en fait, quand ecexe se plante (oracle), il bloque tout le monde...
 ../utils/test_lus2lic_no_node should_work/over2.lus
 
 
+* WAITING Ya un probleme avec ce fichier lustre (compilait avant)
+   - State "WAITING"    from "STARTED"    [2013-01-17 Thu 10:48]
+   - State "STARTED"    from "TODO"       [2013-01-17 Thu 10:48]
+  :PROPERTIES:
+  :ARCHIVE_TIME: 2013-05-31 Fri 17:05
+  :ARCHIVE_FILE: ~/lus2lic/todo.org
+  :ARCHIVE_OLPATH: Pas clair
+  :ARCHIVE_CATEGORY: lv6
+  :ARCHIVE_TODO: WAITING
+  :END:
+file:test/should_work/call/call04.lus
+
+il semble y avoir une confusion entre parametre et arguments lors
+d'appels de noeuds définis via des itérateurs de tableau
+
+idem pour
+file:test/should_work/fab_test/morel2.lus
+et pleins d'autres. hm, y'aurait pas d'itérateurs dans celui la.
+
+-> ok  : c'était à  de l2lAliasType (que  j'ai déranché du  coup) qui
+faisait  que les  types lic  n'étaient plus  uniques et  du coup  les
+substitutions  dans  l'expansion  des  noeuds ne  se  faisaient  plus
+correctement.
+
+je met en attente en attendant de savoir ce qu'on fait de ce module.
+moi j'ai bien envie de virer AbstractType de Lic.type_. En effet, j'avais 
+fait attention à tous les virer pour éviter les soucis, mais le plus 
+propre c'est d'y virer vraiment. 
+
+Pascal lui, s'en  est servi pour faire des types  alias, alors que ca
+n'est pas fait pour. Cela dit, si  on créé des types alias, on risque
+d'avoir le meme genre de soucis. A quoi ca sert d'avoir de tels types
+?  pour moi le role de la compil ca serait plutot de les virer que de
+les rajouter, mais bon. A discuter. cf point d'apres
+
+* TODO Les assertions qui echouent font planter les tests : reflechir a une parade
+  :PROPERTIES:
+  :ARCHIVE_TIME: 2013-05-31 Fri 17:21
+  :ARCHIVE_FILE: ~/lus2lic/todo.org
+  :ARCHIVE_OLPATH: Divers
+  :ARCHIVE_CATEGORY: lv6
+  :ARCHIVE_TODO: TODO
+  :END:
+
+car apres tout, c'est voulu dans le prog, et ca n'est donc pas un pb du compilo
+
+   - State "TODO"       from ""           [2013-05-31 Fri 16:30]
+ ../utils/test_lus2lic_no_node should_work/assertion.lus
+ ../utils/test_lus2lic_no_node should_work/drapfab.lus
+ ../utils/test_lus2lic_no_node should_work/s.lus
+ ../utils/test_lus2lic_no_node should_work/eq1.lus
+ ../utils/test_lus2lic_no_node should_work/lecteur.lus
+ ../utils/test_lus2lic_no_node should_work/alarme.lus
+
+
+
+