Module ValueDomainQueries

Queries within ValueDomain.

module LS : sig ... end
module AD = PreValueDomain.AD
module ID : sig ... end
type eval_int = GoblintCil.exp -> ID.t
type may_point_to = GoblintCil.exp -> AD.t
type is_multiple = GoblintCil.varinfo -> bool
type t = {
  1. eval_int : eval_int;
  2. may_point_to : may_point_to;
  3. is_multiple : is_multiple;
}

Subset of queries used by the valuedomain, using a simpler representation.

val eval_int_binop : (module Lattice.S with type t = bool) -> GoblintCil__.Cil.binop -> eval_int -> GoblintCil.exp -> GoblintCil.exp -> bool
val must_be_equal : eval_int -> GoblintCil.exp -> GoblintCil.exp -> bool

Backwards-compatibility for former MustBeEqual query.

val may_be_equal : eval_int -> GoblintCil.exp -> GoblintCil.exp -> bool

Backwards-compatibility for former MayBeEqual query.

val may_be_less : eval_int -> GoblintCil.exp -> GoblintCil.exp -> bool

Backwards-compatibility for former MayBeLess query.