sig
type base
val cvar : D.integer -> Cil_types.varinfo -> base
val root : D.integer -> base
val base : D.integer -> base
type path
val is_atomic : Ctypes.c_object -> bool
val p_block : atomic:bool -> Ctypes.c_object -> path
val p_field : atomic:bool -> path -> Cil_types.fieldinfo -> path
val p_index :
atomic:bool -> path -> Ctypes.c_object -> offset:D.integer -> path
val p_range :
atomic:bool ->
path -> Ctypes.c_object -> offset:D.integer -> length:D.integer -> path
val p_interval :
atomic:bool -> path -> Ctypes.c_object -> D.interval -> path
type region
val pp_region : Format.formatter -> region -> unit
val empty : region
val union : region -> region -> region
val block : base -> region
val index : base -> D.integer -> region
val range : base -> D.integer -> D.integer -> region
val path : base -> path -> region
val is_empty : region -> D.F.pred
val included : region -> region -> D.F.pred
val separated : region -> region -> D.F.pred
val fingerprint : D.F.pool -> region -> D.F.var list * D.F.pred * region
val a_sizeof : Ctypes.c_object -> D.integer
end