let add_assigns txt labels acc asgns =
  let asgns = 
    try 
      let asgns = NormAtLabels.preproc_assigns labels asgns in
        Wp_parameters.debug "take %s %a" txt Macros.pp_assign asgns;
        Logic_utils.merge_assigns acc [asgns]
    with (NormAtLabels.LabelError l) -> 
      Wp_parameters.abort "unable to process %s label %a in %a" 
        txt Macros.pp_logic_label l Macros.pp_assign asgns
  in
  asgns