(** Properties of smart constructors. *)

(* Specifications: *)
Lemma eval_Ederef':
forall ge e le m a t l ofs,
eval_expr ge e le m a (Vptr l ofs) ->
eval_lvalue ge e le m (Ederef' a t) l ofs.
Lemma typeof_Ederef':
forall a t, typeof (Ederef' a t) = t.
Lemma eval_Eaddrof':
forall ge e le m a t l ofs,
eval_lvalue ge e le m a l ofs ->
eval_expr ge e le m (Eaddrof' a t) (Vptr l ofs).
Lemma typeof_Eaddrof':
forall a t, typeof (Eaddrof' a t) = t.