Definition removeopt_localdef (ret: option ident) (l: list localdef) : list localdef :=
  match ret with
   | Some id => remove_localdef_temp id l
   | None => l
   end.Definition ifvoid {T} t (A B: T) :=
 match t with Tvoid => A | _ => B end.

(* Specifications: *)
Lemma eqb_typelist_refl: forall tl, eqb_typelist tl tl = true.
Lemma eqb_calling_convention_refl: forall cc, eqb_calling_convention cc cc = true.
Lemma type_of_subsume_funspec: (* move to subsume_funspec.v *) forall fs1 fs2, subsume_funspec fs1 fs2 -> type_of_funspec fs1 = type_of_funspec fs2.
Lemma fold_right_and_app_low: forall (Q1 Q2 : list Prop), fold_right and True (Q1 ++ Q2) = (fold_right and True Q1 /\ fold_right and True Q2).
Lemma fold_right_and_app_lifted: forall (Q1 Q2: list (environ -> Prop)), fold_right `(and) `(True) (Q1 ++ Q2) = `(and) (fold_right `(and) `(True) Q1) (fold_right `(and) `(True) Q2).