Module Smart_exp

module Smart_exp: sig .. end

val lval : loc:Cil_types.location -> Cil_types.lval -> Cil_types.exp

Construct an lval expression from an lval.

val deref : loc:Cil_types.location -> Cil_types.exp -> Cil_types.exp

Construct a dereference of an expression.

val subscript : loc:Cil_types.location -> Cil_types.exp -> Cil_types.exp -> Cil_types.exp

mk_subscript ~loc array idx Create an expression to access the idx'th element of the array.

val ptr_sizeof : loc:Cil_types.location -> Cil_types.typ -> Cil_types.exp

ptr_sizeof ~loc ptr_typ takes the pointer typ ptr_typ that points to a typ typ and returns sizeof(typ).

val lnot : loc:Cil_types.location -> Cil_types.exp -> Cil_types.exp

lnot ~loc e creates a logical not on the given expression e.

val null : loc:Cil_types.location -> Cil_types.exp

null ~loc creates an expression to represent the NULL pointer.