@@ -248,16 +248,16 @@ sig
248248 val meet : Cil .ikind -> t -> t -> t
249249 val narrow : Cil .ikind -> t -> t -> t
250250 val widen : Cil .ikind -> t -> t -> t
251- val starting : ? suppress_ovwarn : bool -> Cil .ikind -> int_t -> t
252- val ending : ? suppress_ovwarn : bool -> Cil .ikind -> int_t -> t
251+ val starting : Cil .ikind -> int_t -> t
252+ val ending : Cil .ikind -> int_t -> t
253253 val of_int : Cil .ikind -> int_t -> t
254254 (* * Transform an integer literal to your internal domain representation. *)
255255
256256 val of_bool : Cil .ikind -> bool -> t
257257 (* * Transform a known boolean value to the default internal representation. It
258258 * should follow C: [of_bool true = of_int 1] and [of_bool false = of_int 0]. *)
259259
260- val of_interval : ? suppress_ovwarn : bool -> Cil .ikind -> int_t * int_t -> t
260+ val of_interval : Cil .ikind -> int_t * int_t -> t
261261 val of_congruence : Cil .ikind -> int_t * int_t -> t
262262 val of_bitfield : Cil .ikind -> int_t * int_t -> t
263263 val to_bitfield : Cil .ikind -> t -> int_t * int_t
275275end
276276(* * Interface of IntDomain implementations taking an ikind for arithmetic operations *)
277277
278+ module type S2 =
279+ sig
280+ include S
281+
282+ val starting : ?suppress_ovwarn : bool -> Cil .ikind -> int_t -> t
283+ val ending : ?suppress_ovwarn : bool -> Cil .ikind -> int_t -> t
284+ val of_interval : ?suppress_ovwarn : bool -> Cil .ikind -> int_t * int_t -> t
285+ end
286+
278287module type SOverflow =
279288sig
280289
@@ -358,14 +367,15 @@ sig
358367 module type B = B
359368 module type IkindUnawareS = IkindUnawareS
360369 module type S = S
370+ module type S2 = S2
361371 module type SOverflow = SOverflow
362372
363- module SOverflowUnlifter (D : SOverflow ) : S with type int_t = D. int_t and type t = D. t
373+ module SOverflowUnlifter (D : SOverflow ) : S2 with type int_t = D. int_t and type t = D. t
364374
365375 module type Y = Y
366376 module type Z = Z
367377
368- module IntDomLifter (I : S ): Y with type int_t = I. int_t
378+ module IntDomLifter (I : S2 ): Y with type int_t = I. int_t
369379
370380 module type Ikind = Ikind
371381
0 commit comments