sig
  val are_comparable :
    Abstract_interp.Comp.t -> Cvalue.V.t -> Cvalue.V.t -> bool
  val forward_binop_int :
    context:Eval.binop_context ->
    typ:Cil_types.typ ->
    Cvalue.V.t -> Cil_types.binop -> Cvalue.V.t -> Cvalue.V.t * Alarmset.t
  val forward_binop_float :
    Fval.rounding_mode ->
    Cvalue.V.t -> Cil_types.binop -> Cvalue.V.t -> Cvalue.V.t * bool
  val forward_binop_float_alarm :
    context:Eval.binop_context ->
    Fval.rounding_mode ->
    Cil_types.fkind ->
    Cvalue.V.t -> Cil_types.binop -> Cvalue.V.t -> Cvalue.V.t * Alarmset.t
  val forward_unop :
    check_overflow:bool ->
    context:Eval.unop_context ->
    Cil_types.typ -> Cil_types.unop -> Cvalue.V.t -> Cvalue.V.t * Alarmset.t
  val reinterpret :
    Cil_types.exp -> Cil_types.typ -> Cvalue.V.t -> Cvalue.V.t * Alarmset.t
  val unsafe_reinterpret : Cil_types.typ -> Cvalue.V.t -> Cvalue.V.t
  val do_promotion :
    rounding_mode:Fval.rounding_mode ->
    src_typ:Cil_types.typ ->
    dst_typ:Cil_types.typ ->
    Cil_types.exp -> Cvalue.V.t -> Cvalue.V.t * Alarmset.t
  val make_volatile : ?typ:Cil_types.typ -> Cvalue.V.t -> Cvalue.V.t
  val cast_lval_if_bitfield : Cil_types.typ -> Cvalue.V.t -> Cvalue.V.t
  val eval_float_constant :
    Cil_types.exp ->
    float -> Cil_types.fkind -> string option -> Cvalue.V.t Eval.evaluated
  val offsetmap_matches_type :
    Cil_types.typ -> Cvalue.Model.offsetmap -> bool
end