(not at the head of any monitored branch or PR)
2022-07-26 15:15.36: New job: test phylogenetics.0.1.0 with ounit2.2.2.3, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/21354/head (10b49fadb0efcff442ed8cae85f7cc119fe28629)
                              on debian-11-ocaml-4.14/amd64

To reproduce locally:

git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/21354/head" && git reset --hard 10b49fad
git fetch origin master
git merge 42e749bdca1e36a9f7bbef60b3507d34c6c57fa3
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-11-ocaml-4.14@sha256:1461d919411f5999f6d7ffd573b9b5385cda91accf83d3866b26097e791220be
USER 1000:1000
WORKDIR /home/opam
RUN for pkg in $(opam pin list --short); do opam pin remove "$pkg"; done
RUN opam repository remove -a multicore || true
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMSOLVERTIMEOUT="500"
ENV OPAMPRECISETRACKING="1"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam pin add -k version -yn ounit2.2.2.3 2.2.3
RUN opam update --depexts
RUN opam remove ounit2.2.2.3 && opam install --deps-only ounit2.2.2.3 && opam install -v ounit2.2.2.3; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-11\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    done; \
    exit 1
RUN opam update --depexts
RUN opam remove phylogenetics.0.1.0 && opam install --deps-only phylogenetics.0.1.0 && opam install -v phylogenetics.0.1.0; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-11\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    done; \
    exit 1
RUN opam update --depexts
RUN opam remove phylogenetics.0.1.0 && opam install --deps-only --with-test phylogenetics.0.1.0 && opam install -v --with-test phylogenetics.0.1.0; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-11\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    done; \
    exit 1

END-OF-DOCKERFILE
docker build -f ../Dockerfile .

