let merge_assigns labels asgns =
  try
    let add asgns a =
      (* TODO : split between assigns and "from" dependencies *)
      let a = NormAtLabels.preproc_assigns labels a in
        Logic_utils.merge_assigns asgns [a]
    in List.fold_left add [] asgns
  with e ->
    let txt = Pretty_utils.sfprintf "assigns %a" Wp_error.pp_assigns asgns in
      NormAtLabels.catch_label_error e txt
        "property (ie. assigns everything)";
      []