Module InferModules.BufferOverrunSemantics

val eval_const : InferIR.Const.t ‑> BufferOverrunDomain.Val.t
val sizeof_ikind : InferIR.Typ.ikind ‑> int
val sizeof_fkind : InferIR.Typ.fkind ‑> int
val sizeof : InferIR.Typ.t ‑> int
val must_alias : InferIR.Exp.t ‑> InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> bool
val must_alias_opt : InferIR.Exp.t option ‑> InferIR.Exp.t option ‑> BufferOverrunDomain.Mem.astate ‑> bool
val comp_rev : InferIR.Binop.t ‑> InferIR.Binop.t
val comp_not : InferIR.Binop.t ‑> InferIR.Binop.t
val must_alias_cmp : InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> bool
val eval : InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Val.t
val eval_lindex : InferIR.Exp.t ‑> InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Val.t
val eval_unop : InferIR.Unop.t ‑> InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Val.t
val eval_binop : InferIR.Binop.t ‑> InferIR.Exp.t ‑> InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Val.t
val eval_arr : InferIR.Exp.t ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Val.t
val get_allocsite : InferIR.Typ.Procname.t ‑> node_hash:int ‑> inst_num:int ‑> dimension:int ‑> string
val eval_array_alloc : InferIR.Typ.Procname.t ‑> node_hash:int ‑> InferIR.Typ.t ‑> stride:int option ‑> offset:Itv.t ‑> size:Itv.t ‑> inst_num:int ‑> dimension:int ‑> BufferOverrunDomain.Val.t
module Prune : sig ... end
val get_formals : InferIR.Procdesc.t ‑> (InferIR.Pvar.t * InferIR.Typ.t) list
val get_matching_pairs : InferIR.Tenv.t ‑> BufferOverrunDomain.Val.t ‑> BufferOverrunDomain.Val.t ‑> InferIR.Typ.t ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Mem.astate ‑> callee_ret_alias:BufferOverrunDomain.AliasTarget.t option ‑> (Itv.Bound.t * Itv.Bound.t AbstractDomain.Types.bottom_lifted * BufferOverrunDomain.TraceSet.t) list * BufferOverrunDomain.AliasTarget.t option
val subst_map_of_pairs : (Itv.Bound.t * Itv.Bound.t AbstractDomain.Types.bottom_lifted * BufferOverrunDomain.TraceSet.t) list ‑> Itv.Bound.t AbstractDomain.Types.bottom_lifted InferModules.Itv.SymbolMap.t * BufferOverrunDomain.TraceSet.t InferModules.Itv.SymbolMap.t
val list_fold2_def : default:BufferOverrunDomain.Val.t ‑> f:('a ‑> BufferOverrunDomain.Val.t ‑> 'b ‑> 'b) ‑> 'a list ‑> BufferOverrunDomain.Val.t list ‑> init:'b ‑> 'b
val get_subst_map : InferIR.Tenv.t ‑> InferIR.Procdesc.t ‑> (InferIR.Exp.t * 'a) list ‑> BufferOverrunDomain.Mem.astate ‑> BufferOverrunDomain.Mem.astate ‑> callee_ret_alias:BufferOverrunDomain.AliasTarget.t option ‑> (Itv.Bound.t AbstractDomain.Types.bottom_lifted InferModules.Itv.SymbolMap.t * BufferOverrunDomain.TraceSet.t InferModules.Itv.SymbolMap.t) * BufferOverrunDomain.AliasTarget.t option