let assign_old_exp texpr env lv exp p = match lv with
| Var vi, off ->
let exp = match exp with
| Some exp ->
(*let exp =
Some (MT.term_at env (LogicLabel "Old") exp Types.dummy_type) in
* exp is a generated variable : don't need old !
*)
let exp = Some exp in
let v = MT.mk_cvar vi in
let t = Ctype vi.vtype in
MV.mk_offset_update texpr (Some env) v t exp off
| None -> None
in MV.mk_let_vi vi exp p
| Mem _m, _off -> abort "indirect assign"