diff --git a/compiler/minils/mls_compare.ml b/compiler/minils/mls_compare.ml index cdb033a..66207c4 100644 --- a/compiler/minils/mls_compare.ml +++ b/compiler/minils/mls_compare.ml @@ -80,11 +80,11 @@ struct let cr = compare fn1 fn2 in if cr <> 0 then cr else extvalue_compare e1 e2 in list_compare compare_fne fnel1 fnel2 - | Eiterator (it1, app1, se1, pel1, el1, vio1), - Eiterator (it2, app2, se2, pel2, el2, vio2) -> + | Eiterator (it1, app1, sel1, pel1, el1, vio1), + Eiterator (it2, app2, sel2, pel2, el2, vio2) -> let cr = compare it1 it2 in if cr <> 0 then cr else - let cr = Global_compare.static_exp_compare se1 se2 in + let cr = list_compare Global_compare.static_exp_compare sel1 sel2 in if cr <> 0 then cr else let cr = app_compare app1 app2 in if cr <> 0 then cr else diff --git a/compiler/minils/transformations/tomato.ml b/compiler/minils/transformations/tomato.ml index 5704fb6..6a54f5c 100644 --- a/compiler/minils/transformations/tomato.ml +++ b/compiler/minils/transformations/tomato.ml @@ -204,7 +204,7 @@ let rec add_equation is_input (tenv : tom_env) eq = class_ref_of_var is_input (mk_extvalue ~clock:e.e_base_ck ~ty:Initial.tbool (Wvar x)) x in Emerge (dummy_var, clause_list), id, 0, x_id :: class_id_list - | Eiterator (it, app, se, partial_w_list, w_list, rst) -> + | Eiterator (it, app, sel, partial_w_list, w_list, rst) -> let class_id_list, partial_w_list = mapfold_right (extvalue is_input) partial_w_list [] in let class_id_list, w_list = mapfold_right (extvalue is_input) w_list class_id_list in let class_id_list = match rst with @@ -212,7 +212,7 @@ let rec add_equation is_input (tenv : tom_env) eq = | Some rst -> class_ref_of_var is_input (mk_extvalue ~ty:Initial.tbool (Wvar rst)) rst :: class_id_list in - Eiterator (it, app, se, partial_w_list, w_list, optional (fun _ -> dummy_var) rst), + Eiterator (it, app, sel, partial_w_list, w_list, optional (fun _ -> dummy_var) rst), id, 0, class_id_list | Estruct field_val_list -> @@ -379,13 +379,13 @@ and reconstruct_exp_desc mapping headd children = let field_val_list = reconstruct_clauses field_val_list children in Estruct field_val_list - | Eiterator (it, app, se, partial_w_list, w_list, rst_dummy) -> + | Eiterator (it, app, sel, partial_w_list, w_list, rst_dummy) -> let rst, children = match rst_dummy with | None -> None, children | Some _ -> Some (reconstruct_class_ref mapping (List.hd children)), List.tl children in let total_w_list = reconstruct_extvalues mapping (partial_w_list @ w_list) children in let partial_w_list, w_list = split_at (List.length partial_w_list) total_w_list in - Eiterator (it, app, se, partial_w_list, w_list, optional extract_name rst) + Eiterator (it, app, sel, partial_w_list, w_list, optional extract_name rst) and reconstruct_extvalues mapping w_list children = let rec reconstruct_extvalue w (children : class_ref list) = match w.w_desc with