let rec translate_assigned_targets env assigned =
    match assigned with
      | [] -> Result []
      | lv::others ->
          match translate_assigned_targets env others with
            | Warning(p,m) -> Warning(p,m)
            | Result acc ->
                Wp_error.protect_translation
                  (fun e t -> L.assigned e t @ acc)
                  env lv