Skip to content

Commit 6151622

Browse files
committed
[tests][dune] add tests with preprocessing
`examples/using_dune/lib/preprocessed/` contains minimal examples with preprocessed files : `preprocessed.ml`, `preprocessed.mli`, and `preprocessed_no_intf.ml`. The `.ml` files are identical. Most of the content of the files are not affected by preprocessing. Only 2 types are : `constr_with_eq` and `record_with_eq`. The former exposes a constructor that will be matched in the generated `equal_constr_with_eq`. The latter exposes a field that will be read by the generated `equal_record_with_eq`. Consequently, the constructor remains unused but the field becomes used. As shown by the updated `.ref` files, preprocessed files introduce FN and FP.
1 parent e689746 commit 6151622

24 files changed

+713
-22
lines changed

.github/workflows/workflow.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ jobs:
2929

3030
- run: opam install . --deps-only --with-test
3131

32+
- run: opam install ./examples/using_dune --deps-only --with-test
33+
3234
- run: opam exec -- dune build
3335

3436
- run: opam exec -- make examples

check/classic/classic.exp

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
.> UNUSED EXPORTED VALUES:
22
=========================
3+
./examples/using_dune/preprocessed_lib/preprocessed.mli:1: unused
4+
./examples/using_dune/preprocessed_lib/preprocessed.mli:3: internally_used
5+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:2: unused
6+
37
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:1: unused_fun_with_single_never_used_opt_arg
48
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:8: internally_used_fun_with_single_never_used_opt_arg
59
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:10: internally_used_fun_with_single_always_used_opt_arg
@@ -101,6 +105,9 @@ Nothing else to report in this section
101105

102106
.> UNUSED METHODS:
103107
=================
108+
./examples/using_dune/preprocessed_lib/preprocessed.mli:6: immediate#unused
109+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:12: immediate#unused
110+
104111
./examples/using_dune/unwrapped_lib/obj/with_class.mli:1: unused#unused
105112
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_fun
106113
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_int
@@ -160,6 +167,13 @@ Nothing else to report in this section
160167

161168
.> UNUSED CONSTRUCTORS/RECORD FIELDS:
162169
====================================
170+
./examples/using_dune/preprocessed_lib/preprocessed.mli:14: constructors.Unused
171+
./examples/using_dune/preprocessed_lib/preprocessed.mli:19: constr_with_eq.Unused
172+
./examples/using_dune/preprocessed_lib/preprocessed.mli:23: record.unused
173+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:25: constructors.Unused
174+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:30: constr_with_eq.Unused
175+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:39: record.unused
176+
163177
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:1: unused_single_no_param.Unused_single_no_param
164178
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:2: unused_single_unit.Unused_single_unit
165179
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:3: unused_single_param.Unused_single_param
@@ -227,6 +241,9 @@ Nothing else to report in this section
227241

228242
.> OPTIONAL ARGUMENTS: ALWAYS:
229243
=============================
244+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?always
245+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?always
246+
230247
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?always
231248
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?always
232249
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?always
@@ -361,6 +378,11 @@ Nothing else to report in this section
361378

362379
.> OPTIONAL ARGUMENTS: NEVER:
363380
============================
381+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?never
382+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: ?opt
383+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?never
384+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: ?opt
385+
364386
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?never
365387
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?never
366388
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?never
@@ -464,6 +486,17 @@ Nothing else to report in this section
464486

465487
.> CODING STYLE:
466488
===============
489+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: let () = ... in ... (=> use sequence)
490+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: unit pattern unit_binding
491+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
492+
./examples/using_dune/preprocessed_lib/preprocessed.ml:66: let () = ... in ... (=> use sequence)
493+
./examples/using_dune/preprocessed_lib/preprocessed.ml:67: let x = ... in x (=> useless binding)
494+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: let () = ... in ... (=> use sequence)
495+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: unit pattern unit_binding
496+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
497+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:66: let () = ... in ... (=> use sequence)
498+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:67: let x = ... in x (=> useless binding)
499+
467500
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:20: val f: ... -> (... -> ?_:_ -> ...) -> ...
468501
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:22: val f: ... -> (... -> ?_:_ -> ...) -> ...
469502
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:25: val f: ... -> (... -> ?_:_ -> ...) -> ...

check/classic/classic.ref

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
.> UNUSED EXPORTED VALUES:
22
=========================
3+
./examples/using_dune/preprocessed_lib/preprocessed.mli:1: unused
4+
./examples/using_dune/preprocessed_lib/preprocessed.mli:3: internally_used
5+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:2: unused
6+
37
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:1: unused_fun_with_single_never_used_opt_arg
48
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:8: internally_used_fun_with_single_never_used_opt_arg
59
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:10: internally_used_fun_with_single_always_used_opt_arg
@@ -101,6 +105,9 @@ Nothing else to report in this section
101105

102106
.> UNUSED METHODS:
103107
=================
108+
./examples/using_dune/preprocessed_lib/preprocessed.mli:6: immediate#unused
109+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:12: immediate#unused
110+
104111
./examples/using_dune/unwrapped_lib/obj/with_class.mli:1: unused#unused
105112
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_fun
106113
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_int
@@ -160,6 +167,13 @@ Nothing else to report in this section
160167