2022-07-26 15:15.36: Using cache hint "ocaml/opam:debian-11-ocaml-4.14@sha256:1461d919411f5999f6d7ffd573b9b5385cda91accf83d3866b26097e791220be-ounit2.2.2.3-phylogenetics.0.1.0-10b49fadb0efcff442ed8cae85f7cc119fe28629"
2022-07-26 15:15.36: Using OBuilder spec:
((from ocaml/opam:debian-11-ocaml-4.14@sha256:1461d919411f5999f6d7ffd573b9b5385cda91accf83d3866b26097e791220be)
 (user (uid 1000) (gid 1000))
 (workdir /home/opam)
 (run (shell "for pkg in $(opam pin list --short); do opam pin remove \"$pkg\"; done"))
 (run (shell "opam repository remove -a multicore || true"))
 (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
 (run (shell "opam init --reinit --config .opamrc-sandbox -ni"))
 (env OPAMDOWNLOADJOBS 1)
 (env OPAMERRLOGLEN 0)
 (env OPAMSOLVERTIMEOUT 500)
 (env OPAMPRECISETRACKING 1)
 (run (shell "rm -rf opam-repository/"))
 (copy (src .) (dst opam-repository/))
 (run (shell "opam repository set-url --strict default opam-repository/"))
 (run (shell "opam pin add -k version -yn ounit2.2.2.3 2.2.3"))
 (run (network host)
      (shell "opam update --depexts"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam remove ounit2.2.2.3 && opam install --deps-only ounit2.2.2.3 && opam install -v ounit2.2.2.3;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-11\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n        done;\
             \n        exit 1"))
 (run (network host)
      (shell "opam update --depexts"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam remove phylogenetics.0.1.0 && opam install --deps-only phylogenetics.0.1.0 && opam install -v phylogenetics.0.1.0;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-11\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n        done;\
             \n        exit 1"))
 (run (network host)
      (shell "opam update --depexts"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam remove phylogenetics.0.1.0 && opam install --deps-only --with-test phylogenetics.0.1.0 && opam install -v --with-test phylogenetics.0.1.0;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-11\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n        done;\
             \n        exit 1"))
)

2022-07-26 15:15.36: Waiting for resource in pool OCluster
2022-07-26 18:21.08: Waiting for worker...
2022-07-26 18:23.00: Got resource from pool OCluster
Building on marpe.ocamllabs.io
All commits already cached
Updating files:  18% (4828/26809)
Updating files:  19% (5094/26809)
Updating files:  20% (5362/26809)
Updating files:  21% (5630/26809)
Updating files:  22% (5898/26809)
Updating files:  23% (6167/26809)
Updating files:  24% (6435/26809)
Updating files:  25% (6703/26809)
Updating files:  26% (6971/26809)
Updating files:  27% (7239/26809)
Updating files:  28% (7507/26809)
Updating files:  29% (7775/26809)
Updating files:  30% (8043/26809)
Updating files:  31% (8311/26809)
Updating files:  32% (8579/26809)
Updating files:  33% (8847/26809)
Updating files:  34% (9116/26809)
Updating files:  35% (9384/26809)
Updating files:  35% (9560/26809)
Updating files:  36% (9652/26809)
Updating files:  37% (9920/26809)
Updating files:  38% (10188/26809)
Updating files:  39% (10456/26809)
Updating files:  40% (10724/26809)
Updating files:  41% (10992/26809)
Updating files:  42% (11260/26809)
Updating files:  43% (11528/26809)
Updating files:  44% (11796/26809)
Updating files:  45% (12065/26809)
Updating files:  46% (12333/26809)
Updating files:  47% (12601/26809)
Updating files:  48% (12869/26809)
Updating files:  49% (13137/26809)
Updating files:  50% (13405/26809)
Updating files:  50% (13621/26809)
Updating files:  51% (13673/26809)
Updating files:  52% (13941/26809)
Updating files:  53% (14209/26809)
Updating files:  54% (14477/26809)
Updating files:  55% (14745/26809)
Updating files:  56% (15014/26809)
Updating files:  57% (15282/26809)
Updating files:  58% (15550/26809)
Updating files:  59% (15818/26809)
Updating files:  60% (16086/26809)
Updating files:  61% (16354/26809)
Updating files:  62% (16622/26809)
Updating files:  63% (16890/26809)
Updating files:  64% (17158/26809)
Updating files:  65% (17426/26809)
Updating files:  66% (17694/26809)
Updating files:  67% (17963/26809)
Updating files:  68% (18231/26809)
Updating files:  69% (18499/26809)
Updating files:  70% (18767/26809)
Updating files:  71% (19035/26809)
Updating files:  72% (19303/26809)
Updating files:  73% (19571/26809)
Updating files:  74% (19839/26809)
Updating files:  75% (20107/26809)
Updating files:  76% (20375/26809)
Updating files:  77% (20643/26809)
Updating files:  78% (20912/26809)
Updating files:  78% (20986/26809)
Updating files:  79% (21180/26809)
Updating files:  80% (21448/26809)
Updating files:  81% (21716/26809)
Updating files:  82% (21984/26809)
Updating files:  83% (22252/26809)
Updating files:  84% (22520/26809)
Updating files:  85% (22788/26809)
Updating files:  86% (23056/26809)
Updating files:  87% (23324/26809)
Updating files:  88% (23592/26809)
Updating files:  89% (23861/26809)
Updating files:  90% (24129/26809)
Updating files:  91% (24397/26809)
Updating files:  92% (24665/26809)
Updating files:  93% (24933/26809)
Updating files:  94% (25201/26809)
Updating files:  95% (25469/26809)
Updating files:  96% (25737/26809)
Updating files:  97% (26005/26809)
Updating files:  98% (26273/26809)
Updating files:  99% (26541/26809)
Updating files: 100% (26809/26809)
Updating files: 100% (26809/26809), done.
HEAD is now at 42e749bdca Merge pull request #21885 from kit-ty-kate/fix-123
Merge made by the 'ort' strategy.
 packages/ounit2/ounit2.2.2.0/opam | 3 +++
 packages/ounit2/ounit2.2.2.1/opam | 3 +++
 packages/ounit2/ounit2.2.2.2/opam | 3 +++
 packages/ounit2/ounit2.2.2.3/opam | 3 +++
 packages/ounit2/ounit2.2.2.4/opam | 3 +++
 packages/ounit2/ounit2.2.2.5/opam | 3 +++
 packages/ounit2/ounit2.2.2.6/opam | 3 +++
 7 files changed, 21 insertions(+)

(from ocaml/opam:debian-11-ocaml-4.14@sha256:1461d919411f5999f6d7ffd573b9b5385cda91accf83d3866b26097e791220be)
2022-07-26 18:40.11 ---> using "d837bbe1b6e58c32e942b55a1eb695ef30d2cac63c8a5d708beb3548d17192b4" from cache

/: (user (uid 1000) (gid 1000))

/: (workdir /home/opam)

/home/opam: (run (shell "for pkg in $(opam pin list --short); do opam pin remove \"$pkg\"; done"))
Ok, ocaml-base-compiler is no longer pinned to https://github.com/ocaml/ocaml/archive/4.14.0.tar.gz (version 4.14.0)
No package build needed.
Nothing to do.
# Run eval $(opam env) to update the current shell environment
2022-07-26 18:40.11 ---> using "543d29c04ee698e03faf7cfdc4bb3cf9e04a80ab924d981f1055393f1479d117" from cache

/home/opam: (run (shell "opam repository remove -a multicore || true"))
[WARNING] No configured repositories by these names found: multicore
2022-07-26 18:40.11 ---> using "e8a5c58b05459f7be98d7b03e29623d3a05b15b34833b50ebffb60eff7871cde" from cache

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2022-07-26 18:40.11 ---> using "4687a20afa7557b4b2498b537430ed75c7b51cd6cad60d9c4757ff852befb1a7" from cache

/home/opam: (run (shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
  - you won't be able to use mercurial repositories unless you install the hg command on your system.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.

This development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.1, which can't be reverted.
You may want to back it up before going further.

Continue? [y/n] y
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from file:///home/opam/opam-repository
2022-07-26 18:40.11 ---> using "87c4051d859f505ce794fbdc2ed87105744babed536dd4b09731a9b1e22fd3d4" from cache

/home/opam: (env OPAMDOWNLOADJOBS 1)

/home/opam: (env OPAMERRLOGLEN 0)

/home/opam: (env OPAMSOLVERTIMEOUT 500)

/home/opam: (env OPAMPRECISETRACKING 1)

/home/opam: (run (shell "rm -rf opam-repository/"))
2022-07-26 18:40.11 ---> using "96a067e6b08152c0f77ff1628817c13e12ac3db1ba1ac882a90278edcbb3d011" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2022-07-26 18:40.15 ---> using "5ce106567f73501cd746c3358ba50b49e5b3ad28d47e7894c1f65b44fcda87e7" from cache

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2022-07-26 18:40.15 ---> using "0981e55d831537155c9e161d0ab37d0aeee18cf4c3d1dbad8143304b4c508a5d" from cache

/home/opam: (run (shell "opam pin add -k version -yn ounit2.2.2.3 2.2.3"))
ounit2 is now pinned to version 2.2.3
2022-07-26 18:40.15 ---> using "ed5f9fb23a39bb49343854111f36c245816c6d2cbe7a426ebb183a1937701db4" from cache

/home/opam: (run (network host)
                 (shell "opam update --depexts"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian bullseye InRelease
- Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [48.4 kB]
- Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
- Get:4 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [167 kB]
- Fetched 259 kB in 0s (651 kB/s)
- Reading package lists...
- 
2022-07-26 18:40.15 ---> using "85839b01fc3c0b108a5616a04cafcfe5d8a4e79fe28a87ad1ea0c0e1d0b39c85" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam remove ounit2.2.2.3 && opam install --deps-only ounit2.2.2.3 && opam install -v ounit2.2.2.3;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-11\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n        done;\
                        \n        exit 1"))
[NOTE] ounit2.2.2.3 is not installed.

Nothing to do.
The following actions will be performed:
=== install 4 packages
  - install base-bytes   base  [required by ounit2]
  - install dune         3.4.1 [required by ounit2]
  - install ocamlfind    1.9.5 [required by base-bytes]
  - install stdlib-shims 0.3.0 [required by ounit2]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.4.1  (cached)
-> retrieved ocamlfind.1.9.5  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> installed ocamlfind.1.9.5
-> installed base-bytes.base
-> installed dune.3.4.1
-> installed stdlib-shims.0.3.0
Done.
# Run eval $(opam env) to update the current shell environment
The following actions will be performed:
=== install 1 package
  - install ounit2 2.2.3 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  1/3:
-> retrieved ounit2.2.2.3  (cached)
Processing  2/3: [ounit2: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ounit2" "-j" "31" (CWD=/home/opam/.opam/4.14/.opam-switch/build/ounit2.2.2.3)
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte -I /home/opam/.opam/4.14/lib/stdlib-shims -no-alias-deps -o src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte/oUnitAssert.cmo -c -impl src/lib/ounit2/advanced/oUnitAssert.ml)
- File "src/lib/ounit2/advanced/oUnitAssert.ml", line 130, characters 13-27:
- 130 |     ?(sinput=Stream.of_list [])
-                    ^^^^^^^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- File "src/lib/ounit2/advanced/oUnitAssert.ml", line 270, characters 13-24:
- 270 |              Stream.iter
-                    ^^^^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- File "src/lib/ounit2/advanced/oUnitAssert.ml", line 315, characters 26-43:
- 315 |                  foutput (Stream.of_channel chn)
-                                 ^^^^^^^^^^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I src/lib/ounit2/.oUnit.objs/byte -I /home/opam/.opam/4.14/lib/stdlib-shims -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte -no-alias-deps -o src/lib/ounit2/.oUnit.objs/byte/oUnit2.cmi -c -intf src/lib/ounit2/oUnit2.mli)
- File "src/lib/ounit2/oUnit2.mli", line 88, characters 17-25:
- 88 |     ?sinput:char Stream.t ->
-                       ^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- File "src/lib/ounit2/oUnit2.mli", line 89, characters 19-27:
- 89 |     ?foutput:(char Stream.t -> unit) ->
-                         ^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w -40 -g -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/native -I /home/opam/.opam/4.14/lib/stdlib-shims -intf-suffix .ml -no-alias-deps -o src/lib/ounit2/advanced/.oUnitAdvanced.objs/native/oUnitAssert.cmx -c -impl src/lib/ounit2/advanced/oUnitAssert.ml)
- File "src/lib/ounit2/advanced/oUnitAssert.ml", line 130, characters 13-27:
- 130 |     ?(sinput=Stream.of_list [])
-                    ^^^^^^^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- File "src/lib/ounit2/advanced/oUnitAssert.ml", line 270, characters 13-24:
- 270 |              Stream.iter
-                    ^^^^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- File "src/lib/ounit2/advanced/oUnitAssert.ml", line 315, characters 26-43:
- 315 |                  foutput (Stream.of_channel chn)
-                                 ^^^^^^^^^^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I src/lib/ounit2/.oUnit.objs/byte -I /home/opam/.opam/4.14/lib/stdlib-shims -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte -no-alias-deps -o src/lib/ounit2/.oUnit.objs/byte/oUnit.cmi -c -intf src/lib/ounit2/oUnit.mli)
- File "src/lib/ounit2/oUnit.mli", line 80, characters 17-25:
- 80 |     ?sinput:char Stream.t ->
-                       ^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- File "src/lib/ounit2/oUnit.mli", line 81, characters 19-27:
- 81 |     ?foutput:(char Stream.t -> unit) ->
-                         ^^^^^^^^
- Alert deprecated: module Stdlib.Stream
- Use the camlp-streams library instead.
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlc.opt -w -40 -g -bin-annot -I src/lib/ounit2/threads/.oUnitThreads.objs/byte -I src/lib/ounit2/threads/.oUnitThreads.objs/public_cmi -I /home/opam/.opam/4.14/lib/ocaml/threads -I /home/opam/.opam/4.14/lib/stdlib-shims -I src/lib/ounit2/.oUnit.objs/byte -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte -no-alias-deps -open OUnitThreads__ -o src/lib/ounit2/threads/.oUnitThreads.objs/byte/oUnitThreads__OUnitRunnerThreads.cmo -c -impl src/lib/ounit2/threads/oUnitRunnerThreads.ml)
- File "src/lib/ounit2/threads/oUnitRunnerThreads.ml", line 147, characters 8-19:
- 147 |         Thread.kill thread;
-               ^^^^^^^^^^^
- Alert deprecated: Thread.kill
- Not implemented, do not use
- (cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w -40 -g -I src/lib/ounit2/threads/.oUnitThreads.objs/byte -I src/lib/ounit2/threads/.oUnitThreads.objs/native -I src/lib/ounit2/threads/.oUnitThreads.objs/public_cmi -I /home/opam/.opam/4.14/lib/ocaml/threads -I /home/opam/.opam/4.14/lib/stdlib-shims -I src/lib/ounit2/.oUnit.objs/byte -I src/lib/ounit2/.oUnit.objs/native -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/byte -I src/lib/ounit2/advanced/.oUnitAdvanced.objs/native -intf-suffix .ml -no-alias-deps -open OUnitThreads__ -o src/lib/ounit2/threads/.oUnitThreads.objs/native/oUnitThreads__OUnitRunnerThreads.cmx -c -impl src/lib/ounit2/threads/oUnitRunnerThreads.ml)
- File "src/lib/ounit2/threads/oUnitRunnerThreads.ml", line 147, characters 8-19:
- 147 |         Thread.kill thread;
-               ^^^^^^^^^^^
- Alert deprecated: Thread.kill
- Not implemented, do not use
-> compiled  ounit2.2.2.3
-> installed ounit2.2.2.3
Done.
# Run eval $(opam env) to update the current shell environment
2022-07-26 18:40.15 ---> using "7fa13475ef18dcdbce745b9a2b71b39495e9626c04b39c1a999600e7ba260ee5" from cache

/home/opam: (run (network host)
                 (shell "opam update --depexts"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian bullseye InRelease
- Hit:2 http://deb.debian.org/debian-security bullseye-security InRelease
- Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
- Reading package lists...
2022-07-26 18:40.15 ---> using "5058b1541b0b26c0e1f226ed3fff0e5f78c6acec136b90ed8d2f9ba3d24a31ca" from cache

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam remove phylogenetics.0.1.0 && opam install --deps-only phylogenetics.0.1.0 && opam install -v phylogenetics.0.1.0;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-11\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n        done;\
                        \n        exit 1"))
Nothing to do.
[NOTE] phylogenetics.0.1.0 is not installed.

The following actions will be performed:
=== install 85 packages
  - install angstrom            0.15.0   [required by angstrom-unix]
  - install angstrom-unix       0.15.0   [required by phylogenetics]
  - install base                v0.14.3  [required by core_kernel]
  - install base64              3.5.0    [required by biocaml]
  - install base_bigstring      v0.14.0  [required by core_kernel]
  - install base_quickcheck     v0.14.1  [required by core_kernel]
  - install bigstringaf         0.9.0    [required by angstrom]
  - install bin_prot            v0.14.1  [required by core_kernel]
  - install biocaml             0.11.1   [required by phylogenetics]
  - install camlzip             1.11     [required by biocaml]
  - install cfstream            1.3.1    [required by biocaml]
  - install conf-blas           1        [required by lacaml]
  - install conf-gsl            2        [required by gsl]
  - install conf-lapack         1        [required by lacaml]
  - install conf-m4             1        [required by cfstream]
  - install conf-pkg-config     2        [required by gsl]
  - install conf-zlib           1        [required by camlzip]
  - install core                v0.14.1  [required by phylogenetics]
  - install core_kernel         v0.14.2  [required by biocaml]
  - install cppo                1.6.9    [required by ppx_deriving]
  - install csexp               1.5.1    [required by dune-configurator]
  - install dune-configurator   3.4.1    [required by gsl, lacaml]
  - install fieldslib           v0.14.0  [required by core_kernel]
  - install gsl                 1.24.3   [required by phylogenetics]
  - install jane-street-headers v0.14.0  [required by core_kernel]
  - install jst-config          v0.14.1  [required by core]
  - install lacaml              11.0.8   [required by phylogenetics]
  - install menhir              20220210 [required by phylogenetics]
  - install menhirLib           20220210 [required by menhir]
  - install menhirSdk           20220210 [required by menhir]
  - install num                 1.4      [required by sexplib]
  - install ocaml-compiler-libs v0.12.4  [required by ppxlib]
  - install ocaml-syntax-shims  1.0.0    [required by angstrom]
  - install ocamlbuild          0.14.1   [required by rresult, xmlm]
  - install octavius            1.2.2    [required by ppx_js_style]
  - install parsexp             v0.14.2  [required by sexplib]
  - install ppx_assert          v0.14.0  [required by core_kernel]
  - install ppx_base            v0.14.0  [required by core_kernel]
  - install ppx_bench           v0.14.1  [required by ppx_jane]
  - install ppx_bin_prot        v0.14.0  [required by ppx_jane]
  - install ppx_cold            v0.14.0  [required by ppx_base]
  - install ppx_compare         v0.14.0  [required by biocaml]
  - install ppx_custom_printf   v0.14.1  [required by ppx_jane]
  - install ppx_derivers        1.2.1    [required by ppx_deriving]
  - install ppx_deriving        5.2.1    [required by phylogenetics]
  - install ppx_enumerate       v0.14.0  [required by ppx_base]
  - install ppx_expect          v0.14.2  [required by ppx_jane]
  - install ppx_fields_conv     v0.14.2  [required by ppx_jane]
  - install ppx_fixed_literal   v0.14.0  [required by ppx_jane]
  - install ppx_hash            v0.14.0  [required by core_kernel]
  - install ppx_here            v0.14.0  [required by ppx_jane]
  - install ppx_inline_test     v0.14.1  [required by core_kernel]
  - install ppx_jane            v0.14.0  [required by core]
  - install ppx_js_style        v0.14.1  [required by ppx_base]
  - install ppx_let             v0.14.0  [required by ppx_jane]
  - install ppx_module_timer    v0.14.0  [required by ppx_jane]
  - install ppx_optcomp         v0.14.3  [required by core_kernel]
  - install ppx_optional        v0.14.0  [required by ppx_jane]
  - install ppx_pipebang        v0.14.0  [required by ppx_jane]
  - install ppx_sexp_conv       v0.14.3  [required by biocaml]
  - install ppx_sexp_message    v0.14.1  [required by core_kernel]
  - install ppx_sexp_value      v0.14.0  [required by ppx_jane]
  - install ppx_stable          v0.14.1  [required by ppx_jane]
  - install ppx_string          v0.14.1  [required by ppx_jane]
  - install ppx_typerep_conv    v0.14.2  [required by ppx_jane]
  - install ppx_variants_conv   v0.14.2  [required by ppx_jane]
  - install ppxlib              0.25.1   [required by ppx_deriving]
  - install printbox            0.5      [required by phylogenetics]
  - install re                  1.10.4   [required by biocaml]
  - install result              1.5      [required by ppx_deriving]
  - install rresult             0.7.0    [required by biocaml]
  - install seq                 base     [required by re]
  - install sexplib             v0.14.0  [required by biocaml]
  - install sexplib0            v0.14.0  [required by base, sexplib]
  - install spawn               v0.15.1  [required by core]
  - install splittable_random   v0.14.0  [required by core_kernel]
  - install stdio               v0.14.0  [required by core_kernel]
  - install stringext           1.6.0    [required by uri]
  - install time_now            v0.14.0  [required by core_kernel]
  - install timezone            v0.14.0  [required by core]
  - install topkg               1.0.5    [required by rresult, xmlm]
  - install typerep             v0.14.0  [required by core_kernel]
  - install uri                 4.2.0    [required by biocaml]
  - install variantslib         v0.14.0  [required by core_kernel]
  - install xmlm                1.4.0    [required by biocaml]

The following system packages will first need to be installed:
    libblas-dev libgsl-dev liblapack-dev m4 pkg-config zlib1g-dev

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
  2. Display the recommended apt-get command and wait while you run it manually (e.g. in another terminal)
  3. Attempt installation anyway, and permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 1
+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "libblas-dev" "libgsl-dev" "liblapack-dev" "m4" "pkg-config" "zlib1g-dev"
- debconf: delaying package configuration, since apt-utils is not installed
- Selecting previously unselected package libblas3:amd64.
- (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 18331 files and directories currently installed.)
- Preparing to unpack .../00-libblas3_3.9.0-3_amd64.deb ...
- Unpacking libblas3:amd64 (3.9.0-3) ...
- Selecting previously unselected package libblas-dev:amd64.
- Preparing to unpack .../01-libblas-dev_3.9.0-3_amd64.deb ...
- Unpacking libblas-dev:amd64 (3.9.0-3) ...
- Selecting previously unselected package libgfortran5:amd64.
- Preparing to unpack .../02-libgfortran5_10.2.1-6_amd64.deb ...
- Unpacking libgfortran5:amd64 (10.2.1-6) ...
- Selecting previously unselected package libglib2.0-0:amd64.
- Preparing to unpack .../03-libglib2.0-0_2.66.8-1_amd64.deb ...
- Unpacking libglib2.0-0:amd64 (2.66.8-1) ...
- Selecting previously unselected package libglib2.0-data.
- Preparing to unpack .../04-libglib2.0-data_2.66.8-1_all.deb ...
- Unpacking libglib2.0-data (2.66.8-1) ...
- Selecting previously unselected package libgslcblas0:amd64.
- Preparing to unpack .../05-libgslcblas0_2.6+dfsg-2_amd64.deb ...
- Unpacking libgslcblas0:amd64 (2.6+dfsg-2) ...
- Selecting previously unselected package libgsl25:amd64.
- Preparing to unpack .../06-libgsl25_2.6+dfsg-2_amd64.deb ...
- Unpacking libgsl25:amd64 (2.6+dfsg-2) ...
- Selecting previously unselected package libgsl-dev.
- Preparing to unpack .../07-libgsl-dev_2.6+dfsg-2_amd64.deb ...
- Unpacking libgsl-dev (2.6+dfsg-2) ...
- Selecting previously unselected package libicu67:amd64.
- Preparing to unpack .../08-libicu67_67.1-7_amd64.deb ...
- Unpacking libicu67:amd64 (67.1-7) ...
- Selecting previously unselected package liblapack3:amd64.
- Preparing to unpack .../09-liblapack3_3.9.0-3_amd64.deb ...
- Unpacking liblapack3:amd64 (3.9.0-3) ...
- Selecting previously unselected package liblapack-dev:amd64.
- Preparing to unpack .../10-liblapack-dev_3.9.0-3_amd64.deb ...
- Unpacking liblapack-dev:amd64 (3.9.0-3) ...
- Selecting previously unselected package libsigsegv2:amd64.
- Preparing to unpack .../11-libsigsegv2_2.13-1_amd64.deb ...
- Unpacking libsigsegv2:amd64 (2.13-1) ...
- Selecting previously unselected package libxml2:amd64.
- Preparing to unpack .../12-libxml2_2.9.10+dfsg-6.7+deb11u2_amd64.deb ...
- Unpacking libxml2:amd64 (2.9.10+dfsg-6.7+deb11u2) ...
- Selecting previously unselected package m4.
- Preparing to unpack .../13-m4_1.4.18-5_amd64.deb ...
- Unpacking m4 (1.4.18-5) ...
- Selecting previously unselected package pkg-config.
- Preparing to unpack .../14-pkg-config_0.29.2-1_amd64.deb ...
- Unpacking pkg-config (0.29.2-1) ...
- Selecting previously unselected package shared-mime-info.
- Preparing to unpack .../15-shared-mime-info_2.0-1_amd64.deb ...
- Unpacking shared-mime-info (2.0-1) ...
- Selecting previously unselected package xdg-user-dirs.
- Preparing to unpack .../16-xdg-user-dirs_0.17-2_amd64.deb ...
- Unpacking xdg-user-dirs (0.17-2) ...
- Selecting previously unselected package zlib1g-dev:amd64.
- Preparing to unpack .../17-zlib1g-dev_1%3a1.2.11.dfsg-2+deb11u1_amd64.deb ...
- Unpacking zlib1g-dev:amd64 (1:1.2.11.dfsg-2+deb11u1) ...
- Setting up libicu67:amd64 (67.1-7) ...
- Setting up libgslcblas0:amd64 (2.6+dfsg-2) ...
- Setting up xdg-user-dirs (0.17-2) ...
- Setting up libgsl25:amd64 (2.6+dfsg-2) ...
- Setting up libglib2.0-0:amd64 (2.66.8-1) ...
- No schema files found: doing nothing.
- Setting up libblas3:amd64 (3.9.0-3) ...
- update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in auto mode
- Setting up libglib2.0-data (2.66.8-1) ...
- Setting up libsigsegv2:amd64 (2.13-1) ...
- Setting up pkg-config (0.29.2-1) ...
- Setting up libgfortran5:amd64 (10.2.1-6) ...
- Setting up zlib1g-dev:amd64 (1:1.2.11.dfsg-2+deb11u1) ...
- Setting up libxml2:amd64 (2.9.10+dfsg-6.7+deb11u2) ...
- Setting up libblas-dev:amd64 (3.9.0-3) ...
- update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so to provide /usr/lib/x86_64-linux-gnu/libblas.so (libblas.so-x86_64-linux-gnu) in auto mode
- Setting up liblapack3:amd64 (3.9.0-3) ...
- update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in auto mode
- Setting up libgsl-dev (2.6+dfsg-2) ...
- Setting up m4 (1.4.18-5) ...
- Setting up shared-mime-info (2.0-1) ...
- Setting up liblapack-dev:amd64 (3.9.0-3) ...
- update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so to provide /usr/lib/x86_64-linux-gnu/liblapack.so (liblapack.so-x86_64-linux-gnu) in auto mode
- Processing triggers for libc-bin (2.31-13+deb11u3) ...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.15.0, angstrom-unix.0.15.0  (cached)
-> retrieved base.v0.14.3  (cached)
-> retrieved base64.3.5.0  (cached)
-> retrieved base_bigstring.v0.14.0  (cached)
-> retrieved base_quickcheck.v0.14.1  (cached)
-> retrieved bigstringaf.0.9.0  (cached)
-> retrieved bin_prot.v0.14.1  (cached)
-> retrieved biocaml.0.11.1  (cached)
-> retrieved camlzip.1.11  (cached)
-> retrieved cfstream.1.3.1  (cached)
-> retrieved core.v0.14.1  (cached)
-> installed conf-m4.1
-> retrieved core_kernel.v0.14.2  (cached)
-> retrieved cppo.1.6.9  (cached)
-> retrieved csexp.1.5.1  (cached)
-> retrieved dune-configurator.3.4.1  (cached)
-> installed conf-pkg-config.2
-> installed base64.3.5.0
-> installed conf-blas.1
-> installed conf-lapack.1
-> installed csexp.1.5.1
-> installed cppo.1.6.9
-> retrieved fieldslib.v0.14.0  (cached)
-> installed bigstringaf.0.9.0
-> installed conf-gsl.2
-> installed conf-zlib.1
-> retrieved gsl.1.24.3  (cached)
-> retrieved jane-street-headers.v0.14.0  (cached)
-> retrieved jst-config.v0.14.1  (cached)
-> retrieved lacaml.11.0.8  (cached)
-> retrieved menhir.20220210, menhirLib.20220210, menhirSdk.20220210  (cached)
-> installed jane-street-headers.v0.14.0
-> retrieved num.1.4  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.14.1  (cached)
-> retrieved octavius.1.2.2  (cached)
-> retrieved parsexp.v0.14.2  (cached)
-> retrieved ppx_assert.v0.14.0  (cached)
-> retrieved ppx_base.v0.14.0  (cached)
-> retrieved ppx_bench.v0.14.1  (cached)
-> retrieved ppx_bin_prot.v0.14.0  (cached)
-> retrieved ppx_cold.v0.14.0  (cached)
-> installed camlzip.1.11
-> retrieved ppx_compare.v0.14.0  (cached)
-> retrieved ppx_custom_printf.v0.14.1  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> installed menhirSdk.20220210
-> retrieved ppx_deriving.5.2.1  (cached)
-> retrieved ppx_enumerate.v0.14.0  (cached)
-> retrieved ppx_expect.v0.14.2  (cached)
-> retrieved ppx_fields_conv.v0.14.2  (cached)
-> retrieved ppx_fixed_literal.v0.14.0  (cached)
-> retrieved ppx_hash.v0.14.0  (cached)
-> retrieved ppx_here.v0.14.0  (cached)
-> retrieved ppx_inline_test.v0.14.1  (cached)
-> retrieved ppx_jane.v0.14.0  (cached)
-> retrieved ppx_js_style.v0.14.1  (cached)
-> retrieved ppx_let.v0.14.0  (cached)
-> retrieved ppx_module_timer.v0.14.0  (cached)
-> retrieved ppx_optcomp.v0.14.3  (cached)
-> retrieved ppx_optional.v0.14.0  (cached)
-> retrieved ppx_pipebang.v0.14.0  (cached)
-> retrieved ppx_sexp_conv.v0.14.3  (cached)
-> retrieved ppx_sexp_message.v0.14.1  (cached)
-> retrieved ppx_sexp_value.v0.14.0  (cached)
-> installed menhirLib.20220210
-> installed ppx_derivers.1.2.1
-> retrieved ppx_stable.v0.14.1  (cached)
-> installed dune-configurator.3.4.1
-> retrieved ppx_string.v0.14.1  (cached)
-> retrieved ppx_typerep_conv.v0.14.2  (cached)
-> retrieved ppx_variants_conv.v0.14.2  (cached)
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-compiler-libs.v0.12.4
-> retrieved ppxlib.0.25.1  (cached)
-> retrieved printbox.0.5  (cached)
-> retrieved re.1.10.4  (cached)
-> retrieved result.1.5  (cached)
-> retrieved rresult.0.7.0  (cached)
-> retrieved sexplib.v0.14.0  (cached)
-> retrieved sexplib0.v0.14.0  (cached)
-> retrieved spawn.v0.15.1  (cached)
-> retrieved splittable_random.v0.14.0  (cached)
-> retrieved stdio.v0.14.0  (cached)
-> retrieved stringext.1.6.0  (cached)
-> retrieved time_now.v0.14.0  (cached)
-> retrieved timezone.v0.14.0  (cached)
-> retrieved topkg.1.0.5  (cached)
-> retrieved typerep.v0.14.0  (cached)
-> retrieved uri.4.2.0  (cached)
-> retrieved variantslib.v0.14.0  (cached)
-> retrieved xmlm.1.4.0  (cached)
-> installed num.1.4
-> installed octavius.1.2.2
-> installed printbox.0.5
-> installed seq.base
-> installed stringext.1.6.0
-> installed result.1.5
-> installed sexplib0.v0.14.0
-> installed spawn.v0.15.1
-> installed angstrom.0.15.0
-> installed re.1.10.4
-> installed angstrom-unix.0.15.0
-> installed uri.4.2.0
-> installed ocamlbuild.0.14.1
-> installed lacaml.11.0.8
-> installed topkg.1.0.5
-> installed base.v0.14.3
-> installed rresult.0.7.0
-> installed fieldslib.v0.14.0
-> installed variantslib.v0.14.0
-> installed stdio.v0.14.0
-> installed xmlm.1.4.0
-> installed typerep.v0.14.0
-> installed parsexp.v0.14.2
-> installed ppxlib.0.25.1
-> installed menhir.20220210
-> installed sexplib.v0.14.0
-> installed ppx_optcomp.v0.14.3
-> installed ppx_cold.v0.14.0
-> installed ppx_stable.v0.14.1
-> installed ppx_variants_conv.v0.14.2
-> installed ppx_fields_conv.v0.14.2
-> installed ppx_here.v0.14.0
-> installed ppx_enumerate.v0.14.0
-> installed ppx_typerep_conv.v0.14.2
-> installed ppx_compare.v0.14.0
-> installed ppx_let.v0.14.0
[ERROR] The compilation of gsl.1.24.3 failed at "dune build -p gsl -j 1".
-> installed ppx_fixed_literal.v0.14.0
-> installed ppx_js_style.v0.14.1
-> installed ppx_optional.v0.14.0
-> installed ppx_deriving.5.2.1
-> installed ppx_sexp_conv.v0.14.3
-> installed ppx_pipebang.v0.14.0
-> installed ppx_hash.v0.14.0
-> installed ppx_sexp_message.v0.14.1
-> installed ppx_assert.v0.14.0
-> installed ppx_sexp_value.v0.14.0
-> installed ppx_custom_printf.v0.14.1
-> installed ppx_base.v0.14.0
-> installed jst-config.v0.14.1
-> installed bin_prot.v0.14.1
-> installed ppx_string.v0.14.1
-> installed time_now.v0.14.0
-> installed ppx_bin_prot.v0.14.0
-> installed ppx_module_timer.v0.14.0
-> installed ppx_inline_test.v0.14.1
-> installed ppx_bench.v0.14.1
-> installed ppx_expect.v0.14.2
-> installed splittable_random.v0.14.0
-> installed base_quickcheck.v0.14.1
-> installed ppx_jane.v0.14.0
-> installed base_bigstring.v0.14.0
-> installed core_kernel.v0.14.2
-> installed cfstream.1.3.1
-> installed timezone.v0.14.0
-> installed core.v0.14.1
-> installed biocaml.0.11.1

#=== ERROR while compiling gsl.1.24.3 =========================================#
# context              2.2.0~alpha~dev | linux/x86_64 | ocaml-base-compiler.4.14.0 | file:///home/opam/opam-repository
# path                 ~/.opam/4.14/.opam-switch/build/gsl.1.24.3
# command              ~/.opam/opam-init/hooks/sandbox.sh build dune build -p gsl -j 1
# exit-code            1
# env-file             ~/.opam/log/gsl-8-0bac8b.env
# output-file          ~/.opam/log/gsl-8-0bac8b.out
### output ###
# File "src/dune", line 78, characters 0-101:
# 78 | (rule
# 79 |   (targets sf.mli sf.ml)
# 80 |   (deps config/do_sf.exe sf.mli.q)
# 81 |   (action (run config/do_sf.exe))
# 82 | )
# (cd _build/default/src && config/do_sf.exe)
# Fatal error: exception Sys_error("gsl_include.sexp: No such file or directory")
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_blas.o -c mlgsl_blas.c)
# In file included from mlgsl_vector.h:9,
#                  from mlgsl_vector_double.h:9,
#                  from mlgsl_blas.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_blas.c:8:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_blas.c:9:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_blas.c: In function 'ml_gsl_blas_ddot':
# mlgsl_blas.c:22:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    22 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_blas.c: In function 'ml_gsl_blas_dnrm2':
# mlgsl_blas.c:29:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    29 |   return copy_double(gsl_blas_dnrm2(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_blas.c: In function 'ml_gsl_blas_dasum':
# mlgsl_blas.c:36:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    36 |   return copy_double(gsl_blas_dasum(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_blas_complex.o -c mlgsl_blas_complex.c)
# In file included from mlgsl_complex.h:7,
#                  from mlgsl_blas_complex.c:7:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_complex.h:11,
#                  from mlgsl_blas_complex.c:8:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray_complex':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_complex.h:13,
#                  from mlgsl_blas_complex.c:9:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_complex':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_blas_complex.c: In function 'ml_gsl_blas_znrm2':
# mlgsl_blas_complex.c:38:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    38 |   return copy_double(gsl_blas_dznrm2(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_blas_complex.c: In function 'ml_gsl_blas_zasum':
# mlgsl_blas_complex.c:45:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    45 |   return copy_double(gsl_blas_dzasum(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_blas_complex_float.o -c mlgsl_blas_complex_float.c)
# In file included from mlgsl_complex.h:7,
#                  from mlgsl_blas_complex_float.c:9:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_complex_float.h:11,
#                  from mlgsl_blas_complex_float.c:10:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray_complex_float':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_complex_float.h:13,
#                  from mlgsl_blas_complex_float.c:11:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_complex_float':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_blas_complex_float.c: In function 'ml_gsl_blas_scnrm2':
# mlgsl_blas_complex_float.c:40:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    40 |   return copy_double(gsl_blas_scnrm2(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_blas_complex_float.c: In function 'ml_gsl_blas_scasum':
# mlgsl_blas_complex_float.c:47:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    47 |   return copy_double(gsl_blas_scasum(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_blas_float.o -c mlgsl_blas_float.c)
# In file included from mlgsl_vector_float.h:1,
#                  from mlgsl_blas_float.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_float.h:10,
#                  from mlgsl_blas_float.c:8:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray_float':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_float.h:13,
#                  from mlgsl_blas_float.c:9:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_float':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_blas_float.c: In function 'ml_gsl_blas_sdsdot':
# mlgsl_blas_float.c:22:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    22 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_blas_float.c: In function 'ml_gsl_blas_dsdot':
# mlgsl_blas_float.c:31:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    31 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_blas_float.c: In function 'ml_gsl_blas_sdot':
# mlgsl_blas_float.c:40:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    40 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_blas_float.c: In function 'ml_gsl_blas_snrm2':
# mlgsl_blas_float.c:47:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    47 |   return copy_double(gsl_blas_snrm2(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_blas_float.c: In function 'ml_gsl_blas_sasum':
# mlgsl_blas_float.c:54:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    54 |   return copy_double(gsl_blas_sasum(&v_X));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_bspline.o -c mlgsl_bspline.c)
# In file included from mlgsl_bspline.c:10:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_bspline.c: In function 'ml_gsl_bspline_alloc':
# mlgsl_bspline.c:16:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    16 |   Abstract_ptr(r, w);
#       |             ^~~~~~~~~                                                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_bspline.c:25:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_cheb.o -c mlgsl_cheb.c)
# In file included from mlgsl_cheb.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_cheb.c: In function 'ml_gsl_cheb_alloc':
# mlgsl_cheb.c:16:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    16 | ML1_alloc(gsl_cheb_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_cheb.c: In function 'ml_gsl_cheb_coefs':
# mlgsl_cheb.c:30:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    30 |   a = alloc(len * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cheb.c: At top level:
# mlgsl_cheb.c:43:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    43 | ML2(gsl_cheb_eval, CHEB_VAL, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_cheb.c:52:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    52 | ML3(gsl_cheb_eval_n, CHEB_VAL, Int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_combi.o -c mlgsl_combi.c)
# mlgsl_combi.c: In function 'combi_of_val':
# mlgsl_combi.c:11:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#    11 |     c->data = Data_bigarray_val(Field(vc, 2));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_complex.o -c mlgsl_complex.c)
# In file included from mlgsl_complex.h:7,
#                  from mlgsl_complex.c:7:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_complex.c: In function 'ml_gsl_complex_logabs':
# mlgsl_complex.c:41:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    41 |   return copy_double(gsl_complex_logabs(z_Z));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_deriv.o -c mlgsl_deriv.c)
# In file included from mlgsl_deriv.c:11:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_eigen.o -c mlgsl_eigen.c)
# In file included from mlgsl_eigen.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_complex.h:11,
#                  from mlgsl_eigen.c:12:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray_complex':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_complex.h:13,
#                  from mlgsl_eigen.c:13:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_complex':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_eigen.c:22:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_eigen.c:23:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_eigen.c: In function 'ml_gsl_eigen_symm_alloc':
# mlgsl_eigen.c:31:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    31 |   Abstract_ptr(v, ws);
#       |             ^~~~~~~~~~                                                       
# mlgsl_eigen.c: In function 'ml_gsl_eigen_symmv_alloc':
# mlgsl_eigen.c:53:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    53 |   Abstract_ptr(v, ws);
#       |             ^~~~~~~~~~                                                       
# mlgsl_eigen.c: In function 'ml_gsl_eigen_herm_alloc':
# mlgsl_eigen.c:95:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    95 |   Abstract_ptr(v, ws);
#       |             ^~~~~~~~~~                                                       
# mlgsl_eigen.c: In function 'ml_gsl_eigen_hermv_alloc':
# mlgsl_eigen.c:117:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   117 |   Abstract_ptr(v, ws);
#       |             ^~~~~~~~~~                                                       
# mlgsl_eigen.c: In function 'ml_gsl_eigen_nonsymm_alloc':
# mlgsl_eigen.c:153:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   153 |   Abstract_ptr(v, ws);
#       |             ^~~~~~~~~~                                                       
# mlgsl_eigen.c: In function 'ml_gsl_eigen_nonsymmv_alloc':
# mlgsl_eigen.c:185:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   185 |   Abstract_ptr(v, ws);
#       |             ^~~~~~~~~~                                                       
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_error.o -c mlgsl_error.c)
# mlgsl_error.c: In function 'ml_gsl_error_handler':
# mlgsl_error.c:38:13: warning: "failwith" is deprecated: use "caml_failwith" instead
#    38 |     failwith("invalid GSL error code");
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_fft.o -c mlgsl_fft.c)
# In file included from mlgsl_fft.c:14:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_fft.c: In function 'check_layout':
# mlgsl_fft.c:31:13: warning: "invalid_argument" is deprecated: use "caml_invalid_argument" instead
#    31 |  invalid_argument("wrong fft_array layout");
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                           
# mlgsl_fft.c:33:13: warning: "raise_constant" is deprecated: use "caml_raise_constant" instead
#    33 |     raise_constant(*layout_exn);
#       |             ^~~~~~~~~~~~~~~~~~~~                                                   
# mlgsl_fft.c: In function 'ml_gsl_fft_real_workspace_alloc':
# mlgsl_fft.c:53:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    53 | ML1_alloc(gsl_fft_real_workspace_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_fft.c: In function 'ml_gsl_fft_complex_workspace_alloc':
# mlgsl_fft.c:54:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    54 | ML1_alloc(gsl_fft_complex_workspace_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_fft.c: In function 'ml_gsl_fft_real_wavetable_alloc':
# mlgsl_fft.c:55:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    55 | ML1_alloc(gsl_fft_real_wavetable_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_fft.c: In function 'ml_gsl_fft_halfcomplex_wavetable_alloc':
# mlgsl_fft.c:56:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    56 | ML1_alloc(gsl_fft_halfcomplex_wavetable_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        
# mlgsl_fft.c: In function 'ml_gsl_fft_complex_wavetable_alloc':
# mlgsl_fft.c:57:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    57 | ML1_alloc(gsl_fft_complex_wavetable_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_fit.o -c mlgsl_fit.c)
# In file included from mlgsl_fit.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_fit.c:13:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_fit.c:14:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fit.c: In function 'ml_gsl_fit_linear':
# mlgsl_fit.c:39:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    39 |   r=alloc_small(6 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_fit.c: In function 'ml_gsl_fit_mul':
# mlgsl_fit.c:83:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    83 |   r=alloc_small(3 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_fit.c: In function 'ml_gsl_multifit_linear_alloc':
# mlgsl_fit.c:107:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   107 |   Abstract_ptr(r, gsl_multifit_linear_alloc(Int_val(n), Int_val(p)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        
# mlgsl_fit.c: In function 'ml_gsl_multifit_linear':
# mlgsl_fit.c:133:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   133 |   return copy_double(chisq);
#       |             ^~~~~~~~~~~~~~~~                                                 
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_fun.o -c mlgsl_fun.c)
# In file included from mlgsl_fun.c:15:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_fun.c: In function 'gslfun_callback':
# mlgsl_fun.c:24:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    24 |   value v_x = copy_double(x);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_fun.c:25:13: warning: "callback" is deprecated: use "caml_callback" instead
#    25 |   res=callback(p->closure, v_x);
#       |             ^~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_fun.c: In function 'gslfun_callback_indir':
# mlgsl_fun.c:33:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    33 |   value v_x = copy_double(x);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_fun.c:35:13: warning: "callback" is deprecated: use "caml_callback" instead
#    35 |   res=callback(*closure, v_x);
#       |             ^~~~~~~~~~~~~~~~~~                                         
# mlgsl_fun.c: In function 'gslfun_callback_f':
# mlgsl_fun.c:43:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    43 |   value v_x=copy_double(x);
#       |             ^~~~~~~~~~~~~~~                                                  
# mlgsl_fun.c:44:13: warning: "callback" is deprecated: use "caml_callback" instead
#    44 |   res=callback(Field(p->closure, 0), v_x);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_fun.c: In function 'gslfun_callback_df':
# mlgsl_fun.c:52:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    52 |   value v_x=copy_double(x);
#       |             ^~~~~~~~~~~~~~~                                                  
# mlgsl_fun.c:53:13: warning: "callback" is deprecated: use "caml_callback" instead
#    53 |   res=callback(Field(p->closure, 1), v_x);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_fun.c: In function 'gslfun_callback_fdf':
# mlgsl_fun.c:62:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    62 |   value v_x=copy_double(x);
#       |             ^~~~~~~~~~~~~~~                                                  
# mlgsl_fun.c:63:13: warning: "callback" is deprecated: use "caml_callback" instead
#    63 |   res=callback(Field(p->closure, 2), v_x);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_fun.c: In function 'gsl_monte_callback':
# mlgsl_fun.c:76:13: warning: "callback" is deprecated: use "caml_callback" instead
#    76 |   res=callback(p->closure, p->dbl);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_fun.c: In function 'gsl_monte_callback_fast':
# mlgsl_fun.c:85:13: warning: "callback" is deprecated: use "caml_callback" instead
#    85 |   res=callback(p->closure, (value)x_arr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c: In function 'gsl_multiroot_callback':
# mlgsl_fun.c:94:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#    94 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:94:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#    94 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:100:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   100 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:101:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   101 |   f_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:102:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   102 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:103:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   103 |   f_v = gsl_vector_view_array(Data_bigarray_val(f_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:106:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   106 |   callback2(p->closure, x_barr, f_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_fun.c: In function 'gsl_multiroot_callback_f':
# mlgsl_fun.c:113:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   113 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:113:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   113 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:119:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   119 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:120:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   120 |   f_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:121:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   121 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:122:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   122 |   f_v = gsl_vector_view_array(Data_bigarray_val(f_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:125:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   125 |   callback2(Field(p->closure, 0), x_barr, f_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c: In function 'gsl_multiroot_callback_df':
# mlgsl_fun.c:132:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   132 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:132:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   132 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:139:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   139 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:140:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   140 |   j_barr = alloc_bigarray_dims(barr_flags, 2, NULL, len, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:141:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   141 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:142:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   142 |   j_v = gsl_matrix_view_array(Data_bigarray_val(j_barr), len, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_fun.c:145:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   145 |   callback2(Field(p->closure, 1), x_barr, j_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c: In function 'gsl_multiroot_callback_fdf':
# mlgsl_fun.c:153:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   153 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:153:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   153 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:160:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   160 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:161:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   161 |   f_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:162:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   162 |   j_barr = alloc_bigarray_dims(barr_flags, 2, NULL, len, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:163:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   163 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:164:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   164 |   f_v = gsl_vector_view_array(Data_bigarray_val(f_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:165:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   165 |   j_v = gsl_matrix_view_array(Data_bigarray_val(j_barr), len, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_fun.c:168:13: warning: "callback3" is deprecated: use "caml_callback3" instead
#   168 |   callback3(Field(p->closure, 2), x_barr, f_barr, j_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_fun.c: In function 'gsl_multimin_callback':
# mlgsl_fun.c:179:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   179 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:179:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   179 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:186:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   186 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:187:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   187 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:190:13: warning: "callback" is deprecated: use "caml_callback" instead
#   190 |   res=callback(p->closure, x_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_fun.c: In function 'gsl_multimin_callback_f':
# mlgsl_fun.c:196:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   196 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:196:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   196 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:203:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   203 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:204:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   204 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:207:13: warning: "callback" is deprecated: use "caml_callback" instead
#   207 |   res=callback(Field(p->closure, 0), x_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_fun.c: In function 'gsl_multimin_callback_df':
# mlgsl_fun.c:213:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   213 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:213:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   213 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:219:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   219 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:220:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   220 |   g_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:221:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   221 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:222:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   222 |   g_v = gsl_vector_view_array(Data_bigarray_val(g_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:225:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   225 |   callback2(Field(p->closure, 1), x_barr, g_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c: In function 'gsl_multimin_callback_fdf':
# mlgsl_fun.c:232:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   232 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:232:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   232 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:239:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   239 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:240:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   240 |   g_barr = alloc_bigarray_dims(barr_flags, 1, NULL, len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_fun.c:241:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   241 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:242:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   242 |   g_v = gsl_vector_view_array(Data_bigarray_val(g_barr), len);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_fun.c:245:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   245 |   res=callback2(Field(p->closure, 2), x_barr, g_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_fun.c: In function 'gsl_multifit_callback_f':
# mlgsl_fun.c:255:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   255 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:255:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   255 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:262:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   262 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_fun.c:263:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   263 |   f_barr = alloc_bigarray_dims(barr_flags, 1, NULL, n);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_fun.c:264:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   264 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c:265:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   265 |   f_v = gsl_vector_view_array(Data_bigarray_val(f_barr), n);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c:268:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   268 |   callback2(Field(parms->closure, 0), x_barr, f_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_fun.c: In function 'gsl_multifit_callback_df':
# mlgsl_fun.c:275:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   275 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:275:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   275 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:284:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   284 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_fun.c:285:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   285 |   j_barr = alloc_bigarray_dims(barr_flags, 2, NULL, n, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_fun.c:286:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   286 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c:287:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   287 |   j_v = gsl_matrix_view_array(Data_bigarray_val(j_barr), n, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_fun.c:290:13: warning: "callback2" is deprecated: use "caml_callback2" instead
#   290 |   res=callback2(Field(parms->closure, 1), x_barr, j_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_fun.c: In function 'gsl_multifit_callback_fdf':
# mlgsl_fun.c:300:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   300 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_fun.c:300:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#   300 |   int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_fun.c:308:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   308 |   x_barr = alloc_bigarray_dims(barr_flags, 1, NULL, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_fun.c:309:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   309 |   f_barr = alloc_bigarray_dims(barr_flags, 1, NULL, n);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_fun.c:310:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#   310 |   j_barr = alloc_bigarray_dims(barr_flags, 2, NULL, n, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_fun.c:311:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   311 |   x_v = gsl_vector_view_array(Data_bigarray_val(x_barr), p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c:312:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   312 |   f_v = gsl_vector_view_array(Data_bigarray_val(f_barr), n);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_fun.c:313:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#   313 |   j_v = gsl_matrix_view_array(Data_bigarray_val(j_barr), n, p);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_fun.c:316:13: warning: "callback3" is deprecated: use "caml_callback3" instead
#   316 |   callback3(Field(parms->closure, 2), x_barr, f_barr, j_barr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_histo.o -c mlgsl_histo.c)
# In file included from mlgsl_histo.c:13:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_histo.c: In function 'ml_gsl_histogram_max_val':
# mlgsl_histo.c:63:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    63 |   return copy_double(gsl_histogram_max_val(&h));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_histo.c: In function 'ml_gsl_histogram_min_val':
# mlgsl_histo.c:77:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    77 |   return copy_double(gsl_histogram_min_val(&h));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_histo.c: In function 'ml_gsl_histogram_mean':
# mlgsl_histo.c:91:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    91 |   return copy_double(gsl_histogram_mean(&h));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_histo.c: In function 'ml_gsl_histogram_sigma':
# mlgsl_histo.c:98:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    98 |   return copy_double(gsl_histogram_sigma(&h));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# mlgsl_histo.c: In function 'ml_gsl_histogram_sum':
# mlgsl_histo.c:105:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   105 |   return copy_double(gsl_histogram_sum(&h));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_histo.c: In function 'ml_gsl_histogram_pdf_sample':
# mlgsl_histo.c:189:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   189 |   return copy_double(gsl_histogram_pdf_sample(&p, r));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_ieee.o -c mlgsl_ieee.c)
# In file included from mlgsl_ieee.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_ieee.c: In function 'rep_val':
# mlgsl_ieee.c:18:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    18 |   m=copy_string(r->mantissa);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_ieee.c:19:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    19 |   v=alloc_small(4, 0);
#       |             ^~~~~~~~~~                                                       
# mlgsl_ieee.c: In function 'ml_gsl_ieee_set_mode':
# mlgsl_ieee.c:53:13: warning: "convert_flag_list" is deprecated: use "caml_convert_flag_list" instead
#    53 |   int mask = convert_flag_list(ex_list, mask_conv);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_integration.o -c mlgsl_integration.c)
# In file included from mlgsl_integration.c:15:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_integration.c: In function 'ml_gsl_integration_qng':
# mlgsl_integration.c:31:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    31 |   r = copy_double(result);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_integration.c:32:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    32 |   e = copy_double(abserr);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_integration.c:33:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    33 |   res = alloc_small(3, 0);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_integration.c: In function 'ml_gsl_integration_workspace_alloc':
# mlgsl_integration.c:46:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    46 | ML1_alloc(gsl_integration_workspace_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_integration.c: In function 'ml_gsl_integration_qaws_table_alloc':
# mlgsl_integration.c:235:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   235 |                                                      Int_val(nu)));
#       |             ^                                        ~~~~~~~~~~~~~~          
# mlgsl_integration.c: In function 'ml_gsl_integration_qawo_table_alloc':
# mlgsl_integration.c:284:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   284 |                                                      Int_val(n)));
#       |             ^                                        ~~~~~~~~~~~~~           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_interp.o -c mlgsl_interp.c)
# In file included from mlgsl_interp.c:13:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_interp.c: In function 'ml_gsl_interp_alloc':
# mlgsl_interp.c:31:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    31 |   Abstract_ptr(r, i);
#       |             ^~~~~~~~~                                                        
# mlgsl_interp.c: In function 'ml_gsl_interp_name':
# mlgsl_interp.c:50:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    50 |   return copy_string(gsl_interp_name(Interp_val(i)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_interp.c: In function 'ml_gsl_interp_accel_alloc':
# mlgsl_interp.c:61:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    61 |   Abstract_ptr(r, gsl_interp_accel_alloc());
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_interp.c: In function 'ml_gsl_interp_eval':
# mlgsl_interp.c:73:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    73 |   return copy_double(gsl_interp_eval(Interp_val(i),
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_interp.c: In function 'ml_gsl_interp_eval_deriv':
# mlgsl_interp.c:83:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    83 |   return copy_double(gsl_interp_eval_deriv(Interp_val(i),
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_interp.c: In function 'ml_gsl_interp_eval_deriv2':
# mlgsl_interp.c:93:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    93 |   return copy_double(gsl_interp_eval_deriv2(Interp_val(i),
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_interp.c: In function 'ml_gsl_interp_eval_integ':
# mlgsl_interp.c:103:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   103 |   return copy_double(gsl_interp_eval_integ(Interp_val(i),
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_linalg.o -c mlgsl_linalg.c)
# In file included from mlgsl_matrix.h:9,
#                  from mlgsl_matrix_double.h:11,
#                  from mlgsl_linalg.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_linalg.c:8:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_linalg.c:9:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_decomp':
# mlgsl_linalg.c:33:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    33 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:33:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    33 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_solve':
# mlgsl_linalg.c:42:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    42 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:42:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    42 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_svx':
# mlgsl_linalg.c:53:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    53 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:53:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    53 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_refine':
# mlgsl_linalg.c:65:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    65 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:65:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    65 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_invert':
# mlgsl_linalg.c:82:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    82 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:82:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    82 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_det':
# mlgsl_linalg.c:93:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    93 |   return copy_double(gsl_linalg_LU_det(&m_LU, Int_val(sig)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_linalg.c: In function 'ml_gsl_linalg_LU_lndet':
# mlgsl_linalg.c:100:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   100 |   return copy_double(gsl_linalg_LU_lndet(&m_LU));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_decomp':
# mlgsl_linalg.c:250:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   250 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:250:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   250 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_decomp2':
# mlgsl_linalg.c:263:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   263 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:263:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   263 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_solve':
# mlgsl_linalg.c:281:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   281 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:281:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   281 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_svx':
# mlgsl_linalg.c:292:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   292 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:292:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   292 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_QRsolve':
# mlgsl_linalg.c:304:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   304 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:304:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   304 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_update':
# mlgsl_linalg.c:316:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   316 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:316:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   316 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_Rsolve':
# mlgsl_linalg.c:328:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   328 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:328:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   328 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_QRPT_Rsvx':
# mlgsl_linalg.c:339:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   339 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:339:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   339 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_decomp':
# mlgsl_linalg.c:524:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   524 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:524:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   524 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_decomp2':
# mlgsl_linalg.c:537:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   537 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:537:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   537 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_solve_T':
# mlgsl_linalg.c:554:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   554 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:554:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   554 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_svx_T':
# mlgsl_linalg.c:565:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   565 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:565:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   565 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_LQsolve_T':
# mlgsl_linalg.c:576:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   576 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:576:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   576 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_Lsolve_T':
# mlgsl_linalg.c:587:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   587 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:587:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   587 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_Lsvx_T':
# mlgsl_linalg.c:598:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   598 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:598:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   598 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg.c: In function 'ml_gsl_linalg_PTLQ_update':
# mlgsl_linalg.c:609:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   609 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg.c:609:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   609 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_linalg_complex.o -c mlgsl_linalg_complex.c)
# In file included from mlgsl_matrix_complex.h:2,
#                  from mlgsl_linalg_complex.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_complex.h:13,
#                  from mlgsl_linalg_complex.c:8:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_complex':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_complex.h:11,
#                  from mlgsl_linalg_complex.c:9:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray_complex':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_linalg_complex.c: In function 'ml_gsl_linalg_complex_LU_decomp':
# mlgsl_linalg_complex.c:19:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    19 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg_complex.c:19:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    19 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg_complex.c: In function 'ml_gsl_linalg_complex_LU_solve':
# mlgsl_linalg_complex.c:28:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    28 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg_complex.c:28:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    28 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg_complex.c: In function 'ml_gsl_linalg_complex_LU_svx':
# mlgsl_linalg_complex.c:39:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    39 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg_complex.c:39:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    39 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg_complex.c: In function 'ml_gsl_linalg_complex_LU_refine':
# mlgsl_linalg_complex.c:51:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    51 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg_complex.c:51:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    51 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg_complex.c: In function 'ml_gsl_linalg_complex_LU_invert':
# mlgsl_linalg_complex.c:68:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    68 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_linalg_complex.c:68:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    68 |   GSL_PERMUT_OF_BIGARRAY(P);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_linalg_complex.c: In function 'ml_gsl_linalg_complex_LU_lndet':
# mlgsl_linalg_complex.c:88:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    88 |   return copy_double(gsl_linalg_complex_LU_lndet(&m_LU));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_linalg_complex.c:112:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_linalg_complex.c:113:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_math.o -c mlgsl_math.c)
# In file included from mlgsl_math.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_math.c: At top level:
# mlgsl_math.c:11:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    11 | ML1(gsl_log1p, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_math.c:12:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    12 | ML1(gsl_expm1, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_math.c:13:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    13 | ML2(gsl_hypot, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_math.c:14:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    14 | ML1(gsl_acosh, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_math.c:15:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    15 | ML1(gsl_asinh, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_math.c:16:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    16 | ML1(gsl_atanh, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_matrix_complex.o -c mlgsl_matrix_complex.c)
# In file included from mlgsl_matrix_complex.h:2,
#                  from mlgsl_matrix_complex.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_complex.h:13,
#                  from mlgsl_matrix_complex.c:2:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_complex':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_matrix_complex_float.o -c mlgsl_matrix_complex_float.c)
# In file included from mlgsl_matrix_complex_float.h:2,
#                  from mlgsl_matrix_complex_float.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_complex_float.h:13,
#                  from mlgsl_matrix_complex_float.c:2:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_complex_float':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_matrix_double.o -c mlgsl_matrix_double.c)
# In file included from mlgsl_matrix.h:9,
#                  from mlgsl_matrix_double.h:11,
#                  from mlgsl_matrix_double.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_matrix_double.c:2:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_matrix_float.o -c mlgsl_matrix_float.c)
# In file included from mlgsl_matrix_float.h:2,
#                  from mlgsl_matrix_float.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_float.h:13,
#                  from mlgsl_matrix_float.c:2:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray_float':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_min.o -c mlgsl_min.c)
# In file included from mlgsl_min.c:11:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_min.c: In function 'ml_gsl_min_fminimizer_alloc':
# mlgsl_min.c:30:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    30 |   params=stat_alloc(sizeof *params);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_min.c:32:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    32 |   res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_min.c:39:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    39 |   register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_min.c: In function 'ml_gsl_min_fminimizer_free':
# mlgsl_min.c:56:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    56 |   remove_global_root(&(Mparams_val(s)->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_min.c:57:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#    57 |   stat_free(Mparams_val(s));
#       |             ^~~~~~~~~~~~~~~~                                             
# mlgsl_min.c: At top level:
# mlgsl_min.c:62:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    62 | ML1(gsl_min_fminimizer_name, Minimizer_val, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_min.c:66:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    66 | ML1(gsl_min_fminimizer_x_minimum, Minimizer_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_monte.o -c mlgsl_monte.c)
# In file included from mlgsl_monte.c:26:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_monte.c: In function 'ml_gsl_monte_plain_alloc':
# mlgsl_monte.c:46:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    46 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_monte.c:52:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    52 |     res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_monte.c:59:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    59 |     params->dbl = alloc(dim * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
# mlgsl_monte.c:61:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    61 |     register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                  
# mlgsl_monte.c:62:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    62 |     register_global_root(&(params->dbl));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                      
# mlgsl_monte.c: In function 'ml_gsl_monte_plain_free':
# mlgsl_monte.c:71:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    71 |   remove_global_root(&(CallbackParams_val(s)->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                   
# mlgsl_monte.c:72:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    72 |   remove_global_root(&(CallbackParams_val(s)->dbl));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_monte.c:73:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#    73 |   stat_free(CallbackParams_val(s));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_monte.c: In function 'ml_gsl_monte_miser_alloc':
# mlgsl_monte.c:122:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#   122 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_monte.c:127:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   127 |     res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_monte.c:134:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#   134 |     params->dbl = alloc(dim * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
# mlgsl_monte.c:136:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#   136 |     register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                  
# mlgsl_monte.c:137:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#   137 |     register_global_root(&(params->dbl));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                      
# mlgsl_monte.c: In function 'ml_gsl_monte_miser_free':
# mlgsl_monte.c:146:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   146 |   remove_global_root(&(CallbackParams_val(s)->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                   
# mlgsl_monte.c:147:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   147 |   remove_global_root(&(CallbackParams_val(s)->dbl));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_monte.c:148:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   148 |   stat_free(CallbackParams_val(s));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_monte.c: In function 'ml_gsl_monte_miser_get_params':
# mlgsl_monte.c:190:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
#   190 |   r=alloc_tuple(5);
#       |             ^~~~~~~                                                          
# mlgsl_monte.c:191:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   191 |   Store_field(r, 0, copy_double(s->estimate_frac));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_monte.c:194:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   194 |   Store_field(r, 3, copy_double(s->alpha));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_monte.c:195:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   195 |   Store_field(r, 4, copy_double(s->dither));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_monte.c: In function 'ml_gsl_monte_vegas_alloc':
# mlgsl_monte.c:223:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#   223 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_monte.c:228:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   228 |     res=alloc_small(3, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_monte.c:236:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#   236 |     params->dbl = alloc(dim * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
# mlgsl_monte.c:238:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#   238 |     register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                  
# mlgsl_monte.c:239:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#   239 |     register_global_root(&(params->dbl));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                      
# mlgsl_monte.c:240:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#   240 |     register_global_root(&(Field(res, 2)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_monte.c: In function 'ml_gsl_monte_vegas_free':
# mlgsl_monte.c:250:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   250 |   remove_global_root(&(CallbackParams_val(state)->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# mlgsl_monte.c:251:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   251 |   remove_global_root(&(CallbackParams_val(state)->dbl));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                   
# mlgsl_monte.c:252:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   252 |   stat_free(CallbackParams_val(state));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_monte.c:255:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   255 |   remove_global_root(&GSLVEGASSTREAM_VAL(state));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_monte.c: In function 'ml_gsl_monte_vegas_get_info':
# mlgsl_monte.c:296:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   296 |   r=alloc_small(3 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_monte.c: In function 'ml_gsl_monte_vegas_get_params':
# mlgsl_monte.c:308:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
#   308 |   r=alloc_tuple(6);
#       |             ^~~~~~~                                                          
# mlgsl_monte.c:309:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   309 |   Store_field(r, 0, copy_double(s->alpha));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_monte.c:317:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   317 |       vchan=alloc_small(1, 0);
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_monte.c: In function 'ml_gsl_monte_vegas_set_params':
# mlgsl_monte.c:341:13: warning: "flush" is deprecated: use "caml_flush" instead
#   341 |       flush(chan);
#       |             ^~~~~~                                               
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_multifit.o -c mlgsl_multifit.c)
# In file included from mlgsl_multifit.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_multifit.c:14:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_multifit.c:15:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_multifit.c: In function 'ml_gsl_multifit_fdfsolver_alloc':
# mlgsl_multifit.c:34:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    34 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_multifit.c:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_multifit.c:48:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    48 |   register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_multifit.c: In function 'ml_gsl_multifit_fdfsolver_free':
# mlgsl_multifit.c:68:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    68 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_multifit.c:69:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#    69 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_multifit.c: At top level:
# mlgsl_multifit.c:74:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    74 | ML1(gsl_multifit_fdfsolver_name, FDFSOLVER_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_multimin.o -c mlgsl_multimin.c)
# In file included from mlgsl_multimin.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_multimin.c:14:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_multimin.c:15:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_multimin.c: In function 'ml_gsl_multimin_fdfminimizer_alloc':
# mlgsl_multimin.c:38:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    38 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_multimin.c:40:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    40 |   res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_multimin.c:51:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    51 |   register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_multimin.c: In function 'ml_gsl_multimin_fdfminimizer_free':
# mlgsl_multimin.c:74:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    74 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_multimin.c:75:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#    75 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_multimin.c: At top level:
# mlgsl_multimin.c:80:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    80 | ML1(gsl_multimin_fdfminimizer_name, GSLMULTIMINFDFMINIMIZER_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_multimin.c: In function 'ml_gsl_multimin_fdfminimizer_minimum':
# mlgsl_multimin.c:108:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   108 |   return copy_double(gsl_multimin_fdfminimizer_minimum(t));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_multimin.c: In function 'ml_gsl_multimin_fminimizer_alloc':
# mlgsl_multimin.c:137:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#   137 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_multimin.c:139:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   139 |   res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_multimin.c:148:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#   148 |   register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_multimin.c: In function 'ml_gsl_multimin_fminimizer_free':
# mlgsl_multimin.c:169:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   169 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_multimin.c:170:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   170 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_multimin.c: At top level:
# mlgsl_multimin.c:175:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   175 | ML1(gsl_multimin_fminimizer_name, GSLMULTIMINFMINIMIZER_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_multimin.c: In function 'ml_gsl_multimin_fminimizer_minimum':
# mlgsl_multimin.c:187:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   187 |   return copy_double(gsl_multimin_fminimizer_minimum(t));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_multimin.c: At top level:
# mlgsl_multimin.c:190:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   190 | ML1(gsl_multimin_fminimizer_size, GSLMULTIMINFMINIMIZER_VAL, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_multiroots.o -c mlgsl_multiroots.c)
# In file included from mlgsl_multiroots.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_multiroots.c:14:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_multiroots.c:15:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_multiroots.c: In function 'ml_gsl_multiroot_fsolver_alloc':
# mlgsl_multiroots.c:48:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    48 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_multiroots.c:50:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    50 |   res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_multiroots.c:58:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    58 |   register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_multiroots.c: In function 'ml_gsl_multiroot_fdfsolver_alloc':
# mlgsl_multiroots.c:71:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    71 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_multiroots.c:73:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    73 |   res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_multiroots.c:83:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    83 |   register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                    
# mlgsl_multiroots.c: In function 'ml_gsl_multiroot_fsolver_free':
# mlgsl_multiroots.c:118:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   118 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_multiroots.c:119:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   119 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_multiroots.c: In function 'ml_gsl_multiroot_fdfsolver_free':
# mlgsl_multiroots.c:127:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   127 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_multiroots.c:128:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   128 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_multiroots.c: At top level:
# mlgsl_multiroots.c:133:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   133 | ML1(gsl_multiroot_fsolver_name, GSLMULTIROOTSOLVER_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_multiroots.c:134:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   134 | ML1(gsl_multiroot_fdfsolver_name, GSLMULTIROOTFDFSOLVER_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_odeiv.o -c mlgsl_odeiv.c)
# In file included from mlgsl_odeiv.c:17:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_func':
# mlgsl_odeiv.c:33:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    33 |   vt  = copy_double(t);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_odeiv.c:35:13: warning: "callback3_exn" is deprecated: use "caml_callback3_exn" instead
#    35 |   res = callback3_exn(p->closure, vt, p->arr1, p->arr2);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_jacobian':
# mlgsl_odeiv.c:48:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    48 |   args[0] = copy_double(t);
#       |             ^~~~~~~~~~~~~~~                                                  
# mlgsl_odeiv.c:51:13: warning: "Data_bigarray_val" is deprecated: use "Caml_ba_data_val" instead
#    51 |   Data_bigarray_val(p->mat) = dfdy;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                                
# mlgsl_odeiv.c:54:13: warning: "callbackN_exn" is deprecated: use "caml_callbackN_exn" instead
#    54 |   res = callbackN_exn(p->jac_closure, 4, args);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_alloc_system':
# mlgsl_odeiv.c:63:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#    63 |   const int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT | BIGARRAY_EXTERNAL;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_odeiv.c:63:13: warning: "BIGARRAY_C_LAYOUT" is deprecated: use "CAML_BA_C_LAYOUT" instead
#    63 |   const int barr_flags = BIGARRAY_FLOAT64 | BIGARRAY_C_LAYOUT | BIGARRAY_EXTERNAL;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
# mlgsl_odeiv.c:63:13: warning: "BIGARRAY_EXTERNAL" is deprecated: use "CAML_BA_EXTERNAL" instead
# mlgsl_odeiv.c:67:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    67 |   p=stat_alloc(sizeof (*p));
#       |             ^~~~~~~~~~~~~~~~                                               
# mlgsl_odeiv.c:70:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    70 |   register_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                                         
# mlgsl_odeiv.c:72:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    72 |   register_global_root(&(p->jac_closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                     
# mlgsl_odeiv.c:73:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    73 |   p->arr1 = alloc(Int_val(dim) * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_odeiv.c:74:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    74 |   register_global_root(&(p->arr1));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                                            
# mlgsl_odeiv.c:75:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    75 |   p->arr2 = alloc(Int_val(dim) * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_odeiv.c:76:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    76 |   register_global_root(&(p->arr2));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                                            
# mlgsl_odeiv.c:80:13: warning: "alloc_bigarray_dims" is deprecated: use "caml_ba_alloc_dims" instead
#    80 |     : alloc_bigarray_dims(barr_flags, 2, NULL, Int_val(dim), Int_val(dim));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_odeiv.c:81:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    81 |   register_global_root(&(p->mat));
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                                             
# mlgsl_odeiv.c:83:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    83 |   syst=stat_alloc(sizeof (*syst));
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                         
# mlgsl_odeiv.c:88:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    88 |   Abstract_ptr(res, syst);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_free_system':
# mlgsl_odeiv.c:98:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    98 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_odeiv.c:99:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#    99 |   remove_global_root(&(p->jac_closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                   
# mlgsl_odeiv.c:100:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   100 |   remove_global_root(&(p->arr1));
#       |             ^~~~~~~~~~~~~~~~~~~~~                                                          
# mlgsl_odeiv.c:101:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   101 |   remove_global_root(&(p->arr2));
#       |             ^~~~~~~~~~~~~~~~~~~~~                                                          
# mlgsl_odeiv.c:102:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   102 |   remove_global_root(&(p->mat));
#       |             ^~~~~~~~~~~~~~~~~~~~                                                           
# mlgsl_odeiv.c:103:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   103 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_odeiv.c:104:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   104 |   stat_free(syst);
#       |             ^~~~~~                                                       
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_step_alloc':
# mlgsl_odeiv.c:121:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   121 |   Abstract_ptr(res, step);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_odeiv.c: At top level:
# mlgsl_odeiv.c:129:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   129 | ML1(gsl_odeiv_step_name, ODEIV_STEP_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_control_standard_new':
# mlgsl_odeiv.c:183:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   183 |   Abstract_ptr(res, c);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_control_y_new':
# mlgsl_odeiv.c:192:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   192 |   Abstract_ptr(res, c);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_control_yp_new':
# mlgsl_odeiv.c:201:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   201 |   Abstract_ptr(res, c);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_control_scaled_new':
# mlgsl_odeiv.c:214:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   214 |   Abstract_ptr(res, c);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_odeiv.c: At top level:
# mlgsl_odeiv.c:221:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   221 | ML1(gsl_odeiv_control_name, ODEIV_CONTROL_VAL, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_control_hadjust':
# mlgsl_odeiv.c:234:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   234 |     vh = copy_double(c_h);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_odeiv.c:235:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   235 |     r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_odeiv.c: In function 'ml_gsl_odeiv_evolve_alloc':
# mlgsl_odeiv.c:252:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   252 |   Abstract_ptr(res, e);
#       |             ^~~~~~~~~~~                                                      
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_permut.o -c mlgsl_permut.c)
# In file included from mlgsl_permut.c:9:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_permut.c: In function 'ml_gsl_permutation_init':
# mlgsl_permut.c:14:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    14 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:14:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    14 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permutation_valid':
# mlgsl_permut.c:22:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    22 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:22:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    22 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permutation_reverse':
# mlgsl_permut.c:29:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    29 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:29:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    29 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permutation_inverse':
# mlgsl_permut.c:36:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    36 |   GSL_PERMUT_OF_BIGARRAY(src);
#       |             ^~~~~~~~~~~~~~~~~~                                              
# mlgsl_permut.c:36:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    36 |   GSL_PERMUT_OF_BIGARRAY(src);
#       |             ^~~~~~~~~~~~~~~~~~                                                 
# mlgsl_permut.c:37:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    37 |   GSL_PERMUT_OF_BIGARRAY(dst);
#       |             ^~~~~~~~~~~~~~~~~~                                              
# mlgsl_permut.c:37:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    37 |   GSL_PERMUT_OF_BIGARRAY(dst);
#       |             ^~~~~~~~~~~~~~~~~~                                                 
# mlgsl_permut.c: In function 'ml_gsl_permutation_next':
# mlgsl_permut.c:44:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    44 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:44:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    44 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permutation_prev':
# mlgsl_permut.c:51:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    51 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:51:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    51 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute':
# mlgsl_permut.c:58:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    58 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:58:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    58 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_barr':
# mlgsl_permut.c:69:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    69 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:69:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    69 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c:70:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    70 |   struct caml_bigarray *barr = Bigarray_val(arr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_permut.c:70:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    70 |   struct caml_bigarray *barr = Bigarray_val(arr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_permut.c:71:13: warning: "caml_bigarray_kind" is deprecated: use "caml_ba_kind" instead
#    71 |   enum caml_bigarray_kind kind = (barr->flags) & BIGARRAY_KIND_MASK ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_permut.c:71:13: warning: "BIGARRAY_KIND_MASK" is deprecated: use "CAML_BA_KIND_MASK" instead
#    71 |   enum caml_bigarray_kind kind = (barr->flags) & BIGARRAY_KIND_MASK ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_permut.c:73:13: warning: "BIGARRAY_FLOAT32" is deprecated: use "CAML_BA_FLOAT32" instead
#    73 |   case BIGARRAY_FLOAT32:
#       |             ^~~~~~~~~~~~                                                         
# mlgsl_permut.c:75:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#    75 |   case BIGARRAY_FLOAT64:
#       |             ^~~~~~~~~~~~                                                         
# mlgsl_permut.c:77:13: warning: "BIGARRAY_SINT8" is deprecated: use "CAML_BA_SINT8" instead
#    77 |   case BIGARRAY_SINT8:
#       |             ^~~~~~~~~~                                                       
# mlgsl_permut.c:79:13: warning: "BIGARRAY_UINT8" is deprecated: use "CAML_BA_UINT8" instead
#    79 |   case BIGARRAY_UINT8:
#       |             ^~~~~~~~~~                                                       
# mlgsl_permut.c:81:13: warning: "BIGARRAY_SINT16" is deprecated: use "CAML_BA_SINT16" instead
#    81 |   case BIGARRAY_SINT16:
#       |             ^~~~~~~~~~~                                                        
# mlgsl_permut.c:83:13: warning: "BIGARRAY_UINT16" is deprecated: use "CAML_BA_UINT16" instead
#    83 |   case BIGARRAY_UINT16:
#       |             ^~~~~~~~~~~                                                        
# mlgsl_permut.c:86:13: warning: "BIGARRAY_INT64" is deprecated: use "CAML_BA_INT64" instead
#    86 |   case BIGARRAY_INT64:
#       |             ^~~~~~~~~~                                                       
# mlgsl_permut.c:90:13: warning: "BIGARRAY_CAML_INT" is deprecated: use "CAML_BA_CAML_INT" instead
#    90 |   case BIGARRAY_CAML_INT:
#       |             ^~~~~~~~~~~~~                                                          
# mlgsl_permut.c:91:13: warning: "BIGARRAY_NATIVE_INT" is deprecated: use "CAML_BA_NATIVE_INT" instead
#    91 |   case BIGARRAY_NATIVE_INT:
#       |             ^~~~~~~~~~~~~~~                                                            
# mlgsl_permut.c:93:13: warning: "BIGARRAY_COMPLEX32" is deprecated: use "CAML_BA_COMPLEX32" instead
#    93 |   case BIGARRAY_COMPLEX32:
#       |             ^~~~~~~~~~~~~~                                                           
# mlgsl_permut.c:95:13: warning: "BIGARRAY_COMPLEX64" is deprecated: use "CAML_BA_COMPLEX64" instead
#    95 |   case BIGARRAY_COMPLEX64:
#       |             ^~~~~~~~~~~~~~                                                           
# mlgsl_permut.c: In function 'ml_gsl_permute_complex':
# mlgsl_permut.c:105:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   105 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:105:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   105 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_inverse':
# mlgsl_permut.c:113:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   113 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:113:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   113 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_inverse_barr':
# mlgsl_permut.c:124:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   124 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:124:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   124 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c:125:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   125 |   struct caml_bigarray *barr = Bigarray_val(arr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_permut.c:125:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   125 |   struct caml_bigarray *barr = Bigarray_val(arr);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_permut.c:126:13: warning: "caml_bigarray_kind" is deprecated: use "caml_ba_kind" instead
#   126 |   enum caml_bigarray_kind kind = (barr->flags) & BIGARRAY_KIND_MASK ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_permut.c:126:13: warning: "BIGARRAY_KIND_MASK" is deprecated: use "CAML_BA_KIND_MASK" instead
#   126 |   enum caml_bigarray_kind kind = (barr->flags) & BIGARRAY_KIND_MASK ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_permut.c:128:13: warning: "BIGARRAY_FLOAT32" is deprecated: use "CAML_BA_FLOAT32" instead
#   128 |   case BIGARRAY_FLOAT32:
#       |             ^~~~~~~~~~~~                                                         
# mlgsl_permut.c:130:13: warning: "BIGARRAY_FLOAT64" is deprecated: use "CAML_BA_FLOAT64" instead
#   130 |   case BIGARRAY_FLOAT64:
#       |             ^~~~~~~~~~~~                                                         
# mlgsl_permut.c:132:13: warning: "BIGARRAY_SINT8" is deprecated: use "CAML_BA_SINT8" instead
#   132 |   case BIGARRAY_SINT8:
#       |             ^~~~~~~~~~                                                       
# mlgsl_permut.c:134:13: warning: "BIGARRAY_UINT8" is deprecated: use "CAML_BA_UINT8" instead
#   134 |   case BIGARRAY_UINT8:
#       |             ^~~~~~~~~~                                                       
# mlgsl_permut.c:136:13: warning: "BIGARRAY_SINT16" is deprecated: use "CAML_BA_SINT16" instead
#   136 |   case BIGARRAY_SINT16:
#       |             ^~~~~~~~~~~                                                        
# mlgsl_permut.c:138:13: warning: "BIGARRAY_UINT16" is deprecated: use "CAML_BA_UINT16" instead
#   138 |   case BIGARRAY_UINT16:
#       |             ^~~~~~~~~~~                                                        
# mlgsl_permut.c:141:13: warning: "BIGARRAY_INT64" is deprecated: use "CAML_BA_INT64" instead
#   141 |   case BIGARRAY_INT64:
#       |             ^~~~~~~~~~                                                       
# mlgsl_permut.c:145:13: warning: "BIGARRAY_CAML_INT" is deprecated: use "CAML_BA_CAML_INT" instead
#   145 |   case BIGARRAY_CAML_INT:
#       |             ^~~~~~~~~~~~~                                                          
# mlgsl_permut.c:146:13: warning: "BIGARRAY_NATIVE_INT" is deprecated: use "CAML_BA_NATIVE_INT" instead
#   146 |   case BIGARRAY_NATIVE_INT:
#       |             ^~~~~~~~~~~~~~~                                                            
# mlgsl_permut.c:148:13: warning: "BIGARRAY_COMPLEX32" is deprecated: use "CAML_BA_COMPLEX32" instead
#   148 |   case BIGARRAY_COMPLEX32:
#       |             ^~~~~~~~~~~~~~                                                           
# mlgsl_permut.c:150:13: warning: "BIGARRAY_COMPLEX64" is deprecated: use "CAML_BA_COMPLEX64" instead
#   150 |   case BIGARRAY_COMPLEX64:
#       |             ^~~~~~~~~~~~~~                                                           
# mlgsl_permut.c: In function 'ml_gsl_permute_inverse_complex':
# mlgsl_permut.c:160:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   160 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:160:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   160 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_mul':
# mlgsl_permut.c:168:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   168 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:168:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   168 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c:169:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   169 |   GSL_PERMUT_OF_BIGARRAY(pa);
#       |             ^~~~~~~~~~~~~~~~~                                               
# mlgsl_permut.c:169:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   169 |   GSL_PERMUT_OF_BIGARRAY(pa);
#       |             ^~~~~~~~~~~~~~~~~                                                  
# mlgsl_permut.c:170:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   170 |   GSL_PERMUT_OF_BIGARRAY(pb);
#       |             ^~~~~~~~~~~~~~~~~                                               
# mlgsl_permut.c:170:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   170 |   GSL_PERMUT_OF_BIGARRAY(pb);
#       |             ^~~~~~~~~~~~~~~~~                                                  
# mlgsl_permut.c: In function 'ml_gsl_permute_linear_to_canonical':
# mlgsl_permut.c:177:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   177 |   GSL_PERMUT_OF_BIGARRAY(q);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:177:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   177 |   GSL_PERMUT_OF_BIGARRAY(q);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c:178:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   178 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:178:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   178 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_canonical_to_linear':
# mlgsl_permut.c:185:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   185 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:185:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   185 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c:186:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   186 |   GSL_PERMUT_OF_BIGARRAY(q);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:186:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   186 |   GSL_PERMUT_OF_BIGARRAY(q);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_inversions':
# mlgsl_permut.c:194:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   194 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:194:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   194 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_canonical_cycles':
# mlgsl_permut.c:202:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   202 |   GSL_PERMUT_OF_BIGARRAY(q);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:202:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   202 |   GSL_PERMUT_OF_BIGARRAY(q);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_permut.c: In function 'ml_gsl_permute_linear_cycles':
# mlgsl_permut.c:210:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#   210 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_permut.c:210:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#   210 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_poly.o -c mlgsl_poly.c)
# In file included from mlgsl_poly.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_poly.c: In function 'ml_gsl_poly_eval':
# mlgsl_poly.c:17:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    17 |   return copy_double(gsl_poly_eval(Double_array_val(c), len, Double_val(x)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_poly.c: In function 'ml_gsl_poly_solve_quadratic':
# mlgsl_poly.c:32:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    32 |       r = alloc(2, 0);
#       |             ^~~~~~~~~~                                           
# mlgsl_poly.c:33:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    33 |       Store_field(r, 0, copy_double(x0));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_poly.c:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |       Store_field(r, 1, copy_double(x1));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_poly.c: In function 'ml_gsl_poly_complex_solve_quadratic':
# mlgsl_poly.c:49:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    49 |     rz0 = alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_poly.c:52:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    52 |     rz1 = alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_poly.c:55:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    55 |     r   = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_poly.c: In function 'ml_gsl_poly_solve_cubic':
# mlgsl_poly.c:77:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    77 |       r = alloc(1, 0);
#       |             ^~~~~~~~~~                                           
# mlgsl_poly.c:78:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    78 |       Store_field(r, 0, copy_double(x0));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_poly.c:81:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    81 |       r = alloc(3, 1);
#       |             ^~~~~~~~~~                                           
# mlgsl_poly.c:82:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    82 |       Store_field(r, 0, copy_double(x0));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_poly.c:83:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    83 |       Store_field(r, 1, copy_double(x1));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_poly.c:84:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    84 |       Store_field(r, 2, copy_double(x2));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_poly.c: In function 'ml_gsl_poly_complex_solve_cubic':
# mlgsl_poly.c:98:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    98 |     rz0 = alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_poly.c:101:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   101 |     rz1 = alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_poly.c:104:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   104 |     rz2 = alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_poly.c:107:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   107 |     r   = alloc_small(3, 0);
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_poly.c: In function 'ml_gsl_poly_complex_workspace_alloc':
# mlgsl_poly.c:116:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   116 | ML1_alloc(gsl_poly_complex_workspace_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_qrng.o -c mlgsl_qrng.c)
# In file included from mlgsl_qrng.c:8:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_qrng.c: In function 'ml_gsl_qrng_alloc':
# mlgsl_qrng.c:23:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    23 |   Abstract_ptr(r, gsl_qrng_alloc(qrngtype_val(type), Int_val(dim)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_qrng.c: In function 'ml_gsl_qrng_sample':
# mlgsl_qrng.c:46:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#    46 |   value arr = alloc(q->dimension * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_qrng.c: At top level:
# mlgsl_qrng.c:51:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    51 | ML1(gsl_qrng_name, Qrng_val, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_qrng.c: In function 'ml_gsl_qrng_clone':
# mlgsl_qrng.c:62:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    62 |   Abstract_ptr(r, gsl_qrng_clone(Qrng_val(qrng)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_randist.o -c mlgsl_randist.c)
# In file included from mlgsl_randist.c:11:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_randist.c:13:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_randist.c:14:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_randist.c: At top level:
# mlgsl_randist.c:17:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    17 | ML2(gsl_ran_gaussian, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                      
# mlgsl_randist.c:18:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    18 | ML2(gsl_ran_gaussian_ratio_method, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_randist.c:19:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    19 | ML2(gsl_ran_gaussian_ziggurat, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# mlgsl_randist.c:20:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    20 | ML2(gsl_ran_gaussian_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_randist.c:22:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    22 | ML1(gsl_ran_ugaussian, Rng_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_randist.c:23:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    23 | ML1(gsl_ran_ugaussian_ratio_method, Rng_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_randist.c:24:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    24 | ML1(gsl_ran_ugaussian_pdf, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_randist.c:28:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    28 | ML3(gsl_ran_gaussian_tail, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_randist.c:29:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    29 | ML3(gsl_ran_gaussian_tail_pdf, Double_val, Double_val, Double_val ,copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_randist.c:31:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    31 | ML2(gsl_ran_ugaussian_tail, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_randist.c:32:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    32 | ML2(gsl_ran_ugaussian_tail_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_randist.c:45:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    45 | ML5(gsl_ran_bivariate_gaussian_pdf, Double_val, Double_val, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_randist.c:68:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    68 | ML2(gsl_ran_exponential, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_randist.c:69:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    69 | ML2(gsl_ran_exponential_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_randist.c:72:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    72 | ML2(gsl_ran_laplace, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                       
# mlgsl_randist.c:73:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    73 | ML2(gsl_ran_laplace_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_randist.c:76:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    76 | ML3(gsl_ran_exppow, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_randist.c:77:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    77 | ML3(gsl_ran_exppow_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_randist.c:80:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    80 | ML2(gsl_ran_cauchy, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_randist.c:81:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    81 | ML2(gsl_ran_cauchy_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_randist.c:84:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    84 | ML2(gsl_ran_rayleigh, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                      
# mlgsl_randist.c:85:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    85 | ML2(gsl_ran_rayleigh_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_randist.c:88:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    88 | ML3(gsl_ran_rayleigh_tail, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_randist.c:89:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    89 | ML3(gsl_ran_rayleigh_tail_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_randist.c:92:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    92 | ML1(gsl_ran_landau, Rng_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_randist.c:93:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    93 | ML1(gsl_ran_landau_pdf, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_randist.c:96:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    96 | ML3(gsl_ran_levy, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_randist.c:99:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    99 | ML4(gsl_ran_levy_skew, Rng_val, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_randist.c:102:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   102 | ML3(gsl_ran_gamma, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# mlgsl_randist.c:103:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   103 | ML2(gsl_ran_gamma_int, Rng_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_randist.c:104:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   104 | ML3(gsl_ran_gamma_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_randist.c:105:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   105 | ML3(gsl_ran_gamma_mt, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~          
# mlgsl_randist.c:106:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   106 | ML3(gsl_ran_gamma_knuth, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_randist.c:109:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   109 | ML3(gsl_ran_flat, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_randist.c:110:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   110 | ML3(gsl_ran_flat_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_randist.c:113:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   113 | ML3(gsl_ran_lognormal, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_randist.c:114:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   114 | ML3(gsl_ran_lognormal_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
# mlgsl_randist.c:117:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   117 | ML2(gsl_ran_chisq, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_randist.c:118:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   118 | ML2(gsl_ran_chisq_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_randist.c: In function 'ml_gsl_ran_dirichlet_pdf':
# mlgsl_randist.c:139:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   139 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_randist.c: In function 'ml_gsl_ran_dirichlet_lnpdf':
# mlgsl_randist.c:150:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   150 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_randist.c: At top level:
# mlgsl_randist.c:154:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   154 | ML3(gsl_ran_fdist, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# mlgsl_randist.c:155:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   155 | ML3(gsl_ran_fdist_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_randist.c:158:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   158 | ML2(gsl_ran_tdist, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_randist.c:159:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   159 | ML2(gsl_ran_tdist_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_randist.c:162:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   162 | ML3(gsl_ran_beta, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_randist.c:163:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   163 | ML3(gsl_ran_beta_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_randist.c:166:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   166 | ML2(gsl_ran_logistic, Rng_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                      
# mlgsl_randist.c:167:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   167 | ML2(gsl_ran_logistic_pdf, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_randist.c:170:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   170 | ML3(gsl_ran_pareto, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_randist.c:171:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   171 | ML3(gsl_ran_pareto_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_randist.c: In function 'ml_gsl_ran_dir_3d':
# mlgsl_randist.c:195:13: warning: "alloc_tuple" is deprecated: use "caml_alloc_tuple" instead
#   195 |     r=alloc_tuple(3);
#       |             ^~~~~~~~~                                                        
# mlgsl_randist.c:196:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   196 |     Store_field(r, 0, copy_double(x));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_randist.c:197:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   197 |     Store_field(r, 1, copy_double(y));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_randist.c:198:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   198 |     Store_field(r, 2, copy_double(z));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_randist.c: At top level:
# mlgsl_randist.c:210:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   210 | ML3(gsl_ran_weibull, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_randist.c:211:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   211 | ML3(gsl_ran_weibull_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_randist.c:214:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   214 | ML3(gsl_ran_gumbel1, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_randist.c:215:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   215 | ML3(gsl_ran_gumbel1_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_randist.c:218:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   218 | ML3(gsl_ran_gumbel2, Rng_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_randist.c:219:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   219 | ML3(gsl_ran_gumbel2_pdf, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_randist.c:223:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   223 | ML2(gsl_ran_poisson_pdf, Int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_randist.c:227:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   227 | ML2(gsl_ran_bernoulli_pdf, Int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_randist.c:233:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   233 | ML3(gsl_ran_binomial_pdf, Int_val, Double_val, Int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_randist.c: In function 'ml_gsl_ran_multinomial':
# mlgsl_randist.c:244:13: warning: "alloc" is deprecated: use "caml_alloc" instead
#   244 |     r = alloc(K, 0);
#       |             ^~~~~~~~                                             
# mlgsl_randist.c: In function 'ml_gsl_ran_multinomial_pdf':
# mlgsl_randist.c:260:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   260 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_randist.c: In function 'ml_gsl_ran_multinomial_lnpdf':
# mlgsl_randist.c:272:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   272 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_randist.c: At top level:
# mlgsl_randist.c:278:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   278 | ML3(gsl_ran_negative_binomial_pdf, Int_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_randist.c:282:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   282 | ML3(gsl_ran_pascal_pdf, Int_val, Double_val, Int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_randist.c:286:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   286 | ML2(gsl_ran_geometric_pdf, Int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_randist.c:290:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   290 | ML4(gsl_ran_hypergeometric_pdf, Int_val, Int_val, Int_val, Int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_randist.c:294:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   294 | ML2(gsl_ran_logarithmic_pdf, Int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_randist.c: In function 'ml_gsl_ran_discrete_preproc':
# mlgsl_randist.c:346:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   346 |   Abstract_ptr(r, G);
#       |             ^~~~~~~~~                                                        
# mlgsl_randist.c: At top level:
# mlgsl_randist.c:352:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   352 | ML2(gsl_ran_discrete_pdf, Int_val, Discrete_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_rng.o -c mlgsl_rng.c)
# In file included from mlgsl_rng.c:13:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_rng.c: In function 'int_of_rngtype':
# mlgsl_rng.c:102:13: warning: "failwith" is deprecated: use "caml_failwith" instead
#   102 |     failwith("should not happen") ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_rng.c: In function 'ml_gsl_rng_get_default_seed':
# mlgsl_rng.c:112:13: warning: "copy_nativeint" is deprecated: use "caml_copy_nativeint" instead
#   112 |   return copy_nativeint(gsl_rng_default_seed);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# mlgsl_rng.c: In function 'ml_gsl_rng_alloc':
# mlgsl_rng.c:130:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   130 |   Abstract_ptr(r,gsl_rng_alloc(Rngtype_val(type)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_rng.c: In function 'ml_gsl_rng_name':
# mlgsl_rng.c:148:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   148 |   return copy_string(gsl_rng_name(Rng_val(rng)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_rng.c: In function 'ml_gsl_rng_max':
# mlgsl_rng.c:153:13: warning: "copy_nativeint" is deprecated: use "caml_copy_nativeint" instead
#   153 |   return copy_nativeint(gsl_rng_max(Rng_val(rng)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_rng.c: In function 'ml_gsl_rng_min':
# mlgsl_rng.c:158:13: warning: "copy_nativeint" is deprecated: use "caml_copy_nativeint" instead
#   158 |   return copy_nativeint(gsl_rng_min(Rng_val(rng)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_rng.c: In function 'ml_gsl_rng_clone':
# mlgsl_rng.c:175:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   175 |   Abstract_ptr(r, gsl_rng_clone(Rng_val(rng)));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_rng.c: In function 'ml_gsl_rng_dump_state':
# mlgsl_rng.c:186:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   186 |   n = copy_string(name);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_rng.c:188:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   188 |   v = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_rng.c: In function 'ml_gsl_rng_set_state':
# mlgsl_rng.c:200:13: warning: "string_length" is deprecated: use "caml_string_length" instead
#   200 |      gsl_rng_size(r) != string_length(state) )
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                   
# mlgsl_rng.c:201:13: warning: "invalid_argument" is deprecated: use "caml_invalid_argument" instead
#   201 |     invalid_argument("Gsl.Rng.set_state : wrong rng type");
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_rng.c:202:13: warning: "string_length" is deprecated: use "caml_string_length" instead
#   202 |   memcpy(r->state, Bp_val(state), string_length(state));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_rng.c: In function 'ml_gsl_rng_get':
# mlgsl_rng.c:209:13: warning: "copy_nativeint" is deprecated: use "caml_copy_nativeint" instead
#   209 |   return copy_nativeint(gsl_rng_get(Rng_val(rng))) ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# mlgsl_rng.c: In function 'ml_gsl_rng_uniform':
# mlgsl_rng.c:214:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   214 |   return copy_double(gsl_rng_uniform(Rng_val(rng))) ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_rng.c: In function 'ml_gsl_rng_uniform_pos':
# mlgsl_rng.c:219:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   219 |   return copy_double(gsl_rng_uniform_pos(Rng_val(rng))) ;
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_roots.o -c mlgsl_roots.c)
# In file included from mlgsl_roots.c:11:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_roots.c: In function 'ml_gsl_root_fsolver_alloc':
# mlgsl_roots.c:38:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    38 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_roots.c:43:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    43 |     res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_roots.c:51:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    51 |     register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                  
# mlgsl_roots.c: In function 'ml_gsl_root_fdfsolver_alloc':
# mlgsl_roots.c:62:13: warning: "stat_alloc" is deprecated: use "caml_stat_alloc" instead
#    62 |   params=stat_alloc(sizeof(*params));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_roots.c:67:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    67 |     res=alloc_small(2, Abstract_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_roots.c:77:13: warning: "register_global_root" is deprecated: use "caml_register_global_root" instead
#    77 |     register_global_root(&(params->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                  
# mlgsl_roots.c: In function 'ml_gsl_root_fsolver_free':
# mlgsl_roots.c:108:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   108 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_roots.c:109:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   109 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_roots.c: In function 'ml_gsl_root_fdfsolver_free':
# mlgsl_roots.c:117:13: warning: "remove_global_root" is deprecated: use "caml_remove_global_root" instead
#   117 |   remove_global_root(&(p->closure));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                                       
# mlgsl_roots.c:118:13: warning: "stat_free" is deprecated: use "caml_stat_free" instead
#   118 |   stat_free(p);
#       |             ^~~                                                          
# mlgsl_roots.c: At top level:
# mlgsl_roots.c:123:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   123 | ML1(gsl_root_fsolver_name, Fsolver_val, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_roots.c:124:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#   124 | ML1(gsl_root_fdfsolver_name, FDFsolver_val, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_roots.c:128:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   128 | ML1(gsl_root_fsolver_root, Fsolver_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_roots.c:129:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   129 | ML1(gsl_root_fdfsolver_root, FDFsolver_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_sf.o -c mlgsl_sf.c)
# In file included from mlgsl_sf.c:14:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_sf.c: In function 'val_of_result_pair':
# mlgsl_sf.c:27:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    27 |   v = alloc_small (2, 0);
#       |             ^~~~~~~~~~~~~                                                    
# mlgsl_sf.c: In function 'val_of_result_e10':
# mlgsl_sf.c:37:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    37 |   v = copy_double(result->val);
#       |             ^~~~~~~~~~~~~~~~~~~                                              
# mlgsl_sf.c:38:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    38 |   e = copy_double(result->err);
#       |             ^~~~~~~~~~~~~~~~~~~                                              
# mlgsl_sf.c:39:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    39 |   r = alloc_small(3, 0);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c: At top level:
# mlgsl_sf.c:104:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   104 | SF2(airy_Ai, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_sf.c:105:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   105 | SF2(airy_Bi, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_sf.c:106:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   106 | SF2(airy_Ai_scaled, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_sf.c:107:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   107 | SF2(airy_Bi_scaled, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                
# mlgsl_sf.c:108:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   108 | SF2(airy_Ai_deriv, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_sf.c:109:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   109 | SF2(airy_Bi_deriv, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                 
# mlgsl_sf.c:110:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   110 | SF2(airy_Ai_deriv_scaled, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:111:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   111 | SF2(airy_Bi_deriv_scaled, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:113:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   113 | SF1(airy_zero_Ai, Int_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:114:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   114 | SF1(airy_zero_Bi, Int_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:115:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   115 | SF1(airy_zero_Ai_deriv, Int_val)
#       |             ^~~~~~~~~~~~~~~~~~~~                                             
# mlgsl_sf.c:116:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   116 | SF1(airy_zero_Bi_deriv, Int_val)
#       |             ^~~~~~~~~~~~~~~~~~~~                                             
# mlgsl_sf.c:139:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   139 | BESSEL_CYL(J)
#       |             ^                                                                
# mlgsl_sf.c:139:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:139:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:140:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   140 | BESSEL_CYL(Y)
#       |             ^                                                                
# mlgsl_sf.c:140:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:140:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:141:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   141 | BESSEL_CYL(I)
#       |             ^                                                                
# mlgsl_sf.c:141:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:141:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:142:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   142 | BESSEL_CYL_SCALED(I)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:142:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:142:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:143:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   143 | BESSEL_CYL(K)
#       |             ^                                                                
# mlgsl_sf.c:143:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:143:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:144:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   144 | BESSEL_CYL_SCALED(K)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:144:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:144:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:164:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   164 | BESSEL_SPH(j)
#       |             ^                                                                
# mlgsl_sf.c:164:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:164:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:164:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:172:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   172 | BESSEL_SPH(y)
#       |             ^                                                                
# mlgsl_sf.c:172:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:172:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:172:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:173:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   173 | BESSEL_SPH_SCALED(i)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:173:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:173:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:174:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   174 | BESSEL_SPH_SCALED(k)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:174:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:174:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
# mlgsl_sf.c:176:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   176 | SF2(bessel_Jnu, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:184:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   184 | SF2(bessel_Ynu, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:185:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   185 | SF2(bessel_Inu, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:186:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   186 | SF2(bessel_Inu_scaled, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# mlgsl_sf.c:187:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   187 | SF2(bessel_Knu, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:188:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   188 | SF2(bessel_lnKnu, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_sf.c:189:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   189 | SF2(bessel_Knu_scaled, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# mlgsl_sf.c:191:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   191 | SF1(bessel_zero_J0, Int_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:192:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   192 | SF1(bessel_zero_J1, Int_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:193:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   193 | SF2(bessel_zero_Jnu, Double_val, Int_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_sf.c:196:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   196 | SF1(clausen, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:199:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   199 | SF2(hydrogenicR_1, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                   
# mlgsl_sf.c:200:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   200 | SF4(hydrogenicR, Int_val, Int_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_sf.c:215:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   215 | SF1(dawson, Double_val)
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:218:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   218 | SF1(debye_1, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:219:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   219 | SF1(debye_2, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:220:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   220 | SF1(debye_3, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:221:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   221 | SF1(debye_4, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:222:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   222 | SF1(debye_5, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:223:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   223 | SF1(debye_6, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:226:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   226 | SF1(dilog, Double_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:254:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   254 | SF2(ellint_Kcomp, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_sf.c:255:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   255 | SF2(ellint_Ecomp, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_sf.c:256:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   256 | SF3(ellint_Pcomp, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                      
# mlgsl_sf.c:257:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   257 | SF2(ellint_Dcomp, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                  
# mlgsl_sf.c:258:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   258 | SF3(ellint_F, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:259:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   259 | SF3(ellint_E, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:260:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   260 | SF4(ellint_P, Double_val, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_sf.c:263:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   263 | SF3(ellint_D, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:285:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   285 | SF3(ellint_RC, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_sf.c:286:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   286 | SF4(ellint_RD, Double_val, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# mlgsl_sf.c:287:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   287 | SF4(ellint_RF, Double_val, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# mlgsl_sf.c:288:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   288 | SF5(ellint_RJ, Double_val, Double_val, Double_val, Double_val, GSL_MODE_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
# mlgsl_sf.c:292:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   292 | SF1(erf, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:293:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   293 | SF1(erfc, Double_val)
#       |             ^~~~~~~~~                                                        
# mlgsl_sf.c:294:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   294 | SF1(log_erfc, Double_val)
#       |             ^~~~~~~~~~~~~                                                    
# mlgsl_sf.c:295:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   295 | SF1(erf_Z, Double_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:296:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   296 | SF1(erf_Q, Double_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:299:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   299 | SF1(exp, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:306:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   306 | SF2(exp_mult, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_sf.c:313:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   313 | SF1(expm1, Double_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:314:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   314 | SF1(exprel, Double_val)
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:315:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   315 | SF1(exprel_2, Double_val)
#       |             ^~~~~~~~~~~~~                                                    
# mlgsl_sf.c:316:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   316 | SF2(exprel_n, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                           
# mlgsl_sf.c:334:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   334 | SF1(expint_E1, Double_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:335:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   335 | SF1(expint_E2, Double_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:336:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   336 | SF1(expint_E1_scaled, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:337:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   337 | SF1(expint_E2_scaled, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:338:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   338 | SF1(expint_Ei, Double_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:339:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   339 | SF1(expint_Ei_scaled, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:340:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   340 | SF1(Shi, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:341:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   341 | SF1(Chi, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:342:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   342 | SF1(expint_3, Double_val)
#       |             ^~~~~~~~~~~~~                                                    
# mlgsl_sf.c:343:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   343 | SF1(Si, Double_val)
#       |             ^~~~~~~                                                          
# mlgsl_sf.c:344:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   344 | SF1(Ci, Double_val)
#       |             ^~~~~~~                                                          
# mlgsl_sf.c:345:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   345 | SF1(atanint, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:348:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   348 | SF1(fermi_dirac_m1, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~                                              
# mlgsl_sf.c:349:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   349 | SF1(fermi_dirac_0, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sf.c:350:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   350 | SF1(fermi_dirac_1, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sf.c:351:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   351 | SF1(fermi_dirac_2, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sf.c:352:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   352 | SF2(fermi_dirac_int, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                    
# mlgsl_sf.c:353:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   353 | SF1(fermi_dirac_mhalf, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                           
# mlgsl_sf.c:354:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   354 | SF1(fermi_dirac_half, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:355:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   355 | SF1(fermi_dirac_3half, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                           
# mlgsl_sf.c:356:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   356 | SF2(fermi_dirac_inc_0, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                               
# mlgsl_sf.c:359:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   359 | SF1(gamma, Double_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:360:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   360 | SF1(lngamma, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c: In function 'ml_gsl_sf_lngamma_sgn_e':
# mlgsl_sf.c:370:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   370 |     s=copy_double(sgn);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:371:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   371 |     v=alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c: At top level:
# mlgsl_sf.c:377:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   377 | SF1(gammastar, Double_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:378:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   378 | SF1(gammainv, Double_val)
#       |             ^~~~~~~~~~~~~                                                    
# mlgsl_sf.c:385:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   385 | SF2(taylorcoeff, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_sf.c:386:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   386 | SF1(fact, Int_val)
#       |             ^~~~~~                                                           
# mlgsl_sf.c:387:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   387 | SF1(doublefact, Int_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:388:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   388 | SF1(lnfact, Int_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:389:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   389 | SF1(lndoublefact, Int_val)
#       |             ^~~~~~~~~~~~~~                                                   
# mlgsl_sf.c:390:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   390 | SF2(choose, Int_val, Int_val)
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_sf.c:391:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   391 | SF2(lnchoose, Int_val, Int_val)
#       |             ^~~~~~~~~~~~~~~~~~~                                              
# mlgsl_sf.c:392:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   392 | SF2(poch, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:393:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   393 | SF2(lnpoch, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_sf.c: In function 'ml_gsl_sf_lnpoch_sgn_e':
# mlgsl_sf.c:403:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   403 |     s=copy_double(sgn);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:404:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   404 |     v=alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c: At top level:
# mlgsl_sf.c:410:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   410 | SF2(pochrel, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~                                         
# mlgsl_sf.c:411:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   411 | SF2(gamma_inc_Q, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# mlgsl_sf.c:412:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   412 | SF2(gamma_inc_P, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# mlgsl_sf.c:413:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   413 | SF2(gamma_inc, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~                                       
# mlgsl_sf.c:414:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   414 | SF2(beta, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:415:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   415 | SF2(lnbeta, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~                                          
# mlgsl_sf.c: In function 'ml_gsl_sf_lnbeta_sgn_e':
# mlgsl_sf.c:425:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   425 |     s=copy_double(sgn);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:426:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   426 |     v=alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c: At top level:
# mlgsl_sf.c:432:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   432 | SF3(beta_inc, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_sf.c:435:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   435 | SF2(gegenpoly_1, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# mlgsl_sf.c:436:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   436 | SF2(gegenpoly_2, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# mlgsl_sf.c:437:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   437 | SF2(gegenpoly_3, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     
# mlgsl_sf.c:438:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   438 | SF3(gegenpoly_n, Int_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_sf.c:449:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   449 | SF2(hyperg_0F1, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:450:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   450 | SF3(hyperg_1F1_int, Int_val, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_sf.c:451:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   451 | SF3(hyperg_1F1, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:452:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   452 | SF3(hyperg_U_int, Int_val, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_sf.c:459:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   459 | SF3(hyperg_U, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_sf.c:466:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   466 | SF4(hyperg_2F1 , Double_val, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~             
# mlgsl_sf.c:467:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   467 | SF4(hyperg_2F1_conj, Double_val, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_sf.c:468:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   468 | SF4(hyperg_2F1_renorm, Double_val, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_sf.c:469:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   469 | SF4(hyperg_2F1_conj_renorm, Double_val, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
# mlgsl_sf.c:470:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   470 | SF3(hyperg_2F0, Double_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                          
# mlgsl_sf.c:473:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   473 | SF2(laguerre_1, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:474:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   474 | SF2(laguerre_2, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:475:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   475 | SF2(laguerre_3, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~                                      
# mlgsl_sf.c:476:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   476 | SF3(laguerre_n, Int_val, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_sf.c:479:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   479 | SF1(lambert_W0, Double_val)
#       |             ^~~~~~~~~~~~~~~                                                  
# mlgsl_sf.c:480:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   480 | SF1(lambert_Wm1, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:483:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   483 | SF1(legendre_P1, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:484:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   484 | SF1(legendre_P2, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:485:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   485 | SF1(legendre_P3, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:486:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   486 | SF2(legendre_Pl, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_sf.c:494:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   494 | SF1(legendre_Q0, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:495:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   495 | SF1(legendre_Q1, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:496:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   496 | SF2(legendre_Ql, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~                                        
# mlgsl_sf.c:537:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   537 | SF3(legendre_Plm, Int_val, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# mlgsl_sf.c:538:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   538 | SF3(legendre_sphPlm, Int_val, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_sf.c:542:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   542 | SF1(log, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:543:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   543 | SF1(log_abs, Double_val)
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_sf.c:550:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   550 | SF1(log_1plusx, Double_val)
#       |             ^~~~~~~~~~~~~~~                                                  
# mlgsl_sf.c:551:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   551 | SF1(log_1plusx_mx, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sf.c:554:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   554 | SF2(pow_int, Double_val, Int_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~                                            
# mlgsl_sf.c:557:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   557 | SF1(psi_int, Int_val)
#       |             ^~~~~~~~~                                                        
# mlgsl_sf.c:558:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   558 | SF1(psi, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:559:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   559 | SF1(psi_1piy, Double_val)
#       |             ^~~~~~~~~~~~~                                                    
# mlgsl_sf.c:566:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   566 | SF1(psi_1_int, Int_val)
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:567:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   567 | SF1(psi_1, Double_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:568:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   568 | SF2(psi_n, Int_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~                                              
# mlgsl_sf.c:571:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   571 | SF1(synchrotron_1, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sf.c:572:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   572 | SF1(synchrotron_2, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sf.c:575:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   575 | SF1(transport_2, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:576:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   576 | SF1(transport_3, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:577:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   577 | SF1(transport_4, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:578:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   578 | SF1(transport_5, Double_val)
#       |             ^~~~~~~~~~~~~~~~                                                 
# mlgsl_sf.c:581:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   581 | SF1(sin, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:582:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   582 | SF1(cos, Double_val)
#       |             ^~~~~~~~                                                         
# mlgsl_sf.c:583:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   583 | SF2(hypot, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                           
# mlgsl_sf.c:584:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   584 | SF1(sinc, Double_val)
#       |             ^~~~~~~~~                                                        
# mlgsl_sf.c:603:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   603 | SF1(lnsinh, Double_val)
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:604:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   604 | SF1(lncosh, Double_val)
#       |             ^~~~~~~~~~~                                                      
# mlgsl_sf.c:617:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   617 | ML1(gsl_sf_angle_restrict_symm, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                     
# mlgsl_sf.c:618:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   618 | ML1(gsl_sf_angle_restrict_pos, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                      
# mlgsl_sf.c:623:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   623 | SF1(zeta_int, Int_val)
#       |             ^~~~~~~~~~                                                       
# mlgsl_sf.c:624:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   624 | SF1(zeta, Double_val)
#       |             ^~~~~~~~~                                                        
# mlgsl_sf.c:625:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   625 | SF2(hzeta, Double_val, Double_val)
#       |             ^~~~~~~~~~~~~~~~~~~~~~                                           
# mlgsl_sf.c:626:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   626 | SF1(eta_int, Int_val)
#       |             ^~~~~~~~~                                                        
# mlgsl_sf.c:627:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   627 | SF1(eta, Double_val)
#       |             ^~~~~~~~                                                         
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_sort.o -c mlgsl_sort.c)
# In file included from mlgsl_sort.c:11:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_sort.c:12:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_sort.c: In function 'ml_gsl_sort_vector_index':
# mlgsl_sort.c:27:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    27 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_sort.c:27:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    27 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_sort.c: In function 'ml_gsl_sort_vector_smallest_index':
# mlgsl_sort.c:55:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    55 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_sort.c:55:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    55 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# mlgsl_sort.c: In function 'ml_gsl_sort_vector_largest_index':
# mlgsl_sort.c:65:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    65 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                
# mlgsl_sort.c:65:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    65 |   GSL_PERMUT_OF_BIGARRAY(p);
#       |             ^~~~~~~~~~~~~~~~                                                   
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_stats.o -c mlgsl_stats.c)
# In file included from mlgsl_stats.c:12:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_stats.c: In function 'ml_gsl_stats_mean':
# mlgsl_stats.c:32:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    32 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_variance':
# mlgsl_stats.c:56:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    56 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_sd':
# mlgsl_stats.c:80:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    80 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_variance_with_fixed_mean':
# mlgsl_stats.c:98:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    98 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_sd_with_fixed_mean':
# mlgsl_stats.c:116:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   116 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_absdev':
# mlgsl_stats.c:140:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   140 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_skew':
# mlgsl_stats.c:155:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   155 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_skew_m_sd':
# mlgsl_stats.c:173:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   173 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_kurtosis':
# mlgsl_stats.c:188:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   188 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_kurtosis_m_sd':
# mlgsl_stats.c:206:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   206 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_lag1_autocorrelation':
# mlgsl_stats.c:218:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   218 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_covariance':
# mlgsl_stats.c:228:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   228 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_covariance_m':
# mlgsl_stats.c:240:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   240 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_max':
# mlgsl_stats.c:247:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   247 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_min':
# mlgsl_stats.c:254:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   254 |   return copy_double(result);
#       |             ^~~~~~~~~~~~~~~~~                                                
# mlgsl_stats.c: In function 'ml_gsl_stats_minmax_index':
# mlgsl_stats.c:285:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   285 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_stats.c: In function 'ml_gsl_stats_quantile_from_sorted_data':
# mlgsl_stats.c:296:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   296 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# mlgsl_stats.c: In function 'ml_gsl_stats_correlation':
# mlgsl_stats.c:306:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#   306 |   return copy_double(r);
#       |             ^~~~~~~~~~~~                                                     
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_sum.o -c mlgsl_sum.c)
# In file included from mlgsl_sum.c:10:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_sum.c: In function 'ml_gsl_sum_levin_u_alloc':
# mlgsl_sum.c:13:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    13 | ML1_alloc(gsl_sum_levin_u_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                      
# mlgsl_sum.c: In function 'ml_gsl_sum_levin_u_getinfo':
# mlgsl_sum.c:29:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    29 |   s=copy_double(W->sum_plain);
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sum.c:30:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    30 |   v=alloc_small(3, 0);
#       |             ^~~~~~~~~~                                                       
# mlgsl_sum.c: In function 'ml_gsl_sum_levin_utrunc_alloc':
# mlgsl_sum.c:38:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    38 | ML1_alloc(gsl_sum_levin_utrunc_alloc, Int_val, Abstract_ptr)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_sum.c: In function 'ml_gsl_sum_levin_utrunc_getinfo':
# mlgsl_sum.c:54:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    54 |   s=copy_double(W->sum_plain);
#       |             ^~~~~~~~~~~~~~~~~~                                               
# mlgsl_sum.c:55:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    55 |   v=alloc_small(3, 0);
#       |             ^~~~~~~~~~                                                       
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_vector_double.o -c mlgsl_vector_double.c)
# In file included from mlgsl_vector.h:9,
#                  from mlgsl_vector_double.h:9,
#                  from mlgsl_vector_double.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_double.h:9,
#                  from mlgsl_vector_double.c:2:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_double.c:4:
# mlgsl_vector_impl.h: In function 'ml_gsl_vector_max':
# mlgsl_vector_impl.h:80:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    80 |   return copy_double(FUNCTION(gsl_vector,max)(&v_a));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector_impl.h: In function 'ml_gsl_vector_min':
# mlgsl_vector_impl.h:87:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    87 |   return copy_double(FUNCTION(gsl_vector,min)(&v_a));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector_impl.h: In function 'ml_gsl_vector_minmaxindex':
# mlgsl_vector_impl.h:120:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   120 |   v=alloc_small(2, 0);
#       |             ^~~~~~~~~~                                                       
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_vector_float.o -c mlgsl_vector_float.c)
# In file included from mlgsl_vector_float.h:1,
#                  from mlgsl_vector_float.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_vector_float.h:10,
#                  from mlgsl_vector_float.c:2:
# mlgsl_vector.h: In function 'mlgsl_vec_of_bigarray_float':
# mlgsl_vector.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vvec);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# In file included from mlgsl_vector_float.c:4:
# mlgsl_vector_impl.h: In function 'ml_gsl_vector_float_max':
# mlgsl_vector_impl.h:80:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    80 |   return copy_double(FUNCTION(gsl_vector,max)(&v_a));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector_impl.h: In function 'ml_gsl_vector_float_min':
# mlgsl_vector_impl.h:87:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    87 |   return copy_double(FUNCTION(gsl_vector,min)(&v_a));
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_vector_impl.h: In function 'ml_gsl_vector_float_minmaxindex':
# mlgsl_vector_impl.h:120:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#   120 |   v=alloc_small(2, 0);
#       |             ^~~~~~~~~~                                                       
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_wavelet.o -c mlgsl_wavelet.c)
# In file included from mlgsl_matrix.h:9,
#                  from mlgsl_matrix_double.h:11,
#                  from mlgsl_wavelet.c:13:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# In file included from mlgsl_matrix_double.h:11,
#                  from mlgsl_wavelet.c:13:
# mlgsl_matrix.h: In function 'mlgsl_mat_of_bigarray':
# mlgsl_matrix.h:17:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_matrix.h:17:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    17 |   struct caml_bigarray *bigarr = Bigarray_val(vmat);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_wavelet.c: In function 'ml_gsl_wavelet_alloc':
# mlgsl_wavelet.c:35:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    35 |   Abstract_ptr (r, w);
#       |             ^~~~~~~~~~                                                       
# mlgsl_wavelet.c: At top level:
# mlgsl_wavelet.c:42:13: warning: "copy_string" is deprecated: use "caml_copy_string" instead
#    42 | ML1 (gsl_wavelet_name, Wavelet_val, copy_string)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                             
# mlgsl_wavelet.c: In function 'ml_gsl_wavelet_workspace_alloc':
# mlgsl_wavelet.c:50:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    50 |   Abstract_ptr (r, ws);
#       |             ^~~~~~~~~~~                                                      
# mlgsl_wavelet.c: In function 'ml_gsl_wavelet_transform_bigarray':
# mlgsl_wavelet.c:99:13: warning: "caml_bigarray" is deprecated: use "caml_ba_array" instead
#    99 |   struct caml_bigarray *bigarr = Bigarray_val(b);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                           
# mlgsl_wavelet.c:99:13: warning: "Bigarray_val" is deprecated: use "Caml_ba_array_val" instead
#    99 |   struct caml_bigarray *bigarr = Bigarray_val(b);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                              
# (cd _build/default/src && /usr/bin/gcc -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -D_FILE_OFFSET_BITS=64 -O2 -fno-strict-aliasing -fwrapv -pthread -fPIC -fPIC -DPIC -Wno-unused-parameter -g -I /home/opam/.opam/4.14/lib/ocaml -o mlgsl_cdf.o -c mlgsl_cdf.c)
# In file included from mlgsl_cdf.c:2:
# wrappers.h: In function 'copy_two_double':
# wrappers.h:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 |   va = copy_double(a);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 |   vb = copy_double(b);
#       |             ^~~~~~~~~~                                                       
# wrappers.h:36:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    36 |   r = alloc_small(2, 0);
#       |             ^~~~~~~~~~~~                                                     
# wrappers.h: In function 'copy_two_double_arr':
# wrappers.h:45:13: warning: "alloc_small" is deprecated: use "caml_alloc_small" instead
#    45 |   r=alloc_small(2 * Double_wosize, Double_array_tag);
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                        
# mlgsl_cdf.c: At top level:
# mlgsl_cdf.c:4:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#     4 | ML1(gsl_cdf_ugaussian_P, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_cdf.c:5:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#     5 | ML1(gsl_cdf_ugaussian_Q, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                            
# mlgsl_cdf.c:6:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#     6 | ML1(gsl_cdf_ugaussian_Pinv, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_cdf.c:7:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#     7 | ML1(gsl_cdf_ugaussian_Qinv, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                         
# mlgsl_cdf.c:8:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#     8 | ML2(gsl_cdf_gaussian_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:9:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#     9 | ML2(gsl_cdf_gaussian_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:10:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    10 | ML2(gsl_cdf_gaussian_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:11:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    11 | ML2(gsl_cdf_gaussian_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:12:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    12 | ML3(gsl_cdf_gamma_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        
# mlgsl_cdf.c:13:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    13 | ML3(gsl_cdf_gamma_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        
# mlgsl_cdf.c:14:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    14 | ML3(gsl_cdf_gamma_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_cdf.c:15:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    15 | ML3(gsl_cdf_gamma_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_cdf.c:16:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    16 | ML2(gsl_cdf_cauchy_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_cdf.c:17:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    17 | ML2(gsl_cdf_cauchy_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                   
# mlgsl_cdf.c:18:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    18 | ML2(gsl_cdf_cauchy_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_cdf.c:19:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    19 | ML2(gsl_cdf_cauchy_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                
# mlgsl_cdf.c:20:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    20 | ML2(gsl_cdf_laplace_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_cdf.c:21:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    21 | ML2(gsl_cdf_laplace_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
# mlgsl_cdf.c:22:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    22 | ML2(gsl_cdf_laplace_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_cdf.c:23:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    23 | ML2(gsl_cdf_laplace_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               
# mlgsl_cdf.c:24:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    24 | ML2(gsl_cdf_rayleigh_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:25:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    25 | ML2(gsl_cdf_rayleigh_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:26:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    26 | ML2(gsl_cdf_rayleigh_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:27:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    27 | ML2(gsl_cdf_rayleigh_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:28:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    28 | ML2(gsl_cdf_chisq_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_cdf.c:29:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    29 | ML2(gsl_cdf_chisq_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_cdf.c:30:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    30 | ML2(gsl_cdf_chisq_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:31:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    31 | ML2(gsl_cdf_chisq_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:32:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    32 | ML2(gsl_cdf_exponential_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:33:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    33 | ML2(gsl_cdf_exponential_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:34:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    34 | ML2(gsl_cdf_exponential_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_cdf.c:35:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    35 | ML2(gsl_cdf_exponential_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           
# mlgsl_cdf.c:36:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    36 | ML3(gsl_cdf_exppow_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_cdf.c:37:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    37 | ML3(gsl_cdf_exppow_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_cdf.c:38:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    38 | ML2(gsl_cdf_tdist_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_cdf.c:39:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    39 | ML2(gsl_cdf_tdist_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                    
# mlgsl_cdf.c:40:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    40 | ML2(gsl_cdf_tdist_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:41:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    41 | ML2(gsl_cdf_tdist_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:42:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    42 | ML3(gsl_cdf_fdist_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        
# mlgsl_cdf.c:43:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    43 | ML3(gsl_cdf_fdist_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        
# mlgsl_cdf.c:44:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    44 | ML3(gsl_cdf_fdist_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_cdf.c:45:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    45 | ML3(gsl_cdf_fdist_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~     
# mlgsl_cdf.c:46:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    46 | ML3(gsl_cdf_beta_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_cdf.c:47:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    47 | ML3(gsl_cdf_beta_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_cdf.c:48:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    48 | ML3(gsl_cdf_beta_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:49:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    49 | ML3(gsl_cdf_beta_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:50:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    50 | ML3(gsl_cdf_flat_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_cdf.c:51:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    51 | ML3(gsl_cdf_flat_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         
# mlgsl_cdf.c:52:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    52 | ML3(gsl_cdf_flat_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:53:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    53 | ML3(gsl_cdf_flat_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:54:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    54 | ML3(gsl_cdf_lognormal_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_cdf.c:55:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    55 | ML3(gsl_cdf_lognormal_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_cdf.c:56:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    56 | ML3(gsl_cdf_lognormal_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
# mlgsl_cdf.c:57:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    57 | ML3(gsl_cdf_lognormal_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
# mlgsl_cdf.c:58:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    58 | ML3(gsl_cdf_gumbel1_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:59:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    59 | ML3(gsl_cdf_gumbel1_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:60:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    60 | ML3(gsl_cdf_gumbel1_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
# mlgsl_cdf.c:61:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    61 | ML3(gsl_cdf_gumbel1_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
# mlgsl_cdf.c:62:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    62 | ML3(gsl_cdf_gumbel2_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:63:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    63 | ML3(gsl_cdf_gumbel2_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:64:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    64 | ML3(gsl_cdf_gumbel2_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
# mlgsl_cdf.c:65:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    65 | ML3(gsl_cdf_gumbel2_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
# mlgsl_cdf.c:66:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    66 | ML3(gsl_cdf_weibull_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:67:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    67 | ML3(gsl_cdf_weibull_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      
# mlgsl_cdf.c:68:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    68 | ML3(gsl_cdf_weibull_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
# mlgsl_cdf.c:69:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    69 | ML3(gsl_cdf_weibull_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
# mlgsl_cdf.c:70:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    70 | ML3(gsl_cdf_pareto_P, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_cdf.c:71:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    71 | ML3(gsl_cdf_pareto_Q, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~       
# mlgsl_cdf.c:72:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    72 | ML3(gsl_cdf_pareto_Pinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_cdf.c:73:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    73 | ML3(gsl_cdf_pareto_Qinv, Double_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
# mlgsl_cdf.c:74:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    74 | ML2(gsl_cdf_logistic_P, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:75:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    75 | ML2(gsl_cdf_logistic_Q, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
# mlgsl_cdf.c:76:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    76 | ML2(gsl_cdf_logistic_Pinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:77:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    77 | ML2(gsl_cdf_logistic_Qinv, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~              
# mlgsl_cdf.c:78:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    78 | ML3(gsl_cdf_binomial_P, Unsigned_int_val, Double_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:79:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    79 | ML3(gsl_cdf_binomial_Q, Unsigned_int_val, Double_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:80:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    80 | ML2(gsl_cdf_poisson_P, Unsigned_int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_cdf.c:81:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    81 | ML2(gsl_cdf_poisson_Q, Unsigned_int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
# mlgsl_cdf.c:82:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    82 | ML2(gsl_cdf_geometric_P, Unsigned_int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~          
# mlgsl_cdf.c:83:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    83 | ML2(gsl_cdf_geometric_Q, Unsigned_int_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~          
# mlgsl_cdf.c:84:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    84 | ML3(gsl_cdf_negative_binomial_P, Unsigned_int_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:85:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    85 | ML3(gsl_cdf_negative_binomial_Q, Unsigned_int_val, Double_val, Double_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:86:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    86 | ML3(gsl_cdf_pascal_P, Unsigned_int_val, Double_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:87:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    87 | ML3(gsl_cdf_pascal_Q, Unsigned_int_val, Double_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:88:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    88 | ML4(gsl_cdf_hypergeometric_P, Unsigned_int_val, Unsigned_int_val, Unsigned_int_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# mlgsl_cdf.c:89:13: warning: "copy_double" is deprecated: use "caml_copy_double" instead
#    89 | ML4(gsl_cdf_hypergeometric_Q, Unsigned_int_val, Unsigned_int_val, Unsigned_int_val, Unsigned_int_val, copy_double)
#       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build gsl 1.24.3
+- 
+- The following changes have been performed
| - install angstrom            0.15.0
| - install angstrom-unix       0.15.0
| - install base                v0.14.3
| - install base64              3.5.0
| - install base_bigstring      v0.14.0
| - install base_quickcheck     v0.14.1
| - install bigstringaf         0.9.0
| - install bin_prot            v0.14.1
| - install biocaml             0.11.1
| - install camlzip             1.11
| - install cfstream            1.3.1
| - install conf-blas           1
| - install conf-gsl            2
| - install conf-lapack         1
| - install conf-m4             1
| - install conf-pkg-config     2
| - install conf-zlib           1
| - install core                v0.14.1
| - install core_kernel         v0.14.2
| - install cppo                1.6.9
| - install csexp               1.5.1
| - install dune-configurator   3.4.1
| - install fieldslib           v0.14.0
| - install jane-street-headers v0.14.0
| - install jst-config          v0.14.1
| - install lacaml              11.0.8
| - install menhir              20220210
| - install menhirLib           20220210
| - install menhirSdk           20220210
| - install num                 1.4
| - install ocaml-compiler-libs v0.12.4
| - install ocaml-syntax-shims  1.0.0
| - install ocamlbuild          0.14.1
| - install octavius            1.2.2
| - install parsexp             v0.14.2
| - install ppx_assert          v0.14.0
| - install ppx_base            v0.14.0
| - install ppx_bench           v0.14.1
| - install ppx_bin_prot        v0.14.0
| - install ppx_cold            v0.14.0
| - install ppx_compare         v0.14.0
| - install ppx_custom_printf   v0.14.1
| - install ppx_derivers        1.2.1
| - install ppx_deriving        5.2.1
| - install ppx_enumerate       v0.14.0
| - install ppx_expect          v0.14.2
| - install ppx_fields_conv     v0.14.2
| - install ppx_fixed_literal   v0.14.0
| - install ppx_hash            v0.14.0
| - install ppx_here            v0.14.0
| - install ppx_inline_test     v0.14.1
| - install ppx_jane            v0.14.0
| - install ppx_js_style        v0.14.1
| - install ppx_let             v0.14.0
| - install ppx_module_timer    v0.14.0
| - install ppx_optcomp         v0.14.3
| - install ppx_optional        v0.14.0
| - install ppx_pipebang        v0.14.0
| - install ppx_sexp_conv       v0.14.3
| - install ppx_sexp_message    v0.14.1
| - install ppx_sexp_value      v0.14.0
| - install ppx_stable          v0.14.1
| - install ppx_string          v0.14.1
| - install ppx_typerep_conv    v0.14.2
| - install ppx_variants_conv   v0.14.2
| - install ppxlib              0.25.1
| - install printbox            0.5
| - install re                  1.10.4
| - install result              1.5
| - install rresult             0.7.0
| - install seq                 base
| - install sexplib             v0.14.0
| - install sexplib0            v0.14.0
| - install spawn               v0.15.1
| - install splittable_random   v0.14.0
| - install stdio               v0.14.0
| - install stringext           1.6.0
| - install time_now            v0.14.0
| - install timezone            v0.14.0
| - install topkg               1.0.5
| - install typerep             v0.14.0
| - install uri                 4.2.0
| - install variantslib         v0.14.0
| - install xmlm                1.4.0
+- 
# Run eval $(opam env) to update the current shell environment

The former state can be restored with:
    /usr/bin/opam switch import "/home/opam/.opam/4.14/.opam-switch/backup/state-20220726184037.export"
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
"/bin/bash" "-c"
"opam remove phylogenetics.0.1.0 && opam install --deps-only phylogenetics.0.1.0 && opam install -v phylogenetics.0.1.0;
        res=$?;
        test "$res" != 31 && exit "$res";
        export OPAMCLI=2.0;
        build_dir=$(opam var prefix)/.opam-switch/build;
        failed=$(ls "$build_dir");
        for pkg in $failed; do
          if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-11\""; then
            echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
          fi;
        done;
        exit 1" failed with exit status 1
2022-07-26 18:45.19: Job failed: Failed: Build failed
2022-07-26 18:45.19: Log analysis:
2022-07-26 18:45.19: >>> 
[ERROR] The compilation of gsl.1.24.3 failed at "dune build -p gsl -j 1".
 (score = 20)
2022-07-26 18:45.19: >>> 
# Fatal error: exception Sys_error("gsl_include.sexp: No such file or directory")
 (score = 35)
2022-07-26 18:45.19: exception Sys_error("gsl_include.sexp: No such file or directory")