(** Freeing of local variables *)

(* Specifications: *)
Lemma free_blocks_of_env_perm_1:
forall ce m e m' id b ty ofs k p,
Mem.free_list m (blocks_of_env ce e) = Some m' ->
e!id = Some(b, ty) ->
Mem.perm m' b ofs k p ->
0 <= ofs < sizeof ce ty ->
False.
Lemma free_list_perm':
forall b lo hi l m m',
Mem.free_list m l = Some m' ->
In (b, lo, hi) l ->
Mem.range_perm m b lo hi Cur Freeable.
Lemma free_blocks_of_env_perm_2:
forall ce m e m' id b ty,
Mem.free_list m (blocks_of_env ce e) = Some m' ->
e!id = Some(b, ty) ->
Mem.range_perm m b 0 (sizeof ce ty) Cur Freeable.