Build:
- 0
2026-10-07 21:21.09: New job: build stdcompat.21.1 (e42075bb6b34)
2026-10-07 21:21.09: Waiting for resource in pool day11-builds
2026-10-07 21:27.30: Got resource from pool day11-builds
2026-10-07 21:27.30: [profile oxcaml-odoc-master] build stdcompat.21.1
2026-10-07 21:27.30: build stdcompat.21.1 (e42075bb6b34)
=== DEPENDENCIES (9 transitive) ===
base-threads.base 464810371b96
base-unix.base 4596d20d2cf7
conf-autoconf.1 8ee1e3913008
conf-which.1 65c43ca119c3
dune.3.22.2+ox a601158acc62
ocaml.5.2.0 b8c350f4f1ad
ocaml-config.3 2c72b422dfc3
ocaml-variants.5.2.0+ox 60cb73ac7801
oxcaml-compiler.5.2.0minus39 c47b62237187
=== STDOUT ===
Processing: [default: loading data]
[stdcompat.21.1: dl]
[stdcompat.21.1: extract]
-> retrieved stdcompat.21.1 (https://opam.ocaml.org/cache)
[stdcompat: dune build]
+ /home/opam/.opam/default/bin/dune "build" "-p" "stdcompat" "-j" "39" (CWD=/home/opam/.opam/default/.opam-switch/build/stdcompat.21.1)
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__array.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__array.cmo -c -impl stdcompat__array.ml)
- File "stdcompat__array.ml", line 1:
- Error: The implementation "stdcompat__array.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__array.cmi":
- Values do not match:
- external create_float : int -> float array
- = "caml_array_create_float"
- is not included in
- external create_float : int -> float array = "caml_make_float_vect"
- The names of the primitives are not the same
- File "stdcompat__array_s.mli", line 118, characters 0-67:
- Expected declaration
- File "array.mli", lines 76-77, characters 0-49: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__array.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__array.cmx -c -impl stdcompat__array.ml)
- File "stdcompat__array.ml", line 1:
- Error: The implementation "stdcompat__array.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__array.cmi":
- Values do not match:
- external create_float : int -> float array
- = "caml_array_create_float"
- is not included in
- external create_float : int -> float array = "caml_make_float_vect"
- The names of the primitives are not the same
- File "stdcompat__array_s.mli", line 118, characters 0-67:
- Expected declaration
- File "array.mli", lines 76-77, characters 0-49: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__atomic.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__atomic.cmo -c -impl stdcompat__atomic.ml)
- File "stdcompat__atomic.ml", line 1:
- Error: The implementation "stdcompat__atomic.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__atomic.cmi":
- Values do not match:
- external set : 'a t @ local -> 'a -> unit = "%atomic_set"
- is not included in
- val set : 'a t -> 'a -> unit
- The type "'a t @ local -> 'a -> unit" is not compatible with the type
- "'a t -> 'a -> unit"
- File "stdcompat__atomic_s.mli", line 26, characters 0-28:
- Expected declaration
- File "stdlib/atomic.mli", line 55, characters 0-79:
- Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__atomic.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__atomic.cmx -c -impl stdcompat__atomic.ml)
- File "stdcompat__atomic.ml", line 1:
- Error: The implementation "stdcompat__atomic.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__atomic.cmi":
- Values do not match:
- external set : 'a t @ local -> 'a -> unit = "%atomic_set"
- is not included in
- val set : 'a t -> 'a -> unit
- The type "'a t @ local -> 'a -> unit" is not compatible with the type
- "'a t -> 'a -> unit"
- File "stdcompat__atomic_s.mli", line 26, characters 0-28:
- Expected declaration
- File "stdlib/atomic.mli", line 55, characters 0-79:
- Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__buffer.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__buffer.cmo -c -impl stdcompat__buffer.ml)
- File "stdcompat__buffer.ml", line 1:
- Error: The implementation "stdcompat__buffer.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__buffer.cmi":
- Values do not match:
- val blit : t @ local -> int -> bytes @ local -> int -> int -> unit
- is not included in
- val blit : t -> int -> bytes -> int -> int -> unit
- The type "t @ local -> int -> bytes @ local -> int -> int -> unit"
- is not compatible with the type
- "t -> int -> bytes -> int -> int -> unit"
- Type "int -> (int -> unit) @ local" is not compatible with type
- "int -> int -> unit"
- File "stdcompat__buffer_s.mli", line 123, characters 0-50:
- Expected declaration
- File "buffer.mli", line 84, characters 0-66: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__buffer.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__buffer.cmx -c -impl stdcompat__buffer.ml)
- File "stdcompat__buffer.ml", line 1:
- Error: The implementation "stdcompat__buffer.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__buffer.cmi":
- Values do not match:
- val blit : t @ local -> int -> bytes @ local -> int -> int -> unit
- is not included in
- val blit : t -> int -> bytes -> int -> int -> unit
- The type "t @ local -> int -> bytes @ local -> int -> int -> unit"
- is not compatible with the type
- "t -> int -> bytes -> int -> int -> unit"
- Type "int -> (int -> unit) @ local" is not compatible with type
- "int -> int -> unit"
- File "stdcompat__buffer_s.mli", line 123, characters 0-50:
- Expected declaration
- File "buffer.mli", line 84, characters 0-66: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__domain.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__domain.cmo -c -impl stdcompat__domain.ml)
- File "stdcompat__domain.ml", line 1:
- Alert do_not_spawn_domains: spawn
- User programs should never spawn domains. To execute a function on a domain, use [Multicore] from the threading library. This is because spawning more than [recommended_domain_count] domains (the CPU core count) will significantly degrade GC performance. Using both [Domain.spawn] and [Multicore] can cause [Multicore] to abort.
- File "domain.mli", lines 34-41, characters 0-55:
- Definition
- File "stdcompat__domain_s.mli", line 44, characters 0-32:
- Expected signature
-
- File "stdcompat__domain.ml", line 1:
- Alert unsafe_multidomain: spawn
- Use [Domain.Safe.spawn].
- File "domain.mli", lines 34-41, characters 0-55:
- Definition
- File "stdcompat__domain_s.mli", line 44, characters 0-32:
- Expected signature
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -no-alias-deps -o .stdcompat.objs/byte/stdcompat__format_s.cmi -c -intf stdcompat__format_s.mli)
- File "stdcompat__format_s.mli", lines 44-50, characters 0-27:
- 44 | type formatter_out_functions = Format.formatter_out_functions =
- 45 | {
- 46 | out_string: string -> int -> int -> unit ;
- 47 | out_flush: unit -> unit ;
- 48 | out_newline: unit -> unit ;
- 49 | out_spaces: int -> unit ;
- 50 | out_indent: int -> unit }
- Error: This variant or record definition does not match that of type
- "Format.formatter_out_functions"
- An extra field, "out_width", is provided in the original definition.
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__domain.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__domain.cmx -c -impl stdcompat__domain.ml)
- File "stdcompat__domain.ml", line 1:
- Alert do_not_spawn_domains: spawn
- User programs should never spawn domains. To execute a function on a domain, use [Multicore] from the threading library. This is because spawning more than [recommended_domain_count] domains (the CPU core count) will significantly degrade GC performance. Using both [Domain.spawn] and [Multicore] can cause [Multicore] to abort.
- File "domain.mli", lines 34-41, characters 0-55:
- Definition
- File "stdcompat__domain_s.mli", line 44, characters 0-32:
- Expected signature
-
- File "stdcompat__domain.ml", line 1:
- Alert unsafe_multidomain: spawn
- Use [Domain.Safe.spawn].
- File "domain.mli", lines 34-41, characters 0-55:
- Definition
- File "stdcompat__domain_s.mli", line 44, characters 0-32:
- Expected signature
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__fun.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__fun.cmo -c -impl stdcompat__fun.ml)
- File "stdcompat__fun.ml", line 1:
- Error: The implementation "stdcompat__fun.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__fun.cmi":
- Values do not match:
- val protect :
- finally:(unit -> unit) @ local once ->
- (unit -> 'a) @ local once -> 'a
- is not included in
- val protect : finally:(unit -> unit) -> (unit -> 'a) -> 'a
- The type
- "(unit -> unit) @ local once -> (unit -> 'a) @ local once -> 'a"
- is not compatible with the type "(unit -> unit) -> (unit -> 'a) -> 'a"
- File "stdcompat__fun_s.mli", line 20, characters 0-58:
- Expected declaration
- File "fun.mli", lines 55-56, characters 0-72: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__fun.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__fun.cmx -c -impl stdcompat__fun.ml)
- File "stdcompat__fun.ml", line 1:
- Error: The implementation "stdcompat__fun.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__fun.cmi":
- Values do not match:
- val protect :
- finally:(unit -> unit) @ local once ->
- (unit -> 'a) @ local once -> 'a
- is not included in
- val protect : finally:(unit -> unit) -> (unit -> 'a) -> 'a
- The type
- "(unit -> unit) @ local once -> (unit -> 'a) @ local once -> 'a"
- is not compatible with the type "(unit -> unit) -> (unit -> 'a) -> 'a"
- File "stdcompat__fun_s.mli", line 20, characters 0-58:
- Expected declaration
- File "fun.mli", lines 55-56, characters 0-72: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__queue.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__queue.cmx -c -impl stdcompat__queue.ml)
- File "stdcompat__queue.ml", line 1:
- Error: The implementation "stdcompat__queue.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__queue.cmi":
- Values do not match:
- val iter : ('a -> unit) @ local -> 'a t @ local -> unit
- is not included in
- val iter : ('a -> unit) -> 'a t -> unit
- The type "('a -> unit) @ local -> 'a t @ local -> unit"
- is not compatible with the type "('a -> unit) -> 'a t -> unit"
- File "stdcompat__queue_s.mli", line 80, characters 0-39:
- Expected declaration
- File "queue.mli", line 92, characters 0-78: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__bytes.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__bytes.cmo -c -impl stdcompat__bytes.ml)
- File "stdcompat__bytes.ml", line 1:
- Error: The implementation "stdcompat__bytes.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__bytes.cmi":
- Values do not match:
- val blit :
- bytes @ local -> int -> bytes @ local -> int -> int -> unit
- is not included in
- val blit : bytes -> int -> bytes -> int -> int -> unit
- The type "bytes @ local -> int -> bytes @ local -> int -> int -> unit"
- is not compatible with the type
- "bytes -> int -> bytes -> int -> int -> unit"
- Type "int -> (int -> unit) @ local" is not compatible with type
- "int -> int -> unit"
- File "stdcompat__bytes_s.mli", line 701, characters 0-54:
- Expected declaration
- File "bytes.mli", lines 135-137, characters 0-9: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__queue.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__queue.cmo -c -impl stdcompat__queue.ml)
- File "stdcompat__queue.ml", line 1:
- Error: The implementation "stdcompat__queue.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__queue.cmi":
- Values do not match:
- val iter : ('a -> unit) @ local -> 'a t @ local -> unit
- is not included in
- val iter : ('a -> unit) -> 'a t -> unit
- The type "('a -> unit) @ local -> 'a t @ local -> unit"
- is not compatible with the type "('a -> unit) -> 'a t -> unit"
- File "stdcompat__queue_s.mli", line 80, characters 0-39:
- Expected declaration
- File "queue.mli", line 92, characters 0-78: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__bytes.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__bytes.cmx -c -impl stdcompat__bytes.ml)
- File "stdcompat__bytes.ml", line 1:
- Error: The implementation "stdcompat__bytes.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__bytes.cmi":
- Values do not match:
- val blit :
- bytes @ local -> int -> bytes @ local -> int -> int -> unit
- is not included in
- val blit : bytes -> int -> bytes -> int -> int -> unit
- The type "bytes @ local -> int -> bytes @ local -> int -> int -> unit"
- is not compatible with the type
- "bytes -> int -> bytes -> int -> int -> unit"
- Type "int -> (int -> unit) @ local" is not compatible with type
- "int -> int -> unit"
- File "stdcompat__bytes_s.mli", line 701, characters 0-54:
- Expected declaration
- File "bytes.mli", lines 135-137, characters 0-9: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__int64.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__int64.cmo -c -impl stdcompat__int64.ml)
- File "stdcompat__int64.ml", line 1:
- Error: The implementation "stdcompat__int64.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__int64.cmi":
- Values do not match:
- external of_float : float -> int64 = "caml_int64_of_float"
- "caml_int64_of_float_unboxed" [@@unboxed] [@@builtin] [@@noalloc]
- is not included in
- external of_float : float -> int64 = "caml_int64_of_float"
- "caml_int64_of_float_unboxed" [@@unboxed] [@@noalloc]
- The two primitives differ in whether they are builtins
- File "stdcompat__int64_s.mli", lines 105-107, characters 0-24:
- Expected declaration
- File "int64.mli", lines 150-152, characters 0-37: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__list.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__list.cmo -c -impl stdcompat__list.ml)
- File "stdcompat__list.ml", line 1:
- Error: The implementation "stdcompat__list.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__list.cmi":
- Values do not match:
- val mem : 'a @ local -> 'a list @ local -> bool
- is not included in
- val mem : 'a -> 'a list -> bool
- The type "'a @ local -> 'a list @ local -> bool"
- is not compatible with the type "'a -> 'a list -> bool"
- File "stdcompat__list_s.mli", line 251, characters 0-31:
- Expected declaration
- File "list.mli", line 317, characters 0-69: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__list.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__list.cmx -c -impl stdcompat__list.ml)
- File "stdcompat__list.ml", line 1:
- Error: The implementation "stdcompat__list.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__list.cmi":
- Values do not match:
- val mem : 'a @ local -> 'a list @ local -> bool
- is not included in
- val mem : 'a -> 'a list -> bool
- The type "'a @ local -> 'a list @ local -> bool"
- is not compatible with the type "'a -> 'a list -> bool"
- File "stdcompat__list_s.mli", line 251, characters 0-31:
- Expected declaration
- File "list.mli", line 317, characters 0-69: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__printexc.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__printexc.cmo -c -impl stdcompat__printexc.ml)
- File "stdcompat__printexc.ml", line 128, characters 37-76:
- 128 | let set_uncaught_exception_handler = Printexc.set_uncaught_exception_handler
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Alert unsafe_multidomain: Stdlib.Printexc.set_uncaught_exception_handler
- Use [Printexc.Safe.set_uncaught_exception_handler].
-
- File "stdcompat__printexc.ml", line 204, characters 23-48:
- 204 | let register_printer = Printexc.register_printer
- ^^^^^^^^^^^^^^^^^^^^^^^^^
- Alert unsafe_multidomain: Stdlib.Printexc.register_printer
- Use [Printexc.Safe.register_printer].
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__int64.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__int64.cmx -c -impl stdcompat__int64.ml)
- File "stdcompat__int64.ml", line 1:
- Error: The implementation "stdcompat__int64.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__int64.cmi":
- Values do not match:
- external of_float : float -> int64 = "caml_int64_of_float"
- "caml_int64_of_float_unboxed" [@@unboxed] [@@builtin] [@@noalloc]
- is not included in
- external of_float : float -> int64 = "caml_int64_of_float"
- "caml_int64_of_float_unboxed" [@@unboxed] [@@noalloc]
- The two primitives differ in whether they are builtins
- File "stdcompat__int64_s.mli", lines 105-107, characters 0-24:
- Expected declaration
- File "int64.mli", lines 150-152, characters 0-37: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__int32.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__int32.cmo -c -impl stdcompat__int32.ml)
- File "stdcompat__int32.ml", line 1:
- Error: The implementation "stdcompat__int32.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__int32.cmi":
- Values do not match:
- external of_string : string -> (int32 [@unboxed])
- = "caml_int32_of_string" "caml_int32_of_string_unboxed"
- is not included in
- external of_string : string -> int32 = "caml_int32_of_string"
- The native names of the primitives are not the same
- File "stdcompat__int32_s.mli", line 193, characters 0-61:
- Expected declaration
- File "int32.mli", lines 165-166, characters 0-57: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__string.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__string.cmo -c -impl stdcompat__string.ml)
- File "stdcompat__string.ml", line 1:
- Error: The implementation "stdcompat__string.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__string.cmi":
- Values do not match:
- val index_from_opt : string @ local -> int -> char -> int option
- is not included in
- val index_from_opt : string -> int -> char -> int option
- The type "string @ local -> int -> char -> int option"
- is not compatible with the type "string -> int -> char -> int option"
- Type "int -> (char -> int option) @ local" is not compatible with type
- "int -> char -> int option"
- File "stdcompat__string_s.mli", line 186, characters 0-56:
- Expected declaration
- File "string.mli", line 317, characters 0-64: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__nativeint.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__nativeint.cmo -c -impl stdcompat__nativeint.ml)
- File "stdcompat__nativeint.ml", line 1:
- Error: The implementation "stdcompat__nativeint.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__nativeint.cmi":
- Values do not match:
- external of_string : string -> (nativeint [@unboxed])
- = "caml_nativeint_of_string" "caml_nativeint_of_string_unboxed"
- is not included in
- external of_string : string -> nativeint
- = "caml_nativeint_of_string"
- The native names of the primitives are not the same
- File "stdcompat__nativeint_s.mli", line 161, characters 0-69:
- Expected declaration
- File "nativeint.mli", lines 193-194, characters 0-65:
- Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__string.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__string.cmx -c -impl stdcompat__string.ml)
- File "stdcompat__string.ml", line 1:
- Error: The implementation "stdcompat__string.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__string.cmi":
- Values do not match:
- val index_from_opt : string @ local -> int -> char -> int option
- is not included in
- val index_from_opt : string -> int -> char -> int option
- The type "string @ local -> int -> char -> int option"
- is not compatible with the type "string -> int -> char -> int option"
- Type "int -> (char -> int option) @ local" is not compatible with type
- "int -> char -> int option"
- File "stdcompat__string_s.mli", line 186, characters 0-56:
- Expected declaration
- File "string.mli", line 317, characters 0-64: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__int32.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__int32.cmx -c -impl stdcompat__int32.ml)
- File "stdcompat__int32.ml", line 1:
- Error: The implementation "stdcompat__int32.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__int32.cmi":
- Values do not match:
- external of_string : string -> (int32 [@unboxed])
- = "caml_int32_of_string" "caml_int32_of_string_unboxed"
- is not included in
- external of_string : string -> int32 = "caml_int32_of_string"
- The native names of the primitives are not the same
- File "stdcompat__int32_s.mli", line 193, characters 0-61:
- Expected declaration
- File "int32.mli", lines 165-166, characters 0-57: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__printexc.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__printexc.cmx -c -impl stdcompat__printexc.ml)
- File "stdcompat__printexc.ml", line 128, characters 37-76:
- 128 | let set_uncaught_exception_handler = Printexc.set_uncaught_exception_handler
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Alert unsafe_multidomain: Stdlib.Printexc.set_uncaught_exception_handler
- Use [Printexc.Safe.set_uncaught_exception_handler].
-
- File "stdcompat__printexc.ml", line 204, characters 23-48:
- 204 | let register_printer = Printexc.register_printer
- ^^^^^^^^^^^^^^^^^^^^^^^^^
- Alert unsafe_multidomain: Stdlib.Printexc.register_printer
- Use [Printexc.Safe.register_printer].
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__nativeint.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__nativeint.cmx -c -impl stdcompat__nativeint.ml)
- File "stdcompat__nativeint.ml", line 1:
- Error: The implementation "stdcompat__nativeint.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__nativeint.cmi":
- Values do not match:
- external of_string : string -> (nativeint [@unboxed])
- = "caml_nativeint_of_string" "caml_nativeint_of_string_unboxed"
- is not included in
- external of_string : string -> nativeint
- = "caml_nativeint_of_string"
- The native names of the primitives are not the same
- File "stdcompat__nativeint_s.mli", line 161, characters 0-69:
- Expected declaration
- File "nativeint.mli", lines 193-194, characters 0-65:
- Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__sys.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__sys.cmo -c -impl stdcompat__sys.ml)
- File "stdcompat__sys.ml", line 1:
- Alert unsafe_multidomain: signal
- Use [Sys.Safe.signal].
- File "sys.mli", lines 285-287, characters 0-53:
- Definition
- File "stdcompat__sys_s.mli", lines 376-377, characters 0-75:
- Expected signature
-
- File "stdcompat__sys.ml", line 1:
- Alert unsafe_multidomain: set_signal
- Use [Sys.Safe.set_signal].
- File "sys.mli", lines 294-295, characters 0-57:
- Definition
- File "stdcompat__sys_s.mli", line 392, characters 0-47:
- Expected signature
-
- File "stdcompat__sys.ml", line 1:
- Error: The implementation "stdcompat__sys.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__sys.cmi":
- Values do not match:
- external opaque_identity :
- ('a : any). ('a [@local_opt]) -> ('a [@local_opt]) = "%opaque"
- [@@layout_poly]
- is not included in
- external opaque_identity : 'a -> 'a = "%opaque"
- The two primitives have different [@layout_poly] attributes
- File "stdcompat__sys_s.mli", line 210, characters 0-47:
- Expected declaration
- File "sys.mli", lines 481-482, characters 0-62: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__sys.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__sys.cmx -c -impl stdcompat__sys.ml)
- File "stdcompat__sys.ml", line 1:
- Alert unsafe_multidomain: signal
- Use [Sys.Safe.signal].
- File "sys.mli", lines 285-287, characters 0-53:
- Definition
- File "stdcompat__sys_s.mli", lines 376-377, characters 0-75:
- Expected signature
-
- File "stdcompat__sys.ml", line 1:
- Alert unsafe_multidomain: set_signal
- Use [Sys.Safe.set_signal].
- File "sys.mli", lines 294-295, characters 0-57:
- Definition
- File "stdcompat__sys_s.mli", line 392, characters 0-47:
- Expected signature
-
- File "stdcompat__sys.ml", line 1:
- Error: The implementation "stdcompat__sys.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__sys.cmi":
- Values do not match:
- external opaque_identity :
- ('a : any). ('a [@local_opt]) -> ('a [@local_opt]) = "%opaque"
- [@@layout_poly]
- is not included in
- external opaque_identity : 'a -> 'a = "%opaque"
- The two primitives have different [@layout_poly] attributes
- File "stdcompat__sys_s.mli", line 210, characters 0-47:
- Expected declaration
- File "sys.mli", lines 481-482, characters 0-62: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlc.opt -w -40 -nolabels -w -3 -g -bin-annot -bin-annot-occurrences -bin-annot-cms -I .stdcompat.objs/byte -cmi-file .stdcompat.objs/byte/stdcompat__pervasives.cmi -no-alias-deps -o .stdcompat.objs/byte/stdcompat__pervasives.cmo -c -impl stdcompat__pervasives.ml)
- File "stdcompat__pervasives.ml", line 1:
- Error: The implementation "stdcompat__pervasives.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__pervasives.cmi":
- Values do not match:
- external raise : exn -> 'a @ unique portable = "%reraise"
- is not included in
- external raise : exn -> 'a = "%raise"
- The names of the primitives are not the same
- File "stdcompat__pervasives_s.mli", line 384, characters 2-39:
- Expected declaration
- File "stdlib.mli", line 35, characters 0-79: Actual declaration
- (cd _build/default && /home/opam/.opam/default/bin/ocamlopt.opt -w -40 -nolabels -w -3 -g -I .stdcompat.objs/byte -I .stdcompat.objs/native -cmi-file .stdcompat.objs/byte/stdcompat__pervasives.cmi -no-alias-deps -o .stdcompat.objs/native/stdcompat__pervasives.cmx -c -impl stdcompat__pervasives.ml)
- File "stdcompat__pervasives.ml", line 1:
- Error: The implementation "stdcompat__pervasives.ml"
- does not match the interface ".stdcompat.objs/byte/stdcompat__pervasives.cmi":
- Values do not match:
- external raise : exn -> 'a @ unique portable = "%reraise"
- is not included in
- external raise : exn -> 'a = "%raise"
- The names of the primitives are not the same
- File "stdcompat__pervasives_s.mli", line 384, characters 2-39:
- Expected declaration
- File "stdlib.mli", line 35, characters 0-79: Actual declaration
[ERROR] The compilation of stdcompat.21.1 failed at "dune build -p stdcompat -j 39".
build failed...
=== STDERR ===
2026-10-07 21:27.55: FAILED: build stdcompat.21.1
2026-10-07 21:27.55: Job failed: build failed: stdcompat.21.1