sig   val is_bitfield : Cil_types.typ -> bool   val bitfield_size : Cil_types.typ -> Integer.t option   val cast_lval_if_bitfield :     Cil_types.typ -> Int_Base.t -> Cvalue.V.t -> Cvalue.V.t   val sizeof_lval_typ : Cil_types.typ -> Int_Base.t   val offsetmap_matches_type : Cil_types.typ -> Cvalue.V_Offsetmap.t -> bool   val need_cast : Cil_types.typ -> Cil_types.typ -> bool   type fct_pointer_compatibility =       Compatible     | Incompatible     | Incompatible_but_accepted   val compatible_functions :     typ_pointed:Cil_types.typ ->     typ_fun:Cil_types.typ -> Eval_typ.fct_pointer_compatibility   val resolve_functions :     typ_pointer:Cil_types.typ ->     Cvalue.V.t -> Kernel_function.Hptset.t Eval.or_top * bool   val expr_contains_volatile : Cil_types.exp -> bool   val lval_contains_volatile : Cil_types.lval -> bool   val kf_assigns_only_result_or_volatile : Cil_types.kernel_function -> bool   type integer_range = { i_bits : int; i_signed : bool; }   module DatatypeIntegerRange :     sig       type t = integer_range       val ty : t Type.t       val name : string       val descr : t Descr.t       val packed_descr : Structural_descr.pack       val reprs : t list       val equal : t -> t -> bool       val compare : t -> t -> int       val hash : t -> int       val pretty_code : Format.formatter -> t -> unit       val internal_pretty_code :         Type.precedence -> Format.formatter -> t -> unit       val pretty : Format.formatter -> t -> unit       val varname : t -> string       val mem_project : (Project_skeleton.t -> bool) -> t -> bool       val copy : t -> t     end   val ik_range : Cil_types.ikind -> Eval_typ.integer_range   val ik_attrs_range :     Cil_types.ikind -> Cil_types.attributes -> Eval_typ.integer_range   val range_inclusion :     Eval_typ.integer_range -> Eval_typ.integer_range -> bool * bool   val range_lower_bound : Eval_typ.integer_range -> Integer.t   val range_upper_bound : Eval_typ.integer_range -> Integer.t   type scalar_typ =       TSInt of Eval_typ.integer_range     | TSPtr of Eval_typ.integer_range     | TSFloat of Cil_types.fkind     | TSNotScalar   val classify_as_scalar : Cil_types.typ -> Eval_typ.scalar_typ end