diff --git a/src/ast2lic.ml b/src/ast2lic.ml index fa99c6a0b3e51493017f1d1cb26a053514c06b24..551e8375fe6cf068e6da9a80ca13ab1ba9e0ef3b 100644 --- a/src/ast2lic.ml +++ b/src/ast2lic.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 21/12/2012 (at 10:12) by Erwan Jahier> *) +(* Time-stamp: <modified the 17/01/2013 (at 10:46) by Erwan Jahier> *) open Lxm diff --git a/src/compile.ml b/src/compile.ml index 1e751ec542d83c2a486791e5b10887e2bd7c4624..a03e36fbdfff7ff6c92b0cd5e1adc51e63f4bdce 100644 --- a/src/compile.ml +++ b/src/compile.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 16/01/2013 (at 18:14) by Erwan Jahier> *) +(* Time-stamp: <modified the 17/01/2013 (at 10:39) by Erwan Jahier> *) open Lxm @@ -43,7 +43,7 @@ let (doit : AstV6.pack_or_model list -> Ident.idref option -> LicPrg.t) = (* élimination polymorphisme surcharge *) let zelic = L2lRmPoly.doit zelic in (* alias des types array *) - let zelic = L2lAliasType.doit zelic in +(* let zelic = L2lAliasType.doit zelic in *) let zelic = if not !Global.inline_iterator then zelic else (* Array and struct expansion: to do after polymorphism elimination *) L2lExpandMetaOp.doit zelic diff --git a/src/l2lAliasType.ml b/src/l2lAliasType.ml index bdf5403ebfc4a807facfc5ef0934852aff08bc2b..f9574e27eace0522a2b10d7e344923c6079873b3 100644 --- a/src/l2lAliasType.ml +++ b/src/l2lAliasType.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 18/12/2012 (at 10:10) by Erwan Jahier> *) +(* Time-stamp: <modified the 17/01/2013 (at 10:39) by Erwan Jahier> *) (** Source 2 source transformation : @@ -11,12 +11,12 @@ open Lic let doit (inp : LicPrg.t) : LicPrg.t = - (* n.b. on fait un minumum d'effet de bord pour - pas avoir trop d'acummulateur ... *) + (* n.b. on fait un minumum d'effet de bord pour + pas avoir trop d'acummulateur ... *) let atab = Hashtbl.create 10 in let res = ref inp in - (** UTILE : nommage des alias d'array *) + (** UTILE : nommage des alias d'array *) let array_ident ty sz = let tid = Lic.ident_of_type ty in let sfx = Printf.sprintf "%s_%d" (snd tid) sz in @@ -24,7 +24,7 @@ let doit (inp : LicPrg.t) : LicPrg.t = id in - (** UTILE : cherche/crée un alias de type *) + (** UTILE : cherche/crée un alias de type *) let rec alias_type te = match te with | Array_type_eff (ty, sz) -> ( @@ -32,32 +32,32 @@ let doit (inp : LicPrg.t) : LicPrg.t = let te = Array_type_eff (ty, sz) in try let ref_te = Hashtbl.find atab te in - (* - Verbose.printf "--> alias_type %s = %s ^ %d FOUND : %s\n" - (LicDump.string_of_type_eff te) - (LicDump.string_of_type_eff ty) - sz - (LicDump.string_of_type_eff ref_te); - *) + (* + Verbose.printf "--> alias_type %s = %s ^ %d FOUND : %s\n" + (LicDump.string_of_type_eff te) + (LicDump.string_of_type_eff ty) + sz + (LicDump.string_of_type_eff ref_te); + *) ref_te with Not_found -> ( let id = array_ident ty sz in let ref_te = Abstract_type_eff (id, te) in res := LicPrg.add_type id ref_te !res; Hashtbl.add atab te ref_te; - (* - Verbose.printf "--> alias_type %s = %s ^ %d NOT FOUND, gives: %s\n" - (LicDump.string_of_type_eff te) - (LicDump.string_of_type_eff ty) - sz - (LicDump.string_of_type_eff ref_te); - *) + (* + Verbose.printf "--> alias_type %s = %s ^ %d NOT FOUND, gives: %s\n" + (LicDump.string_of_type_eff te) + (LicDump.string_of_type_eff ty) + sz + (LicDump.string_of_type_eff ref_te); + *) ref_te ) ) | _ -> te in - (** TRAITE LES TYPES *) + (** TRAITE LES TYPES *) let do_type k te = let te' = match te with | Array_type_eff (tel, sz) -> @@ -76,7 +76,7 @@ let doit (inp : LicPrg.t) : LicPrg.t = in LicPrg.iter_types do_type inp; - (** TRAITE LES CONSTANTES *) + (** TRAITE LES CONSTANTES *) let do_const k ec = let ec' = match ec with | Extern_const_eff (i, te) -> @@ -97,14 +97,14 @@ let doit (inp : LicPrg.t) : LicPrg.t = in if (ec = ec') then () else - (* n.b. add=replace *) + (* n.b. add=replace *) res := LicPrg.add_const k ec' !res in LicPrg.iter_consts do_const inp ; - (** TRAITE LES NOEUDS *) + (** TRAITE LES NOEUDS *) let do_node k en = - (* n.b. les Lic.type_ apparraissent uniquement dans les var infos *) + (* n.b. les Lic.type_ apparraissent uniquement dans les var infos *) let do_var vi = let ty = alias_type vi.var_type_eff in {vi with var_type_eff = ty} @@ -118,7 +118,7 @@ let doit (inp : LicPrg.t) : LicPrg.t = | None -> None ) } in - (* on fait pas dans la dentelle, on remplace ... *) + (* on fait pas dans la dentelle, on remplace ... *) res := LicPrg.add_node k en' !res in LicPrg.iter_nodes do_node inp; diff --git a/src/lic.ml b/src/lic.ml index cd6bc313ab4c50b3822d161856f00b67474097de..cd9a18d65982cba4545baed73f9d0b7f54de3726 100644 --- a/src/lic.ml +++ b/src/lic.ml @@ -1,4 +1,4 @@ -(* Time-stamp: <modified the 14/01/2013 (at 14:01) by Erwan Jahier> *) +(* Time-stamp: <modified the 17/01/2013 (at 10:40) by Erwan Jahier> *) (** Define the Data Structure representing Compiled programs. *) diff --git a/test/lus2lic.sum b/test/lus2lic.sum index 246afb49fce45cb70cea55238e5cb1faf08491ba..143b50090194f990bcc820b8d00f4df26d7544ab 100644 --- a/test/lus2lic.sum +++ b/test/lus2lic.sum @@ -1,4 +1,4 @@ -Test Run By jahier on Wed Jan 16 18:35:13 2013 +Test Run By jahier on Thu Jan 17 10:41:09 2013 Native configuration is i686-pc-linux-gnu === lus2lic tests === @@ -28,7 +28,8 @@ PASS: ./lus2lic {-o /tmp/ck6.lic should_work/ck6.lus} PASS: ./lus2lic {-ec -o /tmp/ck6.ec should_work/ck6.lus} PASS: ec2c {-o /tmp/ck6.c /tmp/ck6.ec} PASS: ./lus2lic {-o /tmp/Gyroscope2.lic should_work/Gyroscope2.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/Gyroscope2.ec should_work/Gyroscope2.lus} +PASS: ./lus2lic {-ec -o /tmp/Gyroscope2.ec should_work/Gyroscope2.lus} +PASS: ec2c {-o /tmp/Gyroscope2.c /tmp/Gyroscope2.ec} PASS: ./lus2lic {-o /tmp/mouse2.lic should_work/mouse2.lus} PASS: ./lus2lic {-ec -o /tmp/mouse2.ec should_work/mouse2.lus} PASS: ec2c {-o /tmp/mouse2.c /tmp/mouse2.ec} @@ -78,7 +79,8 @@ PASS: ./lus2lic {-o /tmp/call06.lic should_work/call06.lus} PASS: ./lus2lic {-ec -o /tmp/call06.ec should_work/call06.lus} PASS: ec2c {-o /tmp/call06.c /tmp/call06.ec} PASS: ./lus2lic {-o /tmp/deSimone.lic should_work/deSimone.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/deSimone.ec should_work/deSimone.lus} +PASS: ./lus2lic {-ec -o /tmp/deSimone.ec should_work/deSimone.lus} +PASS: ec2c {-o /tmp/deSimone.c /tmp/deSimone.ec} PASS: ./lus2lic {-o /tmp/bug2.lic should_work/bug2.lus} PASS: ./lus2lic {-ec -o /tmp/bug2.ec should_work/bug2.lus} PASS: ec2c {-o /tmp/bug2.c /tmp/bug2.ec} @@ -95,7 +97,8 @@ PASS: ./lus2lic {-o /tmp/nc7.lic should_work/nc7.lus} PASS: ./lus2lic {-ec -o /tmp/nc7.ec should_work/nc7.lus} PASS: ec2c {-o /tmp/nc7.c /tmp/nc7.ec} PASS: ./lus2lic {-o /tmp/predefOp.lic should_work/predefOp.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/predefOp.ec should_work/predefOp.lus} +PASS: ./lus2lic {-ec -o /tmp/predefOp.ec should_work/predefOp.lus} +PASS: ec2c {-o /tmp/predefOp.c /tmp/predefOp.ec} PASS: ./lus2lic {-o /tmp/t1.lic should_work/t1.lus} PASS: ./lus2lic {-ec -o /tmp/t1.ec should_work/t1.lus} PASS: ec2c {-o /tmp/t1.c /tmp/t1.ec} @@ -160,7 +163,8 @@ PASS: ./lus2lic {-o /tmp/v1.lic should_work/v1.lus} PASS: ./lus2lic {-ec -o /tmp/v1.ec should_work/v1.lus} PASS: ec2c {-o /tmp/v1.c /tmp/v1.ec} PASS: ./lus2lic {-o /tmp/call04.lic should_work/call04.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/call04.ec should_work/call04.lus} +PASS: ./lus2lic {-ec -o /tmp/call04.ec should_work/call04.lus} +PASS: ec2c {-o /tmp/call04.c /tmp/call04.ec} PASS: ./lus2lic {-o /tmp/bascule.lic should_work/bascule.lus} PASS: ./lus2lic {-ec -o /tmp/bascule.ec should_work/bascule.lus} PASS: ec2c {-o /tmp/bascule.c /tmp/bascule.ec} @@ -201,7 +205,8 @@ UNRESOLVED: Time out: ./lus2lic {-o /tmp/ec.lic should_work/ec.lus} UNRESOLVED: Time out: ./lus2lic {-ec -o /tmp/ec.ec should_work/ec.lus} PASS: ec2c {-o /tmp/ec.c /tmp/ec.ec} PASS: ./lus2lic {-o /tmp/morel3.lic should_work/morel3.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/morel3.ec should_work/morel3.lus} +PASS: ./lus2lic {-ec -o /tmp/morel3.ec should_work/morel3.lus} +PASS: ec2c {-o /tmp/morel3.c /tmp/morel3.ec} PASS: ./lus2lic {-o /tmp/fresh_name.lic should_work/fresh_name.lus} PASS: ./lus2lic {-ec -o /tmp/fresh_name.ec should_work/fresh_name.lus} PASS: ec2c {-o /tmp/fresh_name.c /tmp/fresh_name.ec} @@ -227,7 +232,8 @@ PASS: ./lus2lic {-o /tmp/shift_ludic.lic should_work/shift_ludic.lus} PASS: ./lus2lic {-ec -o /tmp/shift_ludic.ec should_work/shift_ludic.lus} PASS: ec2c {-o /tmp/shift_ludic.c /tmp/shift_ludic.ec} PASS: ./lus2lic {-o /tmp/pilote-1.0.lic should_work/pilote-1.0.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/pilote-1.0.ec should_work/pilote-1.0.lus} +PASS: ./lus2lic {-ec -o /tmp/pilote-1.0.ec should_work/pilote-1.0.lus} +PASS: ec2c {-o /tmp/pilote-1.0.c /tmp/pilote-1.0.ec} PASS: ./lus2lic {-o /tmp/trivial.lic should_work/trivial.lus} PASS: ./lus2lic {-ec -o /tmp/trivial.ec should_work/trivial.lus} PASS: ec2c {-o /tmp/trivial.c /tmp/trivial.ec} @@ -241,7 +247,8 @@ PASS: ./lus2lic {-o /tmp/bred.lic should_work/bred.lus} PASS: ./lus2lic {-ec -o /tmp/bred.ec should_work/bred.lus} PASS: ec2c {-o /tmp/bred.c /tmp/bred.ec} PASS: ./lus2lic {-o /tmp/tri.lic should_work/tri.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/tri.ec should_work/tri.lus} +PASS: ./lus2lic {-ec -o /tmp/tri.ec should_work/tri.lus} +PASS: ec2c {-o /tmp/tri.c /tmp/tri.ec} PASS: ./lus2lic {-o /tmp/calculs_max.lic should_work/calculs_max.lus} PASS: ./lus2lic {-ec -o /tmp/calculs_max.ec should_work/calculs_max.lus} PASS: ec2c {-o /tmp/calculs_max.c /tmp/calculs_max.ec} @@ -258,7 +265,8 @@ PASS: ./lus2lic {-o /tmp/clock_ite.lic should_work/clock_ite.lus} PASS: ./lus2lic {-ec -o /tmp/clock_ite.ec should_work/clock_ite.lus} PASS: ec2c {-o /tmp/clock_ite.c /tmp/clock_ite.ec} PASS: ./lus2lic {-o /tmp/morel4.lic should_work/morel4.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/morel4.ec should_work/morel4.lus} +PASS: ./lus2lic {-ec -o /tmp/morel4.ec should_work/morel4.lus} +PASS: ec2c {-o /tmp/morel4.c /tmp/morel4.ec} PASS: ./lus2lic {-o /tmp/enum.lic should_work/enum.lus} PASS: ./lus2lic {-ec -o /tmp/enum.ec should_work/enum.lus} PASS: ec2c {-o /tmp/enum.c /tmp/enum.ec} @@ -269,7 +277,8 @@ PASS: ./lus2lic {-o /tmp/onlyroll.lic should_work/onlyroll.lus} PASS: ./lus2lic {-ec -o /tmp/onlyroll.ec should_work/onlyroll.lus} PASS: ec2c {-o /tmp/onlyroll.c /tmp/onlyroll.ec} PASS: ./lus2lic {-o /tmp/produitBool.lic should_work/produitBool.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/produitBool.ec should_work/produitBool.lus} +PASS: ./lus2lic {-ec -o /tmp/produitBool.ec should_work/produitBool.lus} +PASS: ec2c {-o /tmp/produitBool.c /tmp/produitBool.ec} PASS: ./lus2lic {-o /tmp/noeudsIndependants.lic should_work/noeudsIndependants.lus} PASS: ./lus2lic {-ec -o /tmp/noeudsIndependants.ec should_work/noeudsIndependants.lus} PASS: ec2c {-o /tmp/noeudsIndependants.c /tmp/noeudsIndependants.ec} @@ -328,7 +337,8 @@ PASS: ./lus2lic {-o /tmp/compteur.lic should_work/compteur.lus} PASS: ./lus2lic {-ec -o /tmp/compteur.ec should_work/compteur.lus} PASS: ec2c {-o /tmp/compteur.c /tmp/compteur.ec} PASS: ./lus2lic {-o /tmp/Int.lic should_work/Int.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/Int.ec should_work/Int.lus} +PASS: ./lus2lic {-ec -o /tmp/Int.ec should_work/Int.lus} +PASS: ec2c {-o /tmp/Int.c /tmp/Int.ec} PASS: ./lus2lic {-o /tmp/t2.lic should_work/t2.lus} PASS: ./lus2lic {-ec -o /tmp/t2.ec should_work/t2.lus} PASS: ec2c {-o /tmp/t2.c /tmp/t2.ec} @@ -369,7 +379,8 @@ PASS: ./lus2lic {-o /tmp/nc2.lic should_work/nc2.lus} PASS: ./lus2lic {-ec -o /tmp/nc2.ec should_work/nc2.lus} PASS: ec2c {-o /tmp/nc2.c /tmp/nc2.ec} PASS: ./lus2lic {-o /tmp/morel.lic should_work/morel.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/morel.ec should_work/morel.lus} +PASS: ./lus2lic {-ec -o /tmp/morel.ec should_work/morel.lus} +PASS: ec2c {-o /tmp/morel.c /tmp/morel.ec} PASS: ./lus2lic {-o /tmp/SOURIS.lic should_work/SOURIS.lus} PASS: ./lus2lic {-ec -o /tmp/SOURIS.ec should_work/SOURIS.lus} PASS: ec2c {-o /tmp/SOURIS.c /tmp/SOURIS.ec} @@ -380,7 +391,8 @@ 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: ec2c {-o /tmp/o2l_feux_compl.c /tmp/o2l_feux_compl.ec} PASS: ./lus2lic {-o /tmp/matrice.lic should_work/matrice.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/matrice.ec should_work/matrice.lus} +PASS: ./lus2lic {-ec -o /tmp/matrice.ec should_work/matrice.lus} +PASS: ec2c {-o /tmp/matrice.c /tmp/matrice.ec} PASS: ./lus2lic {-o /tmp/TIME_STABLE.lic should_work/TIME_STABLE.lus} PASS: ./lus2lic {-ec -o /tmp/TIME_STABLE.ec should_work/TIME_STABLE.lus} PASS: ec2c {-o /tmp/TIME_STABLE.c /tmp/TIME_STABLE.ec} @@ -424,9 +436,11 @@ PASS: ./lus2lic {-o /tmp/stopwatch.lic should_work/stopwatch.lus} PASS: ./lus2lic {-ec -o /tmp/stopwatch.ec should_work/stopwatch.lus} PASS: ec2c {-o /tmp/stopwatch.c /tmp/stopwatch.ec} PASS: ./lus2lic {-o /tmp/iterFibo.lic should_work/iterFibo.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/iterFibo.ec should_work/iterFibo.lus} +PASS: ./lus2lic {-ec -o /tmp/iterFibo.ec should_work/iterFibo.lus} +PASS: ec2c {-o /tmp/iterFibo.c /tmp/iterFibo.ec} PASS: ./lus2lic {-o /tmp/morel2.lic should_work/morel2.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/morel2.ec should_work/morel2.lus} +PASS: ./lus2lic {-ec -o /tmp/morel2.ec should_work/morel2.lus} +PASS: ec2c {-o /tmp/morel2.c /tmp/morel2.ec} PASS: ./lus2lic {-o /tmp/minmax1.lic should_work/minmax1.lus} PASS: ./lus2lic {-ec -o /tmp/minmax1.ec should_work/minmax1.lus} PASS: ec2c {-o /tmp/minmax1.c /tmp/minmax1.ec} @@ -458,7 +472,8 @@ PASS: ./lus2lic {-o /tmp/lecteur.lic should_work/lecteur.lus} PASS: ./lus2lic {-ec -o /tmp/lecteur.ec should_work/lecteur.lus} PASS: ec2c {-o /tmp/lecteur.c /tmp/lecteur.ec} PASS: ./lus2lic {-o /tmp/bug.lic should_work/bug.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/bug.ec should_work/bug.lus} +PASS: ./lus2lic {-ec -o /tmp/bug.ec should_work/bug.lus} +PASS: ec2c {-o /tmp/bug.c /tmp/bug.ec} PASS: ./lus2lic {-o /tmp/ck4.lic should_work/ck4.lus} PASS: ./lus2lic {-ec -o /tmp/ck4.ec should_work/ck4.lus} PASS: ec2c {-o /tmp/ck4.c /tmp/ck4.ec} @@ -475,7 +490,8 @@ PASS: ./lus2lic {-o /tmp/nested.lic should_work/nested.lus} PASS: ./lus2lic {-ec -o /tmp/nested.ec should_work/nested.lus} PASS: ec2c {-o /tmp/nested.c /tmp/nested.ec} PASS: ./lus2lic {-o /tmp/Gyroscope.lic should_work/Gyroscope.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/Gyroscope.ec should_work/Gyroscope.lus} +PASS: ./lus2lic {-ec -o /tmp/Gyroscope.ec should_work/Gyroscope.lus} +PASS: ec2c {-o /tmp/Gyroscope.c /tmp/Gyroscope.ec} PASS: ./lus2lic {-o /tmp/asservi.lic should_work/asservi.lus} PASS: ./lus2lic {-ec -o /tmp/asservi.ec should_work/asservi.lus} PASS: ec2c {-o /tmp/asservi.c /tmp/asservi.ec} @@ -528,7 +544,8 @@ PASS: ./lus2lic {-o /tmp/predef02.lic should_work/predef02.lus} PASS: ./lus2lic {-ec -o /tmp/predef02.ec should_work/predef02.lus} PASS: ec2c {-o /tmp/predef02.c /tmp/predef02.ec} PASS: ./lus2lic {-o /tmp/toto.lic should_work/toto.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/toto.ec should_work/toto.lus} +PASS: ./lus2lic {-ec -o /tmp/toto.ec should_work/toto.lus} +PASS: ec2c {-o /tmp/toto.c /tmp/toto.ec} PASS: ./lus2lic {-o /tmp/minmax6.lic should_work/minmax6.lus} PASS: ./lus2lic {-ec -o /tmp/minmax6.ec should_work/minmax6.lus} PASS: ec2c {-o /tmp/minmax6.c /tmp/minmax6.ec} @@ -572,7 +589,8 @@ PASS: ./lus2lic {-o /tmp/after.lic should_work/after.lus} PASS: ./lus2lic {-ec -o /tmp/after.ec should_work/after.lus} PASS: ec2c {-o /tmp/after.c /tmp/after.ec} PASS: ./lus2lic {-o /tmp/arrays.lic should_work/arrays.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/arrays.ec should_work/arrays.lus} +PASS: ./lus2lic {-ec -o /tmp/arrays.ec should_work/arrays.lus} +PASS: ec2c {-o /tmp/arrays.c /tmp/arrays.ec} PASS: ./lus2lic {-o /tmp/eq1.lic should_work/eq1.lus} PASS: ./lus2lic {-ec -o /tmp/eq1.ec should_work/eq1.lus} PASS: ec2c {-o /tmp/eq1.c /tmp/eq1.ec} @@ -592,7 +610,8 @@ PASS: ./lus2lic {-o /tmp/EDGE.lic should_work/EDGE.lus} PASS: ./lus2lic {-ec -o /tmp/EDGE.ec should_work/EDGE.lus} PASS: ec2c {-o /tmp/EDGE.c /tmp/EDGE.ec} PASS: ./lus2lic {-o /tmp/call03.lic should_work/call03.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/call03.ec should_work/call03.lus} +PASS: ./lus2lic {-ec -o /tmp/call03.ec should_work/call03.lus} +PASS: ec2c {-o /tmp/call03.c /tmp/call03.ec} PASS: ./lus2lic {-o /tmp/count.lic should_work/count.lus} PASS: ./lus2lic {-ec -o /tmp/count.ec should_work/count.lus} PASS: ec2c {-o /tmp/count.c /tmp/count.ec} @@ -627,7 +646,8 @@ PASS: ./lus2lic {-o /tmp/minus.lic should_work/minus.lus} PASS: ./lus2lic {-ec -o /tmp/minus.ec should_work/minus.lus} PASS: ec2c {-o /tmp/minus.c /tmp/minus.ec} PASS: ./lus2lic {-o /tmp/remplissage-1.0.lic should_work/remplissage-1.0.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/remplissage-1.0.ec should_work/remplissage-1.0.lus} +PASS: ./lus2lic {-ec -o /tmp/remplissage-1.0.ec should_work/remplissage-1.0.lus} +PASS: ec2c {-o /tmp/remplissage-1.0.c /tmp/remplissage-1.0.ec} 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} @@ -668,7 +688,7 @@ FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/parametric_node.ec should_work FAIL: without any option: ./lus2lic { -o /tmp/bad_call02.out should_work/broken/bad_call02.lus} FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/bad_call02.ec should_work/broken/bad_call02.lus} PASS: ./lus2lic { -o /tmp/toolate.out should_work/broken/toolate.lus} -FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/toolate.ec should_work/broken/toolate.lus} +PASS: ./lus2lic {-ec -o /tmp/toolate.ec should_work/broken/toolate.lus} FAIL: without any option: ./lus2lic { -o /tmp/packageTableau.out should_work/broken/packageTableau.lus} FAIL: Generate ec code : ./lus2lic {-ec -o /tmp/packageTableau.ec should_work/broken/packageTableau.lus} FAIL: without any option: ./lus2lic { -o /tmp/condact2.out should_work/broken/condact2.lus} @@ -800,8 +820,8 @@ XPASS: Test bad programs (semantics): lus2lic {-o /tmp/bug.lic should_fail/seman === lus2lic Summary === -# of expected passes 646 -# of unexpected failures 102 +# of expected passes 687 +# of unexpected failures 81 # of unexpected successes 8 # of expected failures 26 # of unresolved testcases 6 diff --git a/test/lus2lic.time b/test/lus2lic.time index 9c3c3314319e458e442937ff55342a88ebffa4a8..0d17b66748ef406286f8e672d104e5d87bcd35db 100644 --- a/test/lus2lic.time +++ b/test/lus2lic.time @@ -1,2 +1,2 @@ -testcase ./lus2lic.tests/non-reg.exp completed in 160 seconds -testcase ./lus2lic.tests/progression.exp completed in 12 seconds +testcase ./lus2lic.tests/non-reg.exp completed in 184 seconds +testcase ./lus2lic.tests/progression.exp completed in 17 seconds diff --git a/todo.org b/todo.org index 82112a0de4699b72fa41a4e6a7ea144b382544b9..53162116487151e609fca24eaba208ae5dab28a8 100644 --- a/todo.org +++ b/todo.org @@ -135,7 +135,7 @@ file:~/lus2lic/src/uglyStuff.ml -** TODO Rajouter le with à la caml pour les structures +** TODO Rajouter le with à la caml pour les structures - State "TODO" from "" [2012-10-26 Fri 14:59] ** TODO Dans file:src/eff.ml::195 on pourrait virer la notion de call by name @@ -148,15 +148,15 @@ du with ? comment fait caml ? - State "TODO" from "" [2012-10-26 Fri 14:59] -** TODO on devrait se passer de 'static_arg list' pour le champ =PREDEF_CALL= +** TODO on devrait se passer de 'static_arg list' pour le champ =PREDEF_CALL= (c'est censé marcher) cf file:./src/eff.ml::206 - State "TODO" from "" [2012-10-26 Fri 14:59] -** TODO L'ideal serait de se passer du PREDEF_CALL (et de passer par le CALL normal) +** TODO L'ideal serait de se passer du PREDEF_CALL (et de passer par le CALL normal) - State "TODO" from "" [2012-10-26 Fri 14:59] -** TODO le Eff.WITH (aka if statique) n'a pas lieu d'être ! +** TODO le Eff.WITH (aka if statique) n'a pas lieu d'être ! y virer !! - State "TODO" from "" [2012-10-26 Fri 14:59]