let make_well hidden_base state loc =
let size = Bit_utils.max_bit_size () in
let well = Cvalue_type.V.inject_top_origin
Origin.Well
(Cvalue_type.V.Top_Param.O.singleton hidden_base)
in
let well_loc =
Locations.make_loc
(Location_Bits.inject hidden_base Ival.zero)
(Int_Base.inject size)
in
let state_with_well =
Relations_type.Model.add_binding
~with_alarms:CilE.warn_none_mode
~exact:true
state
well_loc
well
in
Relations_type.Model.add_binding
~with_alarms:CilE.warn_none_mode
~exact:true
state_with_well
loc
well