Skip to content

Commit 8d7a609

Browse files
committed
Remove no_ov argument from IntDomTuple poly2 and poly2_pr
1 parent 6a5161c commit 8d7a609

1 file changed

Lines changed: 21 additions & 21 deletions

File tree

src/cdomain/value/cdomains/int/intDomTuple.ml

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ module IntDomTupleImpl = struct
4343

4444
type 'b poly_pr = { fp : 'a. 'a m -> 'a -> 'b } [@@unboxed] (* project *)
4545
type 'b poly_pr2 = { fp2 : 'a. 'a m2 -> 'a -> 'b } [@@unboxed] (* project for functions that depend on int_t *)
46-
type 'b poly2_pr = {f2p: 'a. 'a m -> ?no_ov:bool -> 'a -> 'a -> 'b} [@@unboxed]
46+
type 'b poly2_pr = {f2p: 'a. 'a m -> 'a -> 'a -> 'b} [@@unboxed]
4747
type poly1 = {f1: 'a. 'a m -> 'a -> 'a} [@@unboxed] (* needed b/c above 'b must be different from 'a *)
4848
type poly1_ovc = {f1_ovc: 'a. 'a m -> ?no_ov:bool -> 'a -> 'a * overflow_info } [@@unboxed] (* needed b/c above 'b must be different from 'a *)
49-
type poly2 = {f2: 'a. 'a m -> ?no_ov:bool -> 'a -> 'a -> 'a} [@@unboxed]
49+
type poly2 = {f2: 'a. 'a m -> 'a -> 'a -> 'a} [@@unboxed]
5050
type poly2_ovc = {f2_ovc: 'a. 'a m -> ?no_ov:bool -> 'a -> 'a -> 'a * overflow_info } [@@unboxed]
5151
type 'b poly3 = { f3: 'a. 'a m -> 'a option } [@@unboxed] (* used for projection to given precision *)
5252
let create r x ((p1, p2, p3, p4, p5, p6): int_precision) =
@@ -90,8 +90,8 @@ module IntDomTupleImpl = struct
9090
create2_ovc ~suppress_ovwarn ik r x (int_precision_from_node_or_config ())
9191

9292

93-
let opt_map2 f ?no_ov =
94-
curry @@ function Some x, Some y -> Some (f ?no_ov x y) | _ -> None
93+
let opt_map2 f =
94+
curry @@ function Some x, Some y -> Some (f x y) | _ -> None
9595

9696
let to_list (a,b,c,d,e,f) = List.filter_map identity [a;b;c;d;e;f] (* contains only the values of activated domains *)
9797
let to_list_some x = List.filter_map identity @@ to_list x (* contains only the Some-values of activated domains *)
@@ -222,7 +222,7 @@ module IntDomTupleImpl = struct
222222

223223
let leq =
224224
for_all
225-
%% map2p {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.leq)}
225+
%% map2p {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.leq)}
226226

227227
let flat f x = match to_list_some x with [] -> None | xs -> Some (f xs)
228228

@@ -324,10 +324,10 @@ module IntDomTupleImpl = struct
324324
let no_ov = check_ov ~op ik intv intv_set bf in
325325
let no_ov = no_ov || should_ignore_overflow ik in
326326
refine ik
327-
( opt_map2 (fun ?no_ov x y -> r.f2_ovc ?no_ov (module I1) x y |> fst) xa ya
327+
( opt_map2 (fun x y -> r.f2_ovc (module I1) x y |> fst) xa ya (* TODO: why isn't no_ov passed? *)
328328
, BatOption.map fst intv
329-
, opt_map2 (fun ?no_ov x y -> r.f2_ovc ?no_ov (module I3) x y |> fst) xc yc
330-
, opt_map2 (fun ?no_ov x y -> r.f2_ovc ?no_ov (module I4) x y |> fst) ~no_ov:no_ov xd yd
329+
, opt_map2 (fun x y -> r.f2_ovc (module I3) x y |> fst) xc yc (* TODO: why isn't no_ov passed? *)
330+
, opt_map2 (fun x y -> r.f2_ovc ~no_ov (module I4) x y |> fst) xd yd
331331
, BatOption.map fst intv_set
332332
, BatOption.map fst bf)
333333

@@ -419,16 +419,16 @@ module IntDomTupleImpl = struct
419419

420420
(* f2: binary ops *)
421421
let join ik =
422-
map2 ~norefine:true ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.join ik)}
422+
map2 ~norefine:true ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.join ik)}
423423

424424
let meet ik =
425-
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.meet ik)}
425+
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.meet ik)}
426426

427427
let widen ik =
428-
map2 ~norefine:true ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.widen ik)}
428+
map2 ~norefine:true ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.widen ik)}
429429

430430
let narrow ik =
431-
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.narrow ik)}
431+
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.narrow ik)}
432432

433433
let add ?no_ov ik =
434434
map2ovc ~op:(Binop PlusA) ik
@@ -455,31 +455,31 @@ module IntDomTupleImpl = struct
455455
)}
456456

457457
let lt ik =
458-
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.lt ik)}
458+
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.lt ik)}
459459

460460
let gt ik =
461-
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.gt ik)}
461+
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.gt ik)}
462462

463463
let le ik =
464-
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.le ik)}
464+
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.le ik)}
465465

466466
let ge ik =
467-
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.ge ik)}
467+
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.ge ik)}
468468

469469
let eq ik =
470-
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.eq ik)}
470+
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.eq ik)}
471471

472472
let ne ik =
473-
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.ne ik)}
473+
map2bool ik {f2p= (fun (type a) (module I : SOverflow with type t = a) -> I.ne ik)}
474474

475475
let logand ik =
476-
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.logand ik)}
476+
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.logand ik)}
477477

478478
let logor ik =
479-
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.logor ik)}
479+
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.logor ik)}
480480

481481
let logxor ik =
482-
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.logxor ik)}
482+
map2 ik {f2= (fun (type a) (module I : SOverflow with type t = a) -> I.logxor ik)}
483483

484484
let shift_left ik =
485485
map2ovc ~op:(Binop Shiftlt) ik {f2_ovc= (fun (type a) (module I : SOverflow with type t = a) ?no_ov -> I.shift_left ik)}

0 commit comments

Comments
 (0)