module Model0: sig
.. end
Model0 is a memory model that only handle direct access to the data
(it means no *
neither in the statements, nor in the property)
val abort : string -> 'a
type
data0 =
type
exp0 = data0 Fol.d_term
val pp_epath : bool -> Format.formatter -> exp0 WpFol.epath -> unit
val pp_data0 : Format.formatter -> data0 -> unit
val pp_exp0 : Format.formatter -> exp0 -> unit
type
t_pred = data0 Fol.d_pred
module M: sig
.. end
module MV: Mvar.MV
(
M
)
module MT: MV.MT
val assign_exp : (Cil_types.exp -> M.t_exp option) ->
Cil_types.lhost * Cil_types.offset ->
M.t_exp option -> M.t_pred -> M.t_pred
val assign_old_exp : (Cil_types.exp -> M.t_exp option) ->
MV.MT.t_env ->
Cil_types.lhost * Cil_types.offset ->
M.t_exp option -> M.t_pred -> M.t_pred
this is used for parallele assign : we must be careful that the
right side of the let depend only on the assigned variable
val why_prelude : string list