memtrace doesn't build on 32-bit systems (tested on arm32 and x86):
#=== ERROR while compiling memtrace.0.1.2 =====================================#
# context 2.0.7 | linux/x86_32 | ocaml-base-compiler.4.11.1 | file:///home/opam/opam-repository
# path ~/.opam/4.11/.opam-switch/build/memtrace.0.1.2
# command ~/.opam/4.11/bin/dune build -p memtrace -j 47 @install
# exit-code 1
# env-file ~/.opam/log/memtrace-7-d6248f.env
# output-file ~/.opam/log/memtrace-7-d6248f.out
### output ###
# ocamlc src/.memtrace.objs/byte/memtrace__Buf.{cmo,cmt} (exit 2)
# (cd _build/default && /home/opam/.opam/4.11/bin/ocamlc.opt -w -40 -g -bin-annot -I src/.memtrace.objs/byte -I /home/opam/.opam/4.11/lib/ocaml/threads -intf-suffix .ml -no-alias-deps -open Memtrace__ -o src/.memtrace.objs/byte/memtrace__Buf.cmo -c -impl src/buf.ml)
# File "src/buf.ml", line 85, characters 23-33:
# 85 | else if v = v land 0xffffffff then
# ^^^^^^^^^^
# Error: Integer literal exceeds the range of representable integers of type int
# ocamlopt src/.memtrace.objs/native/memtrace__Buf.{cmx,o} (exit 2)
# (cd _build/default && /home/opam/.opam/4.11/bin/ocamlopt.opt -w -40 -g -I src/.memtrace.objs/byte -I src/.memtrace.objs/native -I /home/opam/.opam/4.11/lib/ocaml/threads -intf-suffix .ml -no-alias-deps -open Memtrace__ -o src/.memtrace.objs/native/memtrace__Buf.cmx -c -impl src/buf.ml)
# File "src/buf.ml", line 85, characters 23-33:
# 85 | else if v = v land 0xffffffff then
# ^^^^^^^^^^
# Error: Integer literal exceeds the range of representable integers of type int
I don't personally need this, but it does mean that any program using memtrace will fail CI when submitted to opam-repository, and will have to explicitly mark itself as incompatible with 32-bit systems.
memtrace doesn't build on 32-bit systems (tested on arm32 and x86):
I don't personally need this, but it does mean that any program using memtrace will fail CI when submitted to opam-repository, and will have to explicitly mark itself as incompatible with 32-bit systems.