From compcert Require Export Clightdefs.
Require Export VST.veric.SeparationLogic.
Require Export VST.msl.Extensionality.
Require Export compcert.lib.Coqlib.
Require Export VST.msl.Coqlib2 VST.veric.coqlib4 VST.floyd.coqlib3.
Require Export VST.floyd.jmeq_lemmas.
Require Export VST.floyd.find_nth_tactic.
Require Export VST.veric.juicy_extspec.
Local Open Scope logic.
(* Closed and subst. copied from closed_lemmas.v. *)
(* End of copied from closed_lemmas.v. *)

Lemma subst_self: forall {A: Type} (P: environ -> A) t id v Delta rho,
(temp_types Delta) ! id = Some t ->
tc_environ Delta rho ->
v rho = eval_id id rho ->
subst id v P rho = P rho.