161168
.> UNUSED CONSTRUCTORS/RECORD FIELDS:
162169
====================================
170+
./examples/using_dune/preprocessed_lib/preprocessed.mli:14: constructors.Unused: Not detected
171+
./examples/using_dune/preprocessed_lib/preprocessed.mli:19: constr_with_eq.Unused: Not detected
172+
./examples/using_dune/preprocessed_lib/preprocessed.mli:23: record.unused: Not detected
173+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:25: constructors.Unused
174+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:30: constr_with_eq.Unused
175+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:39: record.unused
176+
163177
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:1: unused_single_no_param.Unused_single_no_param
164178
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:2: unused_single_unit.Unused_single_unit
165179
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:3: unused_single_param.Unused_single_param
@@ -227,6 +241,9 @@ Nothing else to report in this section
227241

228242
.> OPTIONAL ARGUMENTS: ALWAYS:
229243
=============================
244+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?always
245+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?always
246+
230247
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?always
231248
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?always
232249
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?always
@@ -361,6 +378,11 @@ Nothing else to report in this section
361378

362379
.> OPTIONAL ARGUMENTS: NEVER:
363380
============================
381+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?never
382+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: ?opt
383+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?never
384+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: ?opt
385+
364386
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?never
365387
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?never
366388
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?never
@@ -464,6 +486,17 @@ Nothing else to report in this section
464486

465487
.> CODING STYLE:
466488
===============
489+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: let () = ... in ... (=> use sequence)
490+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: unit pattern unit_binding
491+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
492+
./examples/using_dune/preprocessed_lib/preprocessed.ml:66: let () = ... in ... (=> use sequence)
493+
./examples/using_dune/preprocessed_lib/preprocessed.ml:67: let x = ... in x (=> useless binding)
494+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: let () = ... in ... (=> use sequence)
495+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: unit pattern unit_binding
496+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
497+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:66: let () = ... in ... (=> use sequence)
498+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:67: let x = ... in x (=> useless binding)
499+
467500
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:20: val f: ... -> (... -> ?_:_ -> ...) -> ...
468501
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:22: val f: ... -> (... -> ?_:_ -> ...) -> ...
469502
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:25: val f: ... -> (... -> ?_:_ -> ...) -> ...
@@ -500,7 +533,7 @@ Nothing else to report in this section
500533
--------------------------------------------------------------------------------
501534

502535

503-
Total: 433
504-
Success: 433
505-
Failed: 0
506-
Ratio: 100.%
536+
Total: 460
537+
Success: 457
538+
Failed: 3
539+
Ratio: 99.347826087%

check/internal/internal.exp

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
.> UNUSED EXPORTED VALUES:
22
=========================
3+
./examples/using_dune/preprocessed_lib/preprocessed.mli:1: unused
4+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:2: unused
5+
36
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:1: unused_fun_with_single_never_used_opt_arg
47

58
./examples/using_dune/unwrapped_lib/values/values.mli:2: unused_int
@@ -70,6 +73,9 @@ Nothing else to report in this section
7073

7174
.> UNUSED METHODS:
7275
=================
76+
./examples/using_dune/preprocessed_lib/preprocessed.mli:6: immediate#unused
77+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:12: immediate#unused
78+
7379
./examples/using_dune/unwrapped_lib/obj/with_class.mli:1: unused#unused
7480
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_fun
7581
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_int
@@ -129,6 +135,13 @@ Nothing else to report in this section
129135

130136
.> UNUSED CONSTRUCTORS/RECORD FIELDS:
131137
====================================
138+
./examples/using_dune/preprocessed_lib/preprocessed.mli:14: constructors.Unused
139+
./examples/using_dune/preprocessed_lib/preprocessed.mli:19: constr_with_eq.Unused
140+
./examples/using_dune/preprocessed_lib/preprocessed.mli:23: record.unused
141+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:25: constructors.Unused
142+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:30: constr_with_eq.Unused
143+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:39: record.unused
144+
132145
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:1: unused_single_no_param.Unused_single_no_param
133146
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:2: unused_single_unit.Unused_single_unit
134147
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:3: unused_single_param.Unused_single_param
@@ -196,6 +209,9 @@ Nothing else to report in this section
196209

197210
.> OPTIONAL ARGUMENTS: ALWAYS:
198211
=============================
212+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?always
213+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?always
214+
199215
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?always
200216
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?always
201217
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?always
@@ -330,6 +346,11 @@ Nothing else to report in this section
330346

331347
.> OPTIONAL ARGUMENTS: NEVER:
332348
============================
349+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?never
350+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: ?opt
351+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?never
352+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: ?opt
353+
333354
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?never
334355
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?never
335356
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?never
@@ -433,6 +454,17 @@ Nothing else to report in this section
433454

434455
.> CODING STYLE:
435456
===============
457+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: let () = ... in ... (=> use sequence)
458+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: unit pattern unit_binding
459+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
460+
./examples/using_dune/preprocessed_lib/preprocessed.ml:66: let () = ... in ... (=> use sequence)
461+
./examples/using_dune/preprocessed_lib/preprocessed.ml:67: let x = ... in x (=> useless binding)
462+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: let () = ... in ... (=> use sequence)
463+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: unit pattern unit_binding
464+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
465+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:66: let () = ... in ... (=> use sequence)
466+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:67: let x = ... in x (=> useless binding)
467+
436468
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:20: val f: ... -> (... -> ?_:_ -> ...) -> ...
437469
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:22: val f: ... -> (... -> ?_:_ -> ...) -> ...
438470
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:25: val f: ... -> (... -> ?_:_ -> ...) -> ...

check/internal/internal.ref

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
.> UNUSED EXPORTED VALUES:
22
=========================
3+
./examples/using_dune/preprocessed_lib/preprocessed.mli:1: unused
4+
./examples/using_dune/preprocessed_lib/preprocessed.mli:3: internally_used: Should not be detected
5+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:2: unused
6+
37
./examples/using_dune/unwrapped_lib/opt_args/opt_args.mli:1: unused_fun_with_single_never_used_opt_arg
48

59
./examples/using_dune/unwrapped_lib/values/values.mli:2: unused_int
@@ -70,6 +74,9 @@ Nothing else to report in this section
7074

7175
.> UNUSED METHODS:
7276
=================
77+
./examples/using_dune/preprocessed_lib/preprocessed.mli:6: immediate#unused
78+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:12: immediate#unused
79+
7380
./examples/using_dune/unwrapped_lib/obj/with_class.mli:1: unused#unused
7481
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_fun
7582
./examples/using_dune/unwrapped_lib/obj/with_class.mli:5: basics#never_used_int
@@ -129,6 +136,13 @@ Nothing else to report in this section
129136

130137
.> UNUSED CONSTRUCTORS/RECORD FIELDS:
131138
====================================
139+
./examples/using_dune/preprocessed_lib/preprocessed.mli:14: constructors.Unused: Not detected
140+
./examples/using_dune/preprocessed_lib/preprocessed.mli:19: constr_with_eq.Unused: Not detected
141+
./examples/using_dune/preprocessed_lib/preprocessed.mli:23: record.unused: Not detected
142+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:25: constructors.Unused
143+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:30: constr_with_eq.Unused
144+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:39: record.unused
145+
132146
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:1: unused_single_no_param.Unused_single_no_param
133147
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:2: unused_single_unit.Unused_single_unit
134148
./examples/using_dune/unwrapped_lib/constructors_and_records/constructors.mli:3: unused_single_param.Unused_single_param
@@ -196,6 +210,9 @@ Nothing else to report in this section
196210

197211
.> OPTIONAL ARGUMENTS: ALWAYS:
198212
=============================
213+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?always
214+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?always
215+
199216
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?always
200217
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?always
201218
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?always
@@ -330,6 +347,11 @@ Nothing else to report in this section
330347

331348
.> OPTIONAL ARGUMENTS: NEVER:
332349
============================
350+
./examples/using_dune/preprocessed_lib/preprocessed.ml:53: ?never
351+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: ?opt
352+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:53: ?never
353+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: ?opt
354+
333355
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:1: ?never
334356
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:8: ?never
335357
./examples/using_dune/unwrapped_lib/opt_args/mixed_args.ml:15: ?never
@@ -433,6 +455,17 @@ Nothing else to report in this section
433455

434456
.> CODING STYLE:
435457
===============
458+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: let () = ... in ... (=> use sequence)
459+
./examples/using_dune/preprocessed_lib/preprocessed.ml:64: unit pattern unit_binding
460+
./examples/using_dune/preprocessed_lib/preprocessed.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
461+
./examples/using_dune/preprocessed_lib/preprocessed.ml:66: let () = ... in ... (=> use sequence)
462+
./examples/using_dune/preprocessed_lib/preprocessed.ml:67: let x = ... in x (=> useless binding)
463+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: let () = ... in ... (=> use sequence)
464+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:64: unit pattern unit_binding
465+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:65: val f: ... -> (... -> ?_:_ -> ...) -> ...
466+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:66: let () = ... in ... (=> use sequence)
467+
./examples/using_dune/preprocessed_lib/preprocessed_no_intf.ml:67: let x = ... in x (=> useless binding)
468+
436469
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:20: val f: ... -> (... -> ?_:_ -> ...) -> ...
437470
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:22: val f: ... -> (... -> ?_:_ -> ...) -> ...
438471
./examples/using_dune/unwrapped_lib/opt_args/opt_args_in_higher_order_fun.ml:25: val f: ... -> (... -> ?_:_ -> ...) -> ...
@@ -469,7 +502,7 @@ Nothing else to report in this section
469502
--------------------------------------------------------------------------------
470503

471504

472-
Total: 404
473-
Success: 404
474-
Failed: 0
475-
Ratio: 100.%
505+
Total: 431
506+
Success: 427
507+
Failed: 4
508+
Ratio: 99.0719257541%

0 commit comments

Comments
 (0)