diff --git a/src/licDump.ml b/src/licDump.ml index b748cf1c4f679994116d0baa4b42d2c79181c65e..09345692348d20e15cfce555d76d37475ac961fb 100644 --- a/src/licDump.ml +++ b/src/licDump.ml @@ -1,4 +1,4 @@ -(** Time-stamp: <modified the 25/02/2009 (at 14:12) by Erwan Jahier> *) +(** Time-stamp: <modified the 25/02/2009 (at 15:01) by Erwan Jahier> *) open Printf open Lxm @@ -27,8 +27,10 @@ let (get_rank : 'a -> 'a list -> int) = let _ = assert (get_rank 5 [1;3;5] = 3) -let (is_a_tuple : Eff.val_exp -> bool) = +(* check it is a non-singleton tuple *) +let rec (is_a_tuple : Eff.val_exp -> bool) = function + | CallByPosEff ({ it = TUPLE }, OperEff [ve]) -> is_a_tuple ve | CallByPosEff ({ it = TUPLE }, OperEff vel) -> List.length vel > 1 | _ -> false @@ -305,8 +307,8 @@ and (string_of_by_pos_op_eff: Eff.by_pos_op srcflagged -> Eff.val_exp list -> st match op with | Predef.ICONST_n _ | Predef.RCONST_n _ | Predef.NOT_n | Predef.UMINUS_n | Predef.IUMINUS_n | Predef.RUMINUS_n - | Predef.FALSE_n | Predef.TRUE_n -> tuple vel - | _ -> tuple_par vel + | Predef.FALSE_n | Predef.TRUE_n -> tuple vel + | _ -> tuple_par vel else "<<" ^ (String.concat ", " (List.map (static_arg2string) sargs))