Module InferModules.Builtin
type args
=
{
summary : Summary.t;
instr : InferIR.Sil.instr;
tenv : InferIR.Tenv.t;
prop_ : Prop.normal Prop.t;
path : Paths.Path.t;
ret_id_typ : InferIR.Ident.t * InferIR.Typ.t;
args : (InferIR.Exp.t * InferIR.Typ.t) list;
proc_name : InferIR.Typ.Procname.t;
loc : InferBase.Location.t;
exe_env : Exe_env.t;
}
type ret_typ
= (Prop.normal Prop.t * Paths.Path.t) list
type t
= args -> ret_typ
type registered
val register : InferIR.Typ.Procname.t -> t -> registered
Register a builtin
Typ.Procname.t
and symbolic execution handler
val get : InferIR.Typ.Procname.t -> t option
Get the symbolic execution handler associated to the builtin function name