Building on x86-bm-c13.sw.ocaml.org (from ocaml/opam:debian-unstable) Unable to find image 'ocaml/opam:debian-unstable' locally debian-unstable: Pulling from ocaml/opam Digest: sha256:a708df2d96414c61dc47c9f06e6c2d22e9a6350ad772417bd0e7a3550e440e73 Status: Downloaded newer image for ocaml/opam:debian-unstable 2024-08-04 19:37.44 ---> using "0acd5aeaa8f7bc314514d9795d14a7f12ec72a6a5b11c5904350189734c6859b" from cache /: (user (uid 1000) (gid 1000)) /: (env OPAMPRECISETRACKING 1) /: (env OPAMUTF8 never) /: (env OPAMEXTERNALSOLVER builtin-0install) /: (env OPAMCRITERIA +removed) /: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam")) 2024-08-04 19:37.44 ---> using "65c3237f501f7c75f3828458ecf2342bc41c98aaef8c6a7fd82bf46a58cb258c" from cache /: (run (network host) (shell "rm -rf ~/opam-repository && git clone -q 'https://github.com/ocaml/opam-repository' ~/opam-repository && git -C ~/opam-repository checkout -q fe8dffac61bbab376897c0f4e7cc5b7b8c4eecc1")) 2024-08-04 19:37.44 ---> using "828e9194b01b44f44dbe3a17fa70d9df857e6edbfbc28830335e417ee457f303" from cache /: (run (shell "rm -rf ~/.opam && opam init -ya --bare --config ~/.opamrc-sandbox ~/opam-repository")) 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. <><> Fetching repository information ><><><><><><><><><><><><><><><><><><><><><> [default] Initialised User configuration: ~/.profile is already up-to-date. [NOTE] Make sure that ~/.profile is well sourced in your ~/.bashrc. 2024-08-04 19:37.44 ---> using "e4c5e8d9ee051813ad71799bcfd0cce33f59a36ff0befb5e5fbb9434b383bc16" from cache /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam switch create --repositories=default '4.09' '4.09.1'")) <><> Installing new switch packages <><><><><><><><><><><><><><><><><><><><><><> Switch invariant: ["ocaml-base-compiler" {= "4.09.1"} | "ocaml-system" {= "4.09.1"}] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved ocaml-config.1 (cached) -> installed base-bigarray.base -> installed base-threads.base -> installed base-unix.base -> retrieved ocaml-base-compiler.4.09.1 (cached) -> installed ocaml-base-compiler.4.09.1 -> installed ocaml-config.1 -> installed ocaml.4.09.1 Done. # Run eval $(opam env --switch=4.09) to update the current shell environment 2024-08-04 19:37.44 ---> using "4a65b96fe4e1e667a24d374e0c36c558af55dfafc244249763f3ba8dcf62a02e" from cache /: (run (network host) (shell "opam update --depexts")) + /usr/bin/sudo "apt-get" "update" - Get:1 http://deb.debian.org/debian unstable InRelease [198 kB] - Get:2 http://deb.debian.org/debian unstable/main amd64 Packages.diff/Index [63.6 kB] - Get:3 http://deb.debian.org/debian unstable/main amd64 Packages T-2024-08-04-1414.55-F-2024-07-29-1441.34.pdiff [496 kB] - Get:3 http://deb.debian.org/debian unstable/main amd64 Packages T-2024-08-04-1414.55-F-2024-07-29-1441.34.pdiff [496 kB] - Fetched 758 kB in 4s (204 kB/s) - Reading package lists... - 2024-08-04 19:37.44 ---> using "9b1e961db1db18e0280a8f7c88aa8b92f6f78c7aaceb7b3415970623322842d4" from cache /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "\ \nopam remove -y \"caper.0.9\"\ \nopam install -vy \"caper.0.9\"\ \nres=$?\ \nif [ $res = 31 ]; then\ \n if opam show -f x-ci-accept-failures: \"caper.0.9\" | grep -q '\"debian-unstable\"'; then\ \n echo \"This package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\"\ \n exit 69\ \n fi\ \nfi\ \n\ \n\ \nexit $res\ \n")) [NOTE] caper.0.9 is not installed. Nothing to do. The following actions will be performed: === install 14 packages - install angstrom 0.16.0 [required by caper] - install bigstringaf 0.10.0 [required by angstrom] - install caper 0.9 - install conf-m4 1 [required by caper] - install csexp 1.5.2 [required by dune-configurator] - install dune 3.16.0 [required by angstrom, menhir] - install dune-configurator 3.16.0 [required by bigstringaf] - install menhir 20240715 [required by caper] - install menhirCST 20240715 [required by menhir] - install menhirLib 20240715 [required by menhir] - install menhirSdk 20240715 [required by menhir] - install ocaml-syntax-shims 1.0.0 [required by angstrom] - install ocamlbuild 0.15.0 [required by caper] - install ocamlfind 1.9.6 [required by caper] The following system packages will first need to be installed: m4 <><> 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. Continue anyway, and, upon success, 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" "m4" - debconf: delaying package configuration, since apt-utils is not installed - Selecting previously unselected package m4. - (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 ... 19456 files and directories currently installed.) - Preparing to unpack .../archives/m4_1.4.19-4_amd64.deb ... - Unpacking m4 (1.4.19-4) ... - Setting up m4 (1.4.19-4) ... <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> Processing 1/38: [angstrom.0.16.0: extract] Processing 2/38: [angstrom.0.16.0: extract] [bigstringaf.0.10.0: extract] Processing 3/38: [angstrom.0.16.0: extract] [bigstringaf.0.10.0: extract] [caper.0.9: http] -> retrieved bigstringaf.0.10.0 (cached) Processing 3/38: [angstrom.0.16.0: extract] [caper.0.9: http] Processing 4/38: [angstrom.0.16.0: extract] [caper.0.9: http] Processing 5/38: [angstrom.0.16.0: extract] [caper.0.9: http] [csexp.1.5.2: extract] Processing 6/38: [angstrom.0.16.0: extract] [caper.0.9: http] [csexp.1.5.2: extract] [conf-m4: sh echo | m4] -> retrieved csexp.1.5.2 (cached) Processing 6/38: [angstrom.0.16.0: extract] [caper.0.9: http] [conf-m4: sh echo | m4] Processing 7/38: [angstrom.0.16.0: extract] [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [conf-m4: sh echo | m4] -> retrieved angstrom.0.16.0 (cached) Processing 7/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [conf-m4: sh echo | m4] Processing 8/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [menhir.20240715 + 3 others: extract] [conf-m4: sh echo | m4] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "sh" "-exc" "echo | m4" (CWD=/home/opam/.opam/4.09/.opam-switch/build/conf-m4.1) - + m4 - + echo - -> compiled conf-m4.1 Processing 8/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [menhir.20240715 + 3 others: extract] -> installed conf-m4.1 Processing 9/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [menhir.20240715 + 3 others: extract] -> retrieved menhir.20240715, menhirCST.20240715, menhirLib.20240715, menhirSdk.20240715 (cached) Processing 9/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] Processing 10/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [ocaml-syntax-shims.1.0.0: extract] Processing 10/38: [caper.0.9: extract] [dune.3.16.0, dune-configurator.3.16.0: extract] [ocaml-syntax-shims.1.0.0: extract] -> retrieved ocaml-syntax-shims.1.0.0 (cached) Processing 10/38: [caper.0.9: extract] [dune.3.16.0, dune-configurator.3.16.0: extract] Processing 11/38: [caper.0.9: extract] [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild.0.15.0: extract] -> retrieved caper.0.9 (https://gitlab.com/wooloo/caper/-/archive/81f6bd105429e5758bf97624fe1de1b687eb80f4/caper-81f6bd105429e5758bf97624fe1de1b687eb80f4.tar.gz) Processing 11/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild.0.15.0: extract] Processing 12/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild.0.15.0: extract] [ocamlfind.1.9.6: extract] -> retrieved ocamlbuild.0.15.0 (cached) Processing 12/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlfind.1.9.6: extract] Processing 13/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlfind.1.9.6: extract] [ocamlbuild: make configure.make] -> retrieved ocamlfind.1.9.6 (cached) Processing 13/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild: make configure.make] [ocamlfind: patch] applying 0001-Harden-test-for-OCaml-5.patch Processing 14/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild: make configure.make] [ocamlfind: patch] -> retrieved dune.3.16.0, dune-configurator.3.16.0 (cached) Processing 14/38: [ocamlbuild: make configure.make] [ocamlfind: patch] Processing 15/38: [dune: ocaml 39] [ocamlbuild: make configure.make] [ocamlfind: patch] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "-f" "configure.make" "all" "OCAMLBUILD_PREFIX=/home/opam/.opam/4.09" "OCAMLBUILD_BINDIR=/home/opam/.opam/4.09/bin" "OCAMLBUILD_LIBDIR=/home/opam/.opam/4.09/lib" "OCAMLBUILD_MANDIR=/home/opam/.opam/4.09/man" "OCAML_NATIVE=true" "OCAML_NATIVE_TOOLS=true" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0) - (echo "# This file was generated from configure.make"; \ - echo ;\ - echo "OCAML_PREFIX="; \ - echo "OCAML_BINDIR=/home/opam/.opam/4.09/bin"; \ - echo "OCAML_LIBDIR=/home/opam/.opam/4.09/lib/ocaml"; \ - echo "OCAML_MANDIR=/home/opam/.opam/4.09/man"; \ - echo ;\ - echo "EXT_OBJ=.o"; \ - echo "EXT_ASM=.s"; \ - echo "EXT_LIB=.a"; \ - echo "EXT_DLL=.so"; \ - echo "EXE="; \ - echo ;\ - echo "OCAML_NATIVE=true"; \ - echo "OCAML_NATIVE_TOOLS=true"; \ - echo "NATDYNLINK=true"; \ - echo "SUPPORT_SHARED_LIBRARIES=true"; \ - echo ;\ - echo "PREFIX=/home/opam/.opam/4.09"; \ - echo "BINDIR=/home/opam/.opam/4.09/bin"; \ - echo "LIBDIR=/home/opam/.opam/4.09/lib"; \ - echo "MANDIR=/home/opam/.opam/4.09/man"; \ - ) > Makefile.config - (echo "(* This file was generated from ../configure.make *)"; \ - echo ;\ - echo 'let bindir = {|/home/opam/.opam/4.09/bin|}'; \ - echo 'let libdir = {|/home/opam/.opam/4.09/lib|}'; \ - echo 'let ocaml_libdir = {|/home/opam/.opam/4.09/lib/ocaml|}'; \ - echo 'let libdir_abs = {|/home/opam/.opam/4.09/lib|}'; \ - echo 'let ocaml_native = true'; \ - echo 'let ocaml_native_tools = true'; \ - echo 'let supports_shared_libraries = true';\ - echo 'let a = "a"'; \ - echo 'let o = "o"'; \ - echo 'let so = "so"'; \ - echo 'let ext_dll = ".so"'; \ - echo 'let exe = ""'; \ - echo 'let version = "0.15.0"'; \ - ) > src/ocamlbuild_config.ml Processing 15/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] [ocamlfind: patch] Processing 15/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "./configure" "-bindir" "/home/opam/.opam/4.09/bin" "-sitelib" "/home/opam/.opam/4.09/lib" "-mandir" "/home/opam/.opam/4.09/man" "-config" "/home/opam/.opam/4.09/lib/findlib.conf" "-no-custom" "-no-camlp4" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6) - Welcome to findlib version 1.9.6 - Configuring core... - Checking for #remove_directory... - Testing threading model... - systhread_supported: true - Testing DLLs... - Testing whether ppxopt can be supported... - Checking for ocamlc -opaque... - Checking for ocamlopt -g... - Querying installation: META list not found - make install will double-check installed META files - Configuring libraries... - unix: found - dynlink: found - bigarray: found - compiler-libs: found - dbm: not present (normal since 4.00) - graphics: not present (normal since 4.09) - num: not present (normal since 4.06) - ocamlbuild: not present (normal since 4.03) - ocamldoc: found (in +ocamldoc) - raw_spacetime: found - threads: found (in +threads) - str: found - labltk: not present (normal since 4.02) - native dynlink: found - camlp4: disabled - bytes: found, installing fake library - Configuration for stdlib written to site-lib-src/stdlib/META - Configuration for unix written to site-lib-src/unix/META - Configuration for dynlink written to site-lib-src/dynlink/META - Configuration for bigarray written to site-lib-src/bigarray/META - Configuration for compiler-libs written to site-lib-src/compiler-libs/META - Configuration for ocamldoc written to site-lib-src/ocamldoc/META - Configuration for raw_spacetime written to site-lib-src/raw_spacetime/META - Configuration for threads written to site-lib-src/threads/META - Configuration for str written to site-lib-src/str/META - Configuration for bytes written to site-lib-src/bytes/META - Detecting compiler arguments: (extractor built) ok - - About the OCAML core installation: - Standard library: /home/opam/.opam/4.09/lib/ocaml - Binaries: /home/opam/.opam/4.09/bin - Manual pages: /home/opam/.opam/4.09/man - Multi-threading type: posix - The directory of site-specific packages will be - site-lib: /home/opam/.opam/4.09/lib - The configuration file is written to: - findlib config file: /home/opam/.opam/4.09/lib/findlib.conf - Software will be installed: - Libraries: in <site-lib>/findlib - Binaries: /home/opam/.opam/4.09/bin - Manual pages: /home/opam/.opam/4.09/man - topfind script: /home/opam/.opam/4.09/lib/ocaml - Topfind ppxopt support: yes - Toolbox: no - Link custom runtime: no - Need bytes compatibility: no - - Configuration has been written to Makefile.config - - You can now do 'make all', and optionally 'make opt', to build ocamlfind. Processing 15/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make all] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "all" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6) - for p in findlib; do ( cd src/$p; make all ) || exit; done - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - ocamllex fl_meta.mll - 22 states, 392 transitions, table size 1700 bytes - USE_CYGPATH="0"; \ - export USE_CYGPATH; \ - cat findlib_config.mlp | \ - ../../tools/patch '@CONFIGFILE@' '/home/opam/.opam/4.09/lib/findlib.conf' | \ - ../../tools/patch '@STDLIB@' '/home/opam/.opam/4.09/lib/ocaml' | \ - sed -e 's;@AUTOLINK@;true;g' \ - -e 's;@SYSTEM@;linux;g' \ - >findlib_config.ml - if [ "true" = "true" ]; then \ - cp topfind.ml.in topfind.ml; \ - else \ - sed -e '/PPXOPT_BEGIN/,/PPXOPT_END/ d' topfind.ml.in \ - > topfind.ml ; \ - fi - ocamldep *.ml *.mli >depend - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c findlib_config.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_split.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_metatoken.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_meta.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_metascanner.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_metascanner.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_topo.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_topo.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_package_base.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_package_base.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c findlib.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c findlib.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_args.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_lint.ml - ocamlc -I +compiler-libs -a -o findlib.cma findlib_config.cmo fl_split.cmo fl_metatoken.cmo fl_meta.cmo fl_metascanner.cmo fl_topo.cmo fl_package_base.cmo findlib.cmo fl_args.cmo fl_lint.cmo - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c ocaml_args.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c frontend.ml - ocamlc -I +compiler-libs -o ocamlfind -g findlib.cma unix.cma \ - -I +unix -I +dynlink ocaml_args.cmo frontend.cmo - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c topfind.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c topfind.ml - ocamlc -I +compiler-libs -a -o findlib_top.cma topfind.cmo - USE_CYGPATH="0"; \ - export USE_CYGPATH; \ - cat topfind_rd1.p | \ - ../../tools/patch '@SITELIB@' '/home/opam/.opam/4.09/lib' \ - >topfind - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_dynload.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_dynload.ml - ocamlc -I +compiler-libs -a -o findlib_dynload.cma fl_dynload.cmo - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - make all-config - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' - USE_CYGPATH="0"; \ - export USE_CYGPATH; \ - cat findlib.conf.in | \ - tools/patch '@SITELIB@' '/home/opam/.opam/4.09/lib' | \ - tools/patch '@FINDLIB_PATH@' '/home/opam/.opam/4.09/lib' -p >findlib.conf - if ./tools/cmd_from_same_dir ocamlc; then \ - echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \ - fi - if ./tools/cmd_from_same_dir ocamlopt; then \ - echo 'ocamlopt="ocamlopt.opt"' >>findlib.conf; \ - fi - if ./tools/cmd_from_same_dir ocamldep; then \ - echo 'ocamldep="ocamldep.opt"' >>findlib.conf; \ - fi - if ./tools/cmd_from_same_dir ocamldoc; then \ - echo 'ocamldoc="ocamldoc.opt"' >>findlib.conf; \ - fi - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' Processing 15/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make opt] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "opt" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6) - for p in findlib; do ( cd src/$p; make opt ) || exit; done - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c findlib_config.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_split.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_metatoken.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_meta.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_metascanner.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_topo.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_package_base.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c findlib.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_args.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_lint.ml - ocamlopt -I +compiler-libs -g -a -o findlib.cmxa findlib_config.cmx fl_split.cmx fl_metatoken.cmx fl_meta.cmx fl_metascanner.cmx fl_topo.cmx fl_package_base.cmx findlib.cmx fl_args.cmx fl_lint.cmx - if [ 1 -gt 0 ]; then \ - ocamlopt -I +compiler-libs -g -shared -o findlib.cmxs findlib_config.cmx fl_split.cmx fl_metatoken.cmx fl_meta.cmx fl_metascanner.cmx fl_topo.cmx fl_package_base.cmx findlib.cmx fl_args.cmx fl_lint.cmx; \ - fi - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c ocaml_args.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c frontend.ml - ocamlopt -I +compiler-libs -g -o ocamlfind_opt findlib.cmxa unix.cmxa \ - -I +unix -I +dynlink ocaml_args.cmx frontend.cmx - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c topfind.ml - File "_none_", line 1: - Warning 58: no cmx file was found in path for module Topdirs, and its interface was not compiled with -opaque - File "_none_", line 1: - Warning 58: no cmx file was found in path for module Toploop, and its interface was not compiled with -opaque - ocamlopt -I +compiler-libs -g -a -o findlib_top.cmxa topfind.cmx - if [ 1 -gt 0 ]; then \ - ocamlopt -I +compiler-libs -g -shared -o findlib_top.cmxs topfind.cmx; \ - fi - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_dynload.ml - ocamlopt -I +compiler-libs -g -a -o findlib_dynload.cmxa fl_dynload.cmx - if [ 1 -gt 0 ]; then \ - ocamlopt -I +compiler-libs -g -shared -o findlib_dynload.cmxs fl_dynload.cmx; \ - fi - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6/src/findlib' -> compiled ocamlfind.1.9.6 Processing 15/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] Processing 16/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make install] + /home/opam/.opam/opam-init/hooks/sandbox.sh "install" "make" "install" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6) - if [ "1" -eq 1 ]; then \ - for x in camlp4 dbm graphics labltk num ocamlbuild; do \ - if [ -f "/home/opam/.opam/4.09/lib/$x/META" ]; then \ - if ! grep -Fq '[distributed with Ocaml]' "//home/opam/.opam/4.09/lib/$x/META"; then \ - rm -f site-lib-src/$x/META; \ - fi; \ - fi; \ - done; \ - test -f "site-lib-src/num/META" || rm -f "site-lib-src/num-top/META"; \ - fi - echo 'SITELIB_META =' > Makefile.packages.in - for x in `ls site-lib-src`; do test ! -f "site-lib-src/$x/META" || echo $x >> Makefile.packages.in; done - tr '\n' ' ' < Makefile.packages.in > Makefile.packages - rm Makefile.packages.in - install -d "/home/opam/.opam/4.09/bin" - install -d "/home/opam/.opam/4.09/man" - make install-config - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' - install -d "`dirname \"/home/opam/.opam/4.09/lib/findlib.conf\"`" - test -f "/home/opam/.opam/4.09/lib/findlib.conf" || install -c findlib.conf "/home/opam/.opam/4.09/lib/findlib.conf" - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' - for p in findlib; do ( cd src/$p; make install ); done - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - install -d "/home/opam/.opam/4.09/lib/findlib" - install -d "/home/opam/.opam/4.09/bin" - test 1 -eq 0 || install -d "/home/opam/.opam/4.09/lib/ocaml" - test 1 -eq 0 || install -c topfind "/home/opam/.opam/4.09/lib/ocaml/" - files=` ../../tools/collect_files ../../Makefile.config \ - findlib.cmi findlib.mli findlib.cma findlib.cmxa findlib.a findlib.cmxs \ - findlib_config.cmi findlib_config.ml topfind.cmi topfind.mli \ - fl_args.cmi fl_lint.cmi fl_meta.cmi fl_split.cmi fl_topo.cmi ocaml_args.cmi \ - fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi \ - fl_metatoken.cmi findlib_top.cma findlib_top.cmxa findlib_top.a findlib_top.cmxs \ - findlib_dynload.cma findlib_dynload.cmxa findlib_dynload.a findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi \ - META` && \ - install -c $files "/home/opam/.opam/4.09/lib/findlib/" - f="ocamlfind"; { test -f ocamlfind_opt && f="ocamlfind_opt"; }; \ - install -c $f "/home/opam/.opam/4.09/bin/ocamlfind" - # the following "if" block is only needed for 4.00beta2 - if [ 1 -eq 0 -a -f "/home/opam/.opam/4.09/lib/ocaml/compiler-libs/topdirs.cmi" ]; then \ - cd "/home/opam/.opam/4.09/lib/ocaml/compiler-libs/"; \ - install -c topdirs.cmi toploop.cmi "/home/opam/.opam/4.09/lib/findlib/"; \ - fi - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - make install-meta - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' - for x in bigarray bytes compiler-libs dynlink ocamldoc raw_spacetime stdlib str threads unix ; do install -d "/home/opam/.opam/4.09/lib/$x"; install -c site-lib-src/$x/META "/home/opam/.opam/4.09/lib/$x/META.tmp" && mv "/home/opam/.opam/4.09/lib/$x/META.tmp" "/home/opam/.opam/4.09/lib/$x/META"; done - install -d "/home/opam/.opam/4.09/lib/findlib"; install -c Makefile.packages "/home/opam/.opam/4.09/lib/findlib/Makefile.packages" - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' - test ! -f 'site-lib-src/num-top/META' || { cd src/findlib; make install-num-top; } - test ! -f 'site-lib-src/camlp4/META' || install -c tools/safe_camlp4 "/home/opam/.opam/4.09/bin" - make install-doc - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' - install -d "/home/opam/.opam/4.09/man/man1" "/home/opam/.opam/4.09/man/man3" "/home/opam/.opam/4.09/man/man5" - install -c doc/ref-man/ocamlfind.1 "/home/opam/.opam/4.09/man/man1" - install -c doc/ref-man/META.5 doc/ref-man/site-lib.5 doc/ref-man/findlib.conf.5 "/home/opam/.opam/4.09/man/man5" - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlfind.1.9.6' -> installed ocamlfind.1.9.6 Processing 16/38: [dune: ocaml 39] [ocamlbuild: make check-if-preinstalled] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "check-if-preinstalled" "all" "opam-install" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0) - if test -d /home/opam/.opam/4.09/lib/ocaml/ocamlbuild; then\ - >&2 echo "ERROR: Preinstalled ocamlbuild detected at"\ - "/home/opam/.opam/4.09/lib/ocaml/ocamlbuild";\ - >&2 echo "Installation aborted; if you want to bypass this"\ - "safety check, pass CHECK_IF_PREINSTALLED=false to make";\ - exit 2;\ - fi - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/const.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/loc.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/loc.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/discard_printf.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/discard_printf.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/signatures.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/exit_codes.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/exit_codes.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_std.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_std.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_executor.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_executor.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_unix.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_unix.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tags.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tags.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/display.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/display.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/log.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/log.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/shell.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/shell.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/bool.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/bool.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_ast.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_ast.ml - ocamllex.opt src/glob_lexer.mll - 55 states, 419 transitions, table size 2006 bytes - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_lexer.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_lexer.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob.ml - ocamllex.opt src/lexers.mll - 235 states, 1033 transitions, table size 5542 bytes - 4238 additional bytes used for bindings - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/lexers.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/lexers.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/param_tags.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/param_tags.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/command.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/command.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_config.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_where.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_where.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/slurp.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/slurp.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/options.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/options.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/pathname.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/pathname.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/configuration.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/configuration.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/flags.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/flags.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hygiene.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hygiene.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/digest_cache.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/digest_cache.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/resource.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/resource.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/rule.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/rule.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/solver.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/solver.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/report.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/report.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tools.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tools.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/fda.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/fda.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/findlib.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/findlib.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_arch.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_arch.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_utils.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_utils.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_dependencies.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_dependencies.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_compiler.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_compiler.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_tools.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_tools.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_specific.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_specific.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/plugin.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/plugin.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hooks.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hooks.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/main.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/main.ml - mkdir -p tmp - ocamlc.opt -pack src/const.cmo src/loc.cmo src/discard_printf.cmo src/signatures.cmi src/exit_codes.cmo src/my_std.cmo src/ocamlbuild_executor.cmo src/my_unix.cmo src/tags.cmo src/display.cmo src/log.cmo src/shell.cmo src/bool.cmo src/glob_ast.cmo src/glob_lexer.cmo src/glob.cmo src/lexers.cmo src/param_tags.cmo src/command.cmo src/ocamlbuild_config.cmo src/ocamlbuild_where.cmo src/slurp.cmo src/options.cmo src/pathname.cmo src/configuration.cmo src/flags.cmo src/hygiene.cmo src/digest_cache.cmo src/resource.cmo src/rule.cmo src/solver.cmo src/report.cmo src/tools.cmo src/fda.cmo src/findlib.cmo src/ocaml_arch.cmo src/ocaml_utils.cmo src/ocaml_dependencies.cmo src/ocaml_compiler.cmo src/ocaml_tools.cmo src/ocaml_specific.cmo src/plugin.cmo src/hooks.cmo src/main.cmo -o tmp/ocamlbuild_pack.cmo - mv tmp/ocamlbuild_pack.cmi src/ocamlbuild_pack.cmi - mv tmp/ocamlbuild_pack.cmo src/ocamlbuild_pack.cmo - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_plugin.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_plugin.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_unix_plugin.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c bin/ocamlbuild.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c bin/ocamlbuild.ml - ocamlc.opt -I +unix -I src -o ocamlbuild.byte -I +unix unix.cma src/ocamlbuild_pack.cmo plugin-lib/ocamlbuild_plugin.cmo plugin-lib/ocamlbuild_unix_plugin.cmo bin/ocamlbuild.cmo - ocamlc.opt -a -o plugin-lib/ocamlbuildlib.cma src/ocamlbuild_pack.cmo plugin-lib/ocamlbuild_plugin.cmo plugin-lib/ocamlbuild_unix_plugin.cmo - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/const.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/loc.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/discard_printf.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/exit_codes.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_std.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_executor.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_unix.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tags.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/display.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/log.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/shell.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/bool.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_ast.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_lexer.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/lexers.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/param_tags.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/command.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_config.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_where.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/slurp.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/options.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/pathname.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/configuration.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/flags.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hygiene.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/digest_cache.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/resource.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/rule.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/solver.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/report.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tools.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/fda.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/findlib.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_arch.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_utils.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_dependencies.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_compiler.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_tools.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_specific.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/plugin.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hooks.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/main.ml - mkdir -p tmp - ocamlopt.opt -pack src/const.cmx src/loc.cmx src/discard_printf.cmx src/signatures.cmi src/exit_codes.cmx src/my_std.cmx src/ocamlbuild_executor.cmx src/my_unix.cmx src/tags.cmx src/display.cmx src/log.cmx src/shell.cmx src/bool.cmx src/glob_ast.cmx src/glob_lexer.cmx src/glob.cmx src/lexers.cmx src/param_tags.cmx src/command.cmx src/ocamlbuild_config.cmx src/ocamlbuild_where.cmx src/slurp.cmx src/options.cmx src/pathname.cmx src/configuration.cmx src/flags.cmx src/hygiene.cmx src/digest_cache.cmx src/resource.cmx src/rule.cmx src/solver.cmx src/report.cmx src/tools.cmx src/fda.cmx src/findlib.cmx src/ocaml_arch.cmx src/ocaml_utils.cmx src/ocaml_dependencies.cmx src/ocaml_compiler.cmx src/ocaml_tools.cmx src/ocaml_specific.cmx src/plugin.cmx src/hooks.cmx src/main.cmx -o tmp/ocamlbuild_pack.cmx - mv tmp/ocamlbuild_pack.cmx src/ocamlbuild_pack.cmx - mv tmp/ocamlbuild_pack.o src/ocamlbuild_pack.o - ocamlopt.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_plugin.ml - ocamlopt.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_unix_plugin.ml - ocamlopt.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c bin/ocamlbuild.ml - ocamlopt.opt -I +unix -I src -o ocamlbuild.native -I +unix unix.cmxa src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_unix_plugin.cmx bin/ocamlbuild.cmx - ocamlopt.opt -a -o plugin-lib/ocamlbuildlib.cmxa src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_unix_plugin.cmx - ocamlc.opt -I +unix unix.cma src/ocamlbuild_pack.cmo -I src man/options_man.ml -o man/options_man.byte - ./man/options_man.byte > man/ocamlbuild.options.1 - cat man/ocamlbuild.header.1 man/ocamlbuild.options.1 man/ocamlbuild.footer.1 > man/ocamlbuild.1 - make ocamlbuild.install - make[1]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - rm -f ocamlbuild.install - touch ocamlbuild.install - make install-bin-opam - make[2]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - echo 'bin: [' >> ocamlbuild.install - echo ' "ocamlbuild.byte" {"ocamlbuild.byte"}' >> ocamlbuild.install - echo ' "ocamlbuild.native" {"ocamlbuild.native"}' >> ocamlbuild.install - echo ' "ocamlbuild.native" {"ocamlbuild"}' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - make install-lib-opam - make[2]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - echo 'lib: [' >> ocamlbuild.install - make install-lib-basics-opam - make[3]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - echo ' "ocamlbuild.opam" {"opam"}' >> ocamlbuild.install - echo ' "META"' >> ocamlbuild.install - for lib in src/signatures.mli src/signatures.cmi src/signatures.cmti; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - make[3]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - make install-lib-byte-opam - make[3]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - for lib in plugin-lib/ocamlbuildlib.cma bin/ocamlbuild.cmo src/ocamlbuild_pack.cmi plugin-lib/ocamlbuild_plugin.cmi plugin-lib/ocamlbuild_unix_plugin.cmi; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - make[3]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - make install-lib-native-opam - make[3]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - for lib in plugin-lib/ocamlbuildlib.cmxa plugin-lib/ocamlbuildlib.a bin/ocamlbuild.cmx bin/ocamlbuild.o src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_unix_plugin.cmx plugin-lib/ocamlbuild_plugin.o plugin-lib/ocamlbuild_unix_plugin.o; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - make[3]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - make install-man-opam - make[2]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - echo 'man: [' >> ocamlbuild.install - echo ' "man/ocamlbuild.1" {"man1/ocamlbuild.1"}' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - make install-doc-opam - make[2]: Entering directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - echo 'doc: [' >> ocamlbuild.install - echo ' "LICENSE"' >> ocamlbuild.install - echo ' "Changes"' >> ocamlbuild.install - echo ' "Readme.md"' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' - make[1]: Leaving directory '/home/opam/.opam/4.09/.opam-switch/build/ocamlbuild.0.15.0' -> compiled ocamlbuild.0.15.0 Processing 16/38: [dune: ocaml 39] -> installed ocamlbuild.0.15.0 Processing 17/38: [dune: ocaml 39] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "boot/bootstrap.ml" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/dune.3.16.0) - ocamlc -custom -w -24 -g -o .duneboot.exe -I boot unix.cma boot/libs.ml boot/duneboot.ml - ./.duneboot.exe -j 39 - cd _boot && /home/opam/.opam/4.09/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +threads dune_util__Gc.ml - File "src/dune_util/gc.ml", lines 78-95, characters 5-6: - Warning 23: all the fields are explicitly listed in this record: - the 'with' clause is useless. - Processing 17/38: [dune: ./_boot/dune.exe build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "./_boot/dune.exe" "build" "dune.install" "--release" "--profile" "dune-bootstrap" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/dune.3.16.0) -> compiled dune.3.16.0 -> installed dune.3.16.0 Processing 19/38: [csexp: dune build] Processing 20/38: [csexp: dune build] [menhirCST: dune build] Processing 21/38: [csexp: dune build] [menhirCST: dune build] [menhirLib: dune build] Processing 22/38: [csexp: dune build] [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] Processing 23/38: [csexp: dune build] [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "csexp" "-j" "39" "@install" (CWD=/home/opam/.opam/4.09/.opam-switch/build/csexp.1.5.2) -> compiled csexp.1.5.2 Processing 23/38: [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] -> installed csexp.1.5.2 Processing 24/38: [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] Processing 25/38: [dune-configurator: rm] [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "menhirCST" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/menhirCST.20240715) -> compiled menhirCST.20240715 Processing 25/38: [dune-configurator: rm] [menhirLib: dune build] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] -> installed menhirCST.20240715 Processing 26/38: [dune-configurator: rm] [menhirLib: dune build] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "menhirLib" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/menhirLib.20240715) - (cd _build/default/lib/pack && ./pack.exe) - Creating menhirLib.ml... - Creating menhirLib.mli... -> compiled menhirLib.20240715 Processing 26/38: [dune-configurator: rm] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] -> installed menhirLib.20240715 Processing 27/38: [dune-configurator: rm] [menhirSdk: dune build] [ocaml-syntax-shims: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "menhirSdk" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/menhirSdk.20240715) -> compiled menhirSdk.20240715 Processing 27/38: [dune-configurator: rm] [ocaml-syntax-shims: dune build] -> installed menhirSdk.20240715 Processing 28/38: [dune-configurator: rm] [ocaml-syntax-shims: dune build] Processing 29/38: [dune-configurator: rm] [menhir: dune build] [ocaml-syntax-shims: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ocaml-syntax-shims" "-j" "39" "@install" (CWD=/home/opam/.opam/4.09/.opam-switch/build/ocaml-syntax-shims.1.0.0) -> compiled ocaml-syntax-shims.1.0.0 Processing 29/38: [dune-configurator: rm] [menhir: dune build] -> installed ocaml-syntax-shims.1.0.0 Processing 30/38: [dune-configurator: rm] [menhir: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "vendor/csexp" (CWD=/home/opam/.opam/4.09/.opam-switch/build/dune-configurator.3.16.0) + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "vendor/pp" (CWD=/home/opam/.opam/4.09/.opam-switch/build/dune-configurator.3.16.0) Processing 30/38: [dune-configurator: dune build] [menhir: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "dune-configurator" "-j" "39" "@install" (CWD=/home/opam/.opam/4.09/.opam-switch/build/dune-configurator.3.16.0) -> compiled dune-configurator.3.16.0 Processing 30/38: [menhir: dune build] -> installed dune-configurator.3.16.0 Processing 31/38: [menhir: dune build] Processing 32/38: [bigstringaf: dune build] [menhir: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "bigstringaf" "-j" "39" "@install" (CWD=/home/opam/.opam/4.09/.opam-switch/build/bigstringaf.0.10.0) -> compiled bigstringaf.0.10.0 Processing 32/38: [menhir: dune build] -> installed bigstringaf.0.10.0 Processing 33/38: [menhir: dune build] Processing 34/38: [angstrom: dune build] [menhir: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "angstrom" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/angstrom.0.16.0) -> compiled angstrom.0.16.0 Processing 34/38: [menhir: dune build] -> installed angstrom.0.16.0 Processing 35/38: [menhir: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "menhir" "-j" "39" (CWD=/home/opam/.opam/4.09/.opam-switch/build/menhir.20240715) - (cd _build/default/lib/pack && ./pack.exe) - Creating menhirLib.ml... - Creating menhirLib.mli... - (cd _build/default/src/stage2 && .bin/menhir --exn-carries-state --no-pager --require-aliases --strict parser.mly --compare-errors parserMessages.auto.messages --compare-errors parserMessages.messages) > _build/default/src/stage2/parserMessages.check - Read 99 sample input sentences and 99 error messages. - Read 99 sample input sentences and 47 error messages. - (cd _build/default && src/stage2/.bin/menhir --exn-carries-state --no-pager --require-aliases --strict -lg 1 -la 1 -lc 1 -v src/stage2/parser.mly --base src/stage2/parser --infer-read-reply src/stage2/parser__mock.mli.inferred) - Grammar has 56 nonterminal symbols, among which 1 start symbols. - Grammar has 37 terminal symbols. - Grammar has 129 productions. - Built an LR(0) automaton with 199 states. - The grammar is not SLR(1) -- 7 states have a conflict. - The construction mode is no-pager. - Built an LR(1) automaton with 308 states. - One shift/reduce conflict was silently solved. - Extra reductions on error were added in 50 states. - Priority played a role in 0 of these states. - 156 out of 308 states have a default reduction. - 108 out of 308 states are represented. - 44 out of 96 symbols keep track of their start position. - 39 out of 96 symbols keep track of their end position. - The StackLang code contains 4113 instructions in 277 blocks. - The StackLang code comprises 5 mutually recursive groups. - (cd _build/default/src/stage2 && .bin/menhir --exn-carries-state --no-pager --require-aliases --strict parser.mly --compile-errors parserMessages.messages) > _build/default/src/stage2/parserMessages.ml - Read 99 sample input sentences and 47 error messages. -> compiled menhir.20240715 -> installed menhir.20240715 Processing 37/38: [caper: bash] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "bash" "-c" "CAPER_WITH_ENGLISH=yes ./build.sh caper.native" (CWD=/home/opam/.opam/4.09/.opam-switch/build/caper.0.9) - building caper.native - ... with English conversion support - + ocamlfind ocamldep -package angstrom -package str -modules caper.ml > caper.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules aux.ml > aux.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules config.ml > config.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules html.ml > html.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules english/english_to_pcap_spec.ml > english/english_to_pcap_spec.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules english/english_parsing.ml > english/english_parsing.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules english/english_syntax.ml > english/english_syntax.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_syntax.cmo english/english_syntax.ml - + ocamlfind ocamldep -package angstrom -package str -modules syntax/pcap_syntax.ml > syntax/pcap_syntax.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_parsing.cmo english/english_parsing.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_parsing.cmo english/english_parsing.ml - File "english/english_parsing.ml", lines 316-324, characters 15-35: - 316 | ...............function - 317 | | "1st" | "first" -> return "1" - 318 | | "2nd" | "second" -> return "2" - 319 | | "3rd" | "third" -> return "3" - 320 | | "fourth" -> return "4" - 321 | | "fifth" -> return "5" - 322 | | "sixth" -> return "6" - 323 | | "seventh" -> return "7" - 324 | | "eighth" -> return "8".. - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "english/english_parsing.ml", lines 457-464, characters 6-45: - 457 | ......fun (used_it_variable, Relation_clause (comp, left_term, right_expr)) -> - 458 | if used_it_variable then - 459 | return - 460 | (Clause (ExaminingRelation_clause (comp, it_val, left_term, right_expr))) - 461 | else - 462 | fail - 463 | ("did not use '# it' variable for the examination argument" - 464 | ^ " in 'examining' relation expression") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (OfType _|ThatIs (_, _)|IsThatOf (_, _)|ThatHas (_, _, _)|Unit _)) - File "english/english_parsing.ml", line 612, characters 19-75: - 612 | (fun sep es -> match sep with "and" -> And_expr es | "or" -> Or_expr es) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "english/english_parsing.ml", lines 631-633, characters 2-61: - 631 | ..match e with - 632 | | Or_expr _ -> return e - 633 | | And_expr _ -> fail "too many 'if and only if' connectors" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (True_expr|False_expr|Clause _|Not_expr _) - File "english/english_parsing.ml", lines 694-697, characters 25-50: - 694 | .........................function - 695 | | Clause (Unit (UnidentifiedString "")) -> return expr - 696 | | Clause (Unit (UnidentifiedString rest)) -> - 697 | fail ("unparseable English: '" ^ rest ^ "'") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clause - (Unit - (Phrase _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _))| - Clause - (OfType _|ThatIs (_, _)|IsThatOf (_, _)|ThatHas (_, _, _)| - Relation_clause (_, _, _)|ExaminingRelation_clause (_, _, _, _))| - True_expr|False_expr|And_expr _|Or_expr _|Not_expr _) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_syntax.cmo syntax/pcap_syntax.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_pcap_spec.cmo english/english_to_pcap_spec.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/pcap_to_bpf.ml > pcap_to_bpf/pcap_to_bpf.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/block.ml > pcap_to_bpf/block.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o config.cmo config.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/inst.ml > pcap_to_bpf/inst.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/util.ml > pcap_to_bpf/util.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/headers.ml > pcap_to_bpf/headers.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/inst.cmo pcap_to_bpf/inst.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/inst.cmo pcap_to_bpf/inst.ml - File "pcap_to_bpf/inst.ml", lines 159-169, characters 4-50: - 159 | ....match v with - 160 | | X -> "x" - 161 | | True -> "true" - 162 | | False -> "false" - 163 | | Off idx -> Printf.sprintf "[%d]" idx - ... - 166 | | Hexj num -> Printf.sprintf "#0x%x" num - 167 | | Lit num -> Printf.sprintf "%d" num - 168 | | Exp (val1,val2,operator) -> Printf.sprintf "(%s %s %s)" (helper val1) (operator_to_str operator) (helper val2) - 169 | | Offset v -> Printf.sprintf "[%s]" (helper v)... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - NilVal - File "pcap_to_bpf/inst.ml", lines 206-223, characters 18-59: - 206 | ..................function - 207 | | No_cond -> "no_cond" - 208 | | Ip_Protochain_cond value -> pretty_format "ip protochain" (value_to_str value) - 209 | | Ip6_Protochain_cond value -> pretty_format "ip6 protochain" (value_to_str value) - 210 | | Icmp6_Protochain_cond value -> pretty_format "icmp6_protochain" (value_to_str value) - ... - 220 | | Jle value -> pretty_format "jle" (value_to_str value) - 221 | | Jgt value -> pretty_format "jgt" (value_to_str value) - 222 | | Jge value -> pretty_format "jge" (value_to_str value) - 223 | | Jset value -> pretty_format "jset" (value_to_str value) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (True_cond|False_cond) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/headers.cmo pcap_to_bpf/headers.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/headers.cmo pcap_to_bpf/headers.ml - File "pcap_to_bpf/headers.ml", line 85, characters 4-5: - 85 | | _ -> failwith "unsupported Layer" - ^ - Warning 11: this match case is unused. - File "pcap_to_bpf/headers.ml", lines 88-98, characters 2-17: - 88 | ..match p with - 89 | | L2 Ether -> 14 - 90 | | L2_5 Vlan -> 4 - 91 | | L2_5 Mpls -> 4 - 92 | | L2 Fddi -> 14 - ... - 95 | | L4 Icmp -> 8 - 96 | | L4 Icmp6 -> 8 - 97 | | L3 Arp -> 28 - 98 | | L3 Rarp -> 28 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - L4 (Tcp|Udp|Sctp) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/util.cmo pcap_to_bpf/util.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/util.cmo pcap_to_bpf/util.ml - File "pcap_to_bpf/util.ml", lines 80-85, characters 2-120: - 80 | ..match sf with - 81 | | Some {code = [Nil_op]; cond = No_cond; jt = None; jf = None;} -> Some {code = [Nil_op]; cond = No_cond; jt = None; jf = None;} - 82 | | Some {code = [Logical_And]; cond = True_cond; jf = sf2; jt = sf1} -> Some {code = [Logical_Or]; cond = True_cond; jf = negate sf2; jt = negate sf1;} - 83 | | Some {code = [Logical_Or]; cond = True_cond; jf = sf2; jt = sf1} -> Some {code = [Logical_And]; cond = True_cond; jf = negate sf2; jt = negate sf1;} - 84 | | Some {code = x; cond = y; jf = ret_false; jt = ret_true} -> Some {code = x; cond = y; jf = ret_true; jt = ret_false} - 85 | | Some {code = x; cond = y; jf = ret_true; jt = ret_false} -> Some {code = x; cond = y; jf = ret_false; jt = ret_true} - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - File "pcap_to_bpf/util.ml", line 85, characters 4-60: - 85 | | Some {code = x; cond = y; jf = ret_true; jt = ret_false} -> Some {code = x; cond = y; jf = ret_false; jt = ret_true} - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 11: this match case is unused. - File "pcap_to_bpf/util.ml", lines 125-129, characters 20-14: - 125 | ....................function - 126 | | "ip" -> 12 - 127 | | "arp" -> 14 - 128 | | "rarp" -> 14 - 129 | | "ip6" -> 8 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/util.ml", lines 131-135, characters 20-15: - 131 | ....................function - 132 | | "ip" -> 16 - 133 | | "arp" -> 24 - 134 | | "rarp" -> 24 - 135 | | "ip6" -> 24 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/util.ml", lines 138-142, characters 2-42: - 138 | ..match net with - 139 | | [oct1] -> 0xff000000 - 140 | | [oct1; oct2] -> 0xffff0000 - 141 | | [oct1; oct2; oct3;] -> 0xffffff00 - 142 | | [oct1; oct2; oct3; oct4] -> 0xffffffff - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_::_::_|[]) - File "pcap_to_bpf/util.ml", lines 187-188, characters 4-87: - 187 | ....match ipv6_piece with - 188 | | [x; y] -> Int.shift_left (int_of_string ("0x" ^ x)) 16 + int_of_string ("0x" ^ y)... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_|_::[]|[]) - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/optimizer/bpf_optimizer.ml > pcap_to_bpf/optimizer/bpf_optimizer.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/block.cmo pcap_to_bpf/block.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/optimizer/register.ml > pcap_to_bpf/optimizer/register.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/register.cmo pcap_to_bpf/optimizer/register.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/register.cmo pcap_to_bpf/optimizer/register.ml - File "pcap_to_bpf/optimizer/register.ml", line 53, characters 4-5: - 53 | | _ -> failwith (Printf.sprintf "%s" (reg_to_str reg)) - ^ - Warning 11: this match case is unused. - File "pcap_to_bpf/optimizer/register.ml", lines 56-57, characters 2-14: - 56 | ..match reg with - 57 | | Reg v -> v - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (NilReg|Reg_exp (_, _, _)) - File "pcap_to_bpf/optimizer/register.ml", lines 109-125, characters 55-96: - 109 | .......................................................function - 110 | | Lit n | Hex n | Hexj n -> Reg (Hex n) - 111 | | Off n -> Reg (Off n) - 112 | | Offset n -> Reg (Offset (get_val (regify a_reg x_reg n))) - 113 | | X -> x_reg - ... - 122 | | Arith_and -> arith_and (regify a_reg x_reg v1) (regify a_reg x_reg v2) - 123 | | Arith_xor -> arith_xor (regify a_reg x_reg v1) (regify a_reg x_reg v2) - 124 | | Logical_shift_left -> logical_shift_left (regify a_reg x_reg v1) (regify a_reg x_reg v2) - 125 | | Logical_shift_right -> logical_shift_right (regify a_reg x_reg v1) (regify a_reg x_reg v2) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (True|False|NilVal|Mem _) - File "pcap_to_bpf/optimizer/register.ml", lines 166-178, characters 8-68: - 166 | ........match cond1, cond2 with - 167 | | NilCond, _ -> if_insert tl c - 168 | | _, NilCond -> if_insert tl c - 169 | | Eq x, Eq y -> if x = y then Triv_True else Triv_False - 170 | | Eq x, Neq y -> if x = y then Triv_False else Triv_True - ... - 175 | | Gt x, Gt y -> if x >= y then Triv_True else if_insert tl c - 176 | | Gt x, Ge y -> if x > y then Triv_True else if_insert tl c - 177 | | Ge x, Gt y -> if x > y then Triv_True else if_insert tl c - 178 | | Ge x, Ge y -> if x >= y then Triv_True else if_insert tl c - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Ge _, (Eq _|Neq _|Lt _|Le _))|(Gt _, (Eq _|Neq _|Lt _|Le _))| - (Eq _, (Lt _|Le _))|(Neq _, (Lt _|Le _|Gt _|Ge _))| - ((Lt _|Le _), (Eq _|Neq _|Lt _|Le _|Gt _|Ge _))) - File "pcap_to_bpf/optimizer/register.ml", lines 184-235, characters 2-41: - 184 | ..match opcode with - 185 | | No_op _ | Nil_op -> a_reg, x_reg - 186 | | St (Mem n) -> - 187 | begin - 188 | memory.(n) <- a_reg; - ... - 232 | | Rsh X -> (logical_shift_right a_reg x_reg), x_reg - 233 | | Tax -> a_reg, a_reg - 234 | | Txa -> x_reg, x_reg - 235 | | Ret False | Ret True -> a_reg, x_reg - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (St (X|True|False|NilVal|Off _|Offset _|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Stx (X|True|False|NilVal|Off _|Offset _|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Ldi (X|True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Ld (X|True|False|NilVal|Exp (_, _, _))| - Ldx (X|True|False|NilVal|Offset _|Exp (_, _, _))| - Ldh (X|True|False|NilVal|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Ldb (X|True|False|NilVal|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Ldxb (X|True|False|NilVal|Offset _|Hex _|Hexj _|Lit _)| - Add (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Sub (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Mul (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Div (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Mod (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - And (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Or (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Xor (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Lsh (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Rsh (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Ret (X|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Logical_And|Logical_Or|Ldxi _|Neg _|Num _|List _) - File "pcap_to_bpf/optimizer/register.ml", lines 240-264, characters 4-7: - 240 | ....begin - 241 | match jump_cond with - 242 | | Jeq (Lit n) | Jeq (Hex n) | Jeq (Hexj n) -> a_reg, x_reg, (Eq (Reg (Hex n))) - 243 | | Jneq (Lit n) | Jneq (Hex n) | Jneq (Hexj n) -> a_reg, x_reg, (Neq (Reg (Hex n))) - 244 | | Jne (Lit n) | Jne (Hex n) | Jne (Hexj n) -> a_reg, x_reg, (Neq (Reg (Hex n))) - ... - 261 | | Ip_Protochain_Bridge_cond (Lit n) -> a_reg, x_reg, NilCond - 262 | | Ip6_Protochain_Bridge_cond (Lit n) -> a_reg, x_reg, NilCond - 263 | | Icmp6_Protochain_Bridge_cond (Lit n) -> a_reg, x_reg, NilCond - 264 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Jeq (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jneq (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jne (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jlt (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jle (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jgt (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jge (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jset (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Ip_Protochain_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Ip6_Protochain_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Icmp6_Protochain_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Ip_Protochain_Bridge_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Ip6_Protochain_Bridge_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Icmp6_Protochain_Bridge_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - True_cond|False_cond|No_cond|Jmp _|Ja _) - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/icmp6.ml > pcap_to_bpf/protocol/icmp6.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/env.ml > pcap_to_bpf/env.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/protochain.ml > pcap_to_bpf/protocol/protochain.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/env.cmo pcap_to_bpf/env.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/protochain.cmo pcap_to_bpf/protocol/protochain.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/protochain.cmo pcap_to_bpf/protocol/protochain.ml - File "pcap_to_bpf/protocol/protochain.ml", lines 93-113, characters 4-7: - 93 | ....match headers with - 94 | | Packet (_, _, L3 Ip) | Segment (_, _, L3 Ip, _)-> - 95 | Some { - 96 | code = [ - 97 | Ldb (Off (sum_of_pred_headers + 9)); - ... - 110 | cond = Jeq (Hexj protochain_num); - 111 | jt = ret_true; - 112 | jf = ret_false - 113 | } - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)) - File "pcap_to_bpf/protocol/protochain.ml", lines 126-130, characters 2-37: - 126 | ..match headers with - 127 | | Packet (_, _, L3 Ip) | Segment (_, _, L3 Ip, _)-> - 128 | gen_ip_protochain protochain_num - 129 | | Packet (_, _, L3 Ip6) | Segment (_, _, L3 Ip6, _)-> - 130 | gen_ip6_protochain protochain_num - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)) - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/infix_to_postfix.ml > pcap_to_bpf/infix_to_postfix.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/pcap_to_tree.ml > pcap_to_bpf/pcap_to_tree.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/arp.ml > pcap_to_bpf/protocol/arp.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/host.ml > pcap_to_bpf/protocol/host.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/net.ml > pcap_to_bpf/protocol/net.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/host.cmo pcap_to_bpf/protocol/host.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/net.cmo pcap_to_bpf/protocol/net.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/net.cmo pcap_to_bpf/protocol/net.ml - File "pcap_to_bpf/protocol/net.ml", lines 96-102, characters 4-7: - 96 | ....begin - 97 | match String.split_on_char '/' net with - 98 | | net' :: [mask] -> - 99 | let mask' = int_of_string mask in - 100 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 101 | ipv6_src_net net'' mask' headers - 102 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_|_::[]|[]) - File "pcap_to_bpf/protocol/net.ml", lines 83-102, characters 2-7: - 83 | ..match protocol with - 84 | | "ip" | "arp" | "rarp" -> - 85 | let _net = String.split_on_char '.' net in - 86 | Some { - 87 | code = [ - ... - 99 | let mask' = int_of_string mask in - 100 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 101 | ipv6_src_net net'' mask' headers - 102 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/protocol/net.ml", lines 119-125, characters 4-7: - 119 | ....begin - 120 | match String.split_on_char '/' net with - 121 | | net' :: [mask] -> - 122 | let mask' = int_of_string mask in - 123 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 124 | ipv6_dst_net net'' mask' headers - 125 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_|_::[]|[]) - File "pcap_to_bpf/protocol/net.ml", lines 106-125, characters 2-7: - 106 | ..match protocol with - 107 | | "ip" | "arp" | "rarp" -> - 108 | let _net = String.split_on_char '.' net in - 109 | Some { - 110 | code = [ - ... - 122 | let mask' = int_of_string mask in - 123 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 124 | ipv6_dst_net net'' mask' headers - 125 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/bound.ml > pcap_to_bpf/protocol/bound.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/ether.ml > pcap_to_bpf/protocol/ether.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/eval.ml > pcap_to_bpf/eval.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ether.cmo pcap_to_bpf/protocol/ether.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/icmp.ml > pcap_to_bpf/protocol/icmp.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp6.cmo pcap_to_bpf/protocol/icmp6.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp6.cmo pcap_to_bpf/protocol/icmp6.ml - File "pcap_to_bpf/protocol/icmp6.ml", lines 186-189, characters 2-43: - 186 | ..match icmp6_info with - 187 | | "protochain" :: [protochain_num] -> - 188 | Env.generate_icmp6_protochain := true; - 189 | icmp6_protochain protochain_num headers - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("protochain"::_::_::_|"protochain"::[]|""::_|[]) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/infix_to_postfix.cmo pcap_to_bpf/infix_to_postfix.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/infix_to_postfix.cmo pcap_to_bpf/infix_to_postfix.ml - File "pcap_to_bpf/infix_to_postfix.ml", lines 73-78, characters 6-60: - 73 | ......match block with - 74 | | head :: rest -> - 75 | if is_square_open head || is_square_close head then - 76 | let square_cnt = count_square 0 0 head in - 77 | parse_square_bracket (head :: ret) rest (counter + (fst square_cnt) - (snd square_cnt)) - 78 | else parse_square_bracket (head :: ret) rest counter - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/ip.ml > pcap_to_bpf/protocol/ip.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/ip6.ml > pcap_to_bpf/protocol/ip6.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/sctp.ml > pcap_to_bpf/protocol/sctp.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/port.ml > pcap_to_bpf/protocol/port.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ip6.cmo pcap_to_bpf/protocol/ip6.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/portrange.ml > pcap_to_bpf/protocol/portrange.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/port.cmo pcap_to_bpf/protocol/port.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/portrange.cmo pcap_to_bpf/protocol/portrange.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/tcp.ml > pcap_to_bpf/protocol/tcp.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/udp.ml > pcap_to_bpf/protocol/udp.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp.cmo pcap_to_bpf/protocol/icmp.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp.cmo pcap_to_bpf/protocol/icmp.ml - File "pcap_to_bpf/protocol/icmp.ml", lines 95-96, characters 2-78: - 95 | ..match icmp_info with - 96 | | "protochain" :: [protochain_num] -> icmp_protochain protochain_num headers - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("protochain"::_::_::_|"protochain"::[]|""::_|[]) - File "pcap_to_bpf/protocol/icmp.ml", line 72, characters 6-19: - 72 | let source_quench = Some {code = []; cond = Jeq (Hexj 0x4); jt = ret_true; jf = ret_false} in - ^^^^^^^^^^^^^ - Warning 26: unused variable source_quench. - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ip.cmo pcap_to_bpf/protocol/ip.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ip.cmo pcap_to_bpf/protocol/ip.ml - File "pcap_to_bpf/protocol/ip.ml", lines 41-42, characters 2-157: - 41 | ..match headers with - 42 | | Packet (x, _, L3 Ip) | Segment (x, _, L3 Ip, _) -> Ldxb (Exp ((Lit 4), (Exp ((Off (sum_of_header headers "ip")), (Hex 0xf), Arith_and)), Multiplication)) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Ip6|Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Ip6|Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)| - Nil|Frame (_, _)) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/sctp.cmo pcap_to_bpf/protocol/sctp.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/tcp.cmo pcap_to_bpf/protocol/tcp.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/udp.cmo pcap_to_bpf/protocol/udp.ml - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/mpls.ml > pcap_to_bpf/protocol/mpls.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/rarp.ml > pcap_to_bpf/protocol/rarp.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/protocol/vlan.ml > pcap_to_bpf/protocol/vlan.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/arp.cmo pcap_to_bpf/protocol/arp.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/bound.cmo pcap_to_bpf/protocol/bound.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/eval.cmo pcap_to_bpf/eval.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/eval.cmo pcap_to_bpf/eval.ml - File "pcap_to_bpf/eval.ml", lines 73-82, characters 13-21: - 73 | .............function - 74 | | "+" -> Add X - 75 | | "-" -> Sub X - 76 | | "*" -> Mul X - 77 | | "/" -> Div X - 78 | | "%" -> Mod X - 79 | | "&" -> And X - 80 | | "|" -> Or X - 81 | | "<<" -> Lsh X - 82 | | ">>" -> Rsh X... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/eval.ml", lines 83-87, characters 4-63: - 83 | ....match operator, num_op, proto_op with - 84 | | "+", _, _ -> eval_proto_num operator proto_op num_op headers - 85 | | "*", _, _ -> eval_proto_num operator proto_op num_op headers - 86 | | other, Num n, List x -> List (x @ [Tax; Ld (Lit n); op other]) - 87 | | other, Num n, x -> List ([x; Tax; Ld (Lit n); op other]) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("", - (Tax|Txa|Logical_And|Logical_Or|Nil_op|Ld _|Ldi _|Ldh _|Ldb _|Ldx _|Ldxi _| - Ldxb _|St _|Stx _|Add _|Sub _|Mul _|Div _|Mod _|Neg _|And _|Or _|Xor _| - Lsh _|Rsh _|No_op _|List _|Ret _), _) - File "pcap_to_bpf/eval.ml", lines 91-100, characters 13-21: - 91 | .............function - 92 | | "+" -> Add X - 93 | | "-" -> Sub X - 94 | | "*" -> Mul X - 95 | | "/" -> Div X - 96 | | "%" -> Mod X - 97 | | "&" -> And X - 98 | | "|" -> Or X - 99 | | "<<" -> Lsh X - 100 | | ">>" -> Rsh X... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/eval.ml", lines 143-148, characters 4-49: - 143 | ....match comparison with - 144 | | "=" | "==" | "!=" -> comp_opcode_int comparison op num headers - 145 | | "<" -> comp_opcode_int ">" op num headers - 146 | | ">" -> comp_opcode_int "<" op num headers - 147 | | ">=" -> comp_opcode_int "<=" op num headers - 148 | | "<=" -> comp_opcode_int ">=" op num headers - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/eval.ml", line 188, characters 4-5: - 188 | | _ -> failwith "Eval.eval_pcaps" - ^ - Warning 11: this match case is unused. - File "pcap_to_bpf/eval.ml", lines 192-213, characters 2-42: - 192 | ..match headers with - 193 | | Frame (l2, _) | Packet (l2, _, _) | Segment (l2, _, _, _) -> - 194 | if l2 <> _protocol then failwith "Eval.l2_expr_size" else - 195 | if is_digit expr then - 196 | let inst = - ... - 210 | | 4 -> Ld (Offset (Exp (X, (Lit (0)), Addition))) - 211 | | _ -> failwith "Eval.l2_expr_size ( 1, 2, 4 )" - 212 | in - 213 | List (expr_op @ (Tax :: inst :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Nil - File "pcap_to_bpf/eval.ml", lines 217-239, characters 2-44: - 217 | ..match headers with - 218 | | Packet (_, _, l3) | Segment (_, _ ,l3, _) -> - 219 | if l3 <> _protocol then failwith "Eval.l3_expr_size" else - 220 | let pred_header_size = sum_of_header headers protocol in - 221 | if is_digit expr then - ... - 236 | | 4 -> Ld (Offset (Exp (X, (Lit (pred_header_size)), Addition))) - 237 | | _ -> failwith "Eval.l3_expr_size" - 238 | in - 239 | List (expr_op @ (Tax :: inst :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Nil|Frame (_, _)) - File "pcap_to_bpf/eval.ml", lines 243-283, characters 2-42: - 243 | ..match headers with - 244 | | Segment (_, _, L3 Ip, l4) -> - 245 | if l4 <> _protocol then failwith "Eval.l4_expr_size" else - 246 | let pred_header_size = sum_of_header headers "ip" in - 247 | if is_digit expr then - ... - 280 | | 4 -> Ld (Offset (Exp (X, (Lit (sum_of_header headers protocol)), Addition))) - 281 | | _ -> failwith "Eval.l4_expr_size" - 282 | in - 283 | List (expr_op @ (Tax :: inst :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)|Packet (_, _, _)) - File "pcap_to_bpf/eval.ml", lines 287-294, characters 2-80: - 287 | ..match headers with - 288 | | Frame (l2, _) | Packet (l2, _, _) | Segment (l2, _, _, _) -> - 289 | if _protocol <> l2 then failwith "Eval.l2_offset" else - 290 | if is_digit idx then - 291 | Ldb (Off (int_of_string idx)) - 292 | else - 293 | let idx_op = (Option.get (eval_pcaps [] (pcap_infix_to_postfix idx) headers)).code in - 294 | List (idx_op @ (Tax :: Ldb (Offset (Exp (X, (Lit (0)), Addition))) :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Nil - File "pcap_to_bpf/eval.ml", lines 298-305, characters 2-109: - 298 | ..match headers with - 299 | | Packet (l2, _, l3) | Segment (l2, _, l3, _) -> - 300 | if _protocol <> l3 then failwith "Eval.l3_offset" else - 301 | if is_digit idx then - 302 | Ldb (Off (sum_of_header headers protocol + int_of_string idx)) - 303 | else - 304 | let idx_op = (Option.get (eval_pcaps [] (pcap_infix_to_postfix idx) headers)).code in - 305 | List (idx_op @ (Tax :: Ldb (Offset (Exp (X, (Lit (sum_of_header headers protocol)), Addition))) :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Nil|Frame (_, _)) - File "pcap_to_bpf/eval.ml", lines 309-324, characters 2-107: - 309 | ..match headers with - 310 | | Segment (l2, _, L3 Ip, l4) -> - 311 | let pred_header_size = sum_of_header headers "ip" in - 312 | if _protocol <> l4 then failwith "Eval.l4_offset" else - 313 | if is_digit idx then - ... - 321 | Ldb (Off (sum_of_header headers protocol + int_of_string idx)) - 322 | else - 323 | let idx_op = (Option.get (eval_pcaps [] (pcap_infix_to_postfix idx) headers)).code in - 324 | List (idx_op @ (Tax :: Ldb (Offset (Exp (X, Lit (sum_of_header headers protocol), Addition))) :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)|Packet (_, _, _)) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/mpls.cmo pcap_to_bpf/protocol/mpls.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/mpls.cmo pcap_to_bpf/protocol/mpls.ml - File "pcap_to_bpf/protocol/mpls.ml", lines 36-47, characters 2-34: - 36 | ..match mpls_info, l2_5_header with - 37 | | [], L2_5 Mpls :: [] -> is_mpls headers - 38 | | [], L2_5 Mpls :: L2_5 Vlan :: l2_5 -> is_mpls headers - 39 | | [], L2_5 Mpls :: L2_5 Mpls :: l2_5 -> is_bottom headers - 40 | | [mpls_val], L2_5 Mpls :: [] | [mpls_val], L2_5 Mpls :: L2_5 Vlan :: _ -> - ... - 44 | | [mpls_val], L2_5 Mpls :: L2_5 Mpls :: l2_5 -> - 45 | let _mpls_val = mpls_val_shift (int_of_string mpls_val) in - 46 | let sf = Some {code = [Ld (Off (get_protocol_size (get_l2 headers) + get_l2_5_size headers - 4)); And (Hexj 0xfffff000)]; cond = Jeq (Hexj (_mpls_val)); jt = ret_true; jf = ret_false}in - 47 | conjoin (is_bottom headers) sf - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((_::[], L2_5 Mpls::(L2 _|L3 _|L4 _)::_)|(_::[], L2_5 Vlan::_)| - (_::[], (L2 _|L3 _|L4 _)::_)|(_::[], [])|(_::_::_, _)| - ([], L2_5 Mpls::(L2 _|L3 _|L4 _)::_)|([], L2_5 Vlan::_)| - ([], (L2 _|L3 _|L4 _)::_)|([], [])) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/rarp.cmo pcap_to_bpf/protocol/rarp.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/vlan.cmo pcap_to_bpf/protocol/vlan.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/vlan.cmo pcap_to_bpf/protocol/vlan.ml - File "pcap_to_bpf/protocol/vlan.ml", lines 39-189, characters 2-79: - 39 | ..match vlan_info, headers with - 40 | (* [snipped from <linux/filter.h>] - 41 | Git hash: 6f52b16c5b29b89d92c0e7236f4655dc8491ad70 - 42 | https://github.com/torvalds/linux/blob/master/include/uapi/linux/filter.h - 43 | - ... - 186 | jf = ret_false; - 187 | } - 188 | in - 189 | conjoin (disjoin vlan_id_8100 (disjoin vlan_id_88a8 vlan_id_9100)) vlan_val - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (("SKF_AD"::_::_, _)| - ("SKF_AD_TAG"::[], (Nil|Packet (_, _, _)|Segment (_, _, _, _)))| - ("SKF_AD_TAG"::_::_::_, _)| - (""::[], (Nil|Packet (_, _, _)|Segment (_, _, _, _)))|(""::_::_, _)| - ([], (Nil|Packet (_, _, _)|Segment (_, _, _, _)))) - + ocamlfind ocamldep -package angstrom -package str -modules pcap_to_bpf/tree_to_bpf.ml > pcap_to_bpf/tree_to_bpf.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/bpf_optimizer.cmo pcap_to_bpf/optimizer/bpf_optimizer.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/bpf_optimizer.cmo pcap_to_bpf/optimizer/bpf_optimizer.ml - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", lines 53-59, characters 2-65: - 53 | ..match blocks with - 54 | | b :: bs -> - 55 | match b with - 56 | | {key = _; opcodes = [Ret True]; cond = _; jt = -1; jf = -1} - 57 | | {key = _; opcodes = [Ret False]; cond = _; jt = -1; jf = -1} -> ret - 58 | | {key = key; opcodes = opcodes; cond = cond; jt = jt; jf = jf} -> - 59 | get_pkt_acpt_line_helper (ret + List.length opcodes + 1) bs - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", line 187, characters 14-19: - 187 | let new_a = {key = a_key; opcodes = a_opcodes; cond = a_cond; jt = a_jt; jf = a_jf} in - ^^^^^ - Warning 26: unused variable new_a. - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", line 486, characters 16-22: - 486 | let jf_blk = Hashtbl.find blocks_tbl b.jf in - ^^^^^^ - Warning 26: unused variable jf_blk. - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", line 501, characters 16-28: - 501 | let cur_blk_eval = Hashtbl.find blocks_eval_tbl b.key in - ^^^^^^^^^^^^ - Warning 26: unused variable cur_blk_eval. - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/pcap_to_tree.cmo pcap_to_bpf/pcap_to_tree.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/pcap_to_tree.cmo pcap_to_bpf/pcap_to_tree.ml - File "pcap_to_bpf/pcap_to_tree.ml", lines 53-58, characters 4-35: - 53 | ....match protocol with - 54 | | "icmp" -> icmp_to_sock_filter - 55 | | "tcp" -> tcp_to_sock_filter - 56 | | "udp" -> udp_to_sock_filter - 57 | | "icmp6" -> icmp6_to_sock_filter - 58 | | "sctp" -> sctp_to_sock_filter - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/pcap_to_tree.ml", lines 61-66, characters 4-19: - 61 | ....match protocol with - 62 | | "icmp" -> 1 - 63 | | "tcp" -> 6 - 64 | | "udp" -> 17 - 65 | | "icmp6" -> 58 - 66 | | "sctp" -> 132 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/pcap_to_tree.ml", lines 78-80, characters 6-88: - 78 | ......match headers with - 79 | | Packet (_, _, L3 Ip) | Segment (_, _, L3 Ip, _) -> sum_of_header headers "ip" - 80 | | Packet (_, _, L3 Ip6) | Segment (_, _, L3 Ip6, _) -> sum_of_header headers "ip6" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)) - File "pcap_to_bpf/pcap_to_tree.ml", lines 69-98, characters 2-37: - 69 | ..match !Env.protochain_list, protocol with - 70 | | [], _ - 71 | | 1 :: _, "icmp" - 72 | | 6 :: _, "tcp" - 73 | | 17 :: _, "udp" - ... - 95 | failwith "not_supported protochain_bridge" - 96 | in - 97 | Env.protochain_list := protocol_num :: !Env.protochain_list; - 98 | conjoin protochain_bridge main_sf - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((1::_, "")|(6::_, "")|(17::_, "")|(58::_, "")|(0::_, _)) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/tree_to_bpf.cmo pcap_to_bpf/tree_to_bpf.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o html.cmo html.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/pcap_to_bpf.cmo pcap_to_bpf/pcap_to_bpf.ml - + ocamlfind ocamldep -package angstrom -package str -modules syntax/bitvector.ml > syntax/bitvector.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules bitvector_sizing.ml > bitvector_sizing.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o aux.cmo aux.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/bitvector.cmo syntax/bitvector.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/bitvector.cmo syntax/bitvector.ml - File "syntax/bitvector.ml", lines 83-189, characters 2-9: - 83 | ..match bv_e with - 84 | | Hole (_, s) -> s - 85 | | Const (Some w, n) -> - 86 | assert (exponentiate 2 w > n); - 87 | let nibble_width = - ... - 186 | "((_ zero_extend " ^ - 187 | string_of_int w ^ ") " ^ - 188 | string_of_bv_exp bv_e' ^ - 189 | ")" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Const (None, _) - File "syntax/bitvector.ml", line 87, characters 10-22: - 87 | let nibble_width = - ^^^^^^^^^^^^ - Warning 26: unused variable nibble_width. - + ocamlfind ocamldep -package angstrom -package str -modules cli.ml > cli.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules contract.ml > contract.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules layering.ml > layering.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules names.ml > names.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules syntax/pcap_syntax_aux.ml > syntax/pcap_syntax_aux.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules syntax/string_features.ml > syntax/string_features.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/string_features.cmo syntax/string_features.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_syntax_aux.cmo syntax/pcap_syntax_aux.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o layering.cmo layering.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o names.cmo names.ml - + ocamlfind ocamldep -package angstrom -package str -modules english/english_to_pcap.ml > english/english_to_pcap.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules english/english_to_string.ml > english/english_to_string.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules parsing_support.ml > parsing_support.ml.depends - + /home/opam/.opam/4.09/bin/ocamllex.opt -q syntax/pcap_lexer.mll - + ocamlfind ocamldep -package angstrom -package str -modules syntax/pcap_lexer.ml > syntax/pcap_lexer.ml.depends - + menhir --raw-depend --ocamldep 'ocamlfind ocamldep -modules' syntax/pcap_parser.mly > syntax/pcap_parser.mly.depends - + menhir --ocamlc 'ocamlfind ocamlc -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol' --infer syntax/pcap_parser.mly - + menhir --ocamlc 'ocamlfind ocamlc -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol' --infer syntax/pcap_parser.mly - Warning: one state has reduce/reduce conflicts. - Warning: one reduce/reduce conflict was arbitrarily resolved. - + ocamlfind ocamldep -package angstrom -package str -modules syntax/pcap_parser.mli > syntax/pcap_parser.mli.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_parser.cmi syntax/pcap_parser.mli - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_lexer.cmo syntax/pcap_lexer.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_string.cmo english/english_to_string.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_string.cmo english/english_to_string.ml - File "english/english_to_string.ml", lines 73-111, characters 2-46: - 73 | ..match c with - 74 | | OfType t -> (if logically_positive then "of type" else "not of type") ^ " " ^ string_of_term t - 75 | | ThatIs (t1, t2) -> - 76 | string_of_term t1 ^ " " - 77 | ^ (if logically_positive then "that is" else "that is not") - ... - 108 | | ExaminingRelation_clause (Phrase comp, it_var, left, right) -> - 109 | let it_str = string_of_term it_var in - 110 | "examining" ^ " " ^ it_str ^ ":" ^ " " ^ string_of_arith_val left ^ " " - 111 | ^ comp ^ " " ^ string_of_arith_val right - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Relation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _)| - ExaminingRelation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _, _)| - Unit _) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o parsing_support.cmo parsing_support.ml - + ocamlfind ocamldep -package angstrom -package str -modules expand.ml > expand.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules simplifire.ml > simplifire.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o contract.cmo contract.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o simplifire.cmo simplifire.ml - + ocamlfind ocamldep -package angstrom -package str -modules english/pcap_to_english.ml > english/pcap_to_english.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules english/pcap_to_english_spec.ml > english/pcap_to_english_spec.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/pcap_to_english_spec.cmo english/pcap_to_english_spec.ml - + ocamlfind ocamldep -package angstrom -package str -modules syntax/pcap_wellformed.ml > syntax/pcap_wellformed.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pretty_printing.ml > pretty_printing.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules pseudonymise.ml > pseudonymise.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules reorder.ml > reorder.ml.depends - + ocamlfind ocamldep -package angstrom -package str -modules translate.ml > translate.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o bitvector_sizing.cmo bitvector_sizing.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o bitvector_sizing.cmo bitvector_sizing.ml - File "bitvector_sizing.ml", lines 34-36, characters 6-37: - 34 | ......let (bv_e2', Some bv_e2_w) = width_of_bv_exp bv_e2 in - 35 | assert (w = bv_e1_w + bv_e2_w); - 36 | Concat (Some w, bv_e1', bv_e2') - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, None) - File "bitvector_sizing.ml", lines 33-36, characters 6-37: - 33 | ......let (bv_e1', Some bv_e1_w) = width_of_bv_exp bv_e1 in - 34 | let (bv_e2', Some bv_e2_w) = width_of_bv_exp bv_e2 in - 35 | assert (w = bv_e1_w + bv_e2_w); - 36 | Concat (Some w, bv_e1', bv_e2') - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, None) - File "bitvector_sizing.ml", lines 170-185, characters 2-137: - 170 | ..match bv_e with - 171 | | Hole (w, _) - 172 | | Const (w, _) -> (bv_e, w) - 173 | | BNot (w_opt, bv_e') -> width_of_mono (w_opt, bv_e') (fun (x1, x2) -> BNot (x1, x2)) - 174 | | BNegate (w_opt, bv_e') -> width_of_mono (w_opt, bv_e') (fun (x1, x2) -> BNegate (x1, x2)) - ... - 182 | | BMod (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> BMod (w_opt, bv_e1, bv_e2)) - 183 | | BMinus (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> BMinus (w_opt, bv_e1, bv_e2)) - 184 | | ShLeft (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> ShLeft (w_opt, bv_e1, bv_e2)) - 185 | | LShRight (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> LShRight (w_opt, bv_e1, bv_e2)) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Concat (_, _, _)|Extract (_, _, _)|ZeroExtend (_, _, _)) - File "bitvector_sizing.ml", line 224, characters 21-28: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26: unused variable bv_e2''. - File "bitvector_sizing.ml", line 224, characters 12-19: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26: unused variable bv_e1''. - + ocamlfind ocamldep -package angstrom -package str -modules prim_translate.ml > prim_translate.ml.depends - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o prim_translate.cmo prim_translate.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o cli.cmo cli.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_pcap.cmo english/english_to_pcap.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_pcap.cmo english/english_to_pcap.ml - File "english/english_to_pcap.ml", lines 28-40, characters 2-9: - 28 | ..match ph with - 29 | | Phrase ph_s -> - 30 | begin - 31 | match - 32 | ( proto_keyword_of_engl_string ph_s, - ... - 37 | | _, Some (DirField d), _ -> Ok (None, Some d, None) - 38 | | _, _, Some (TypField t) -> Ok (None, None, Some t) - 39 | | _ -> Error ("invalid field (proto/dir/typ) value: '" ^ ph_s ^ "'") - 40 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 49-56, characters 10-13: - 49 | ..........begin - 50 | match t with - 51 | | Phrase ph_s -> ( - 52 | match (dir_keyword_of_engl_string ph_s, typ_keyword_of_engl_string ph_s) with - 53 | | Some (DirField d), _ -> Ok (Some p, Some d, None) - 54 | | _, Some (TypField t) -> Ok (Some p, None, Some t) - 55 | | _ -> Error ("invalid field (dir/typ) value: '" ^ ph_s ^ "'")) - 56 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 58-64, characters 10-13: - 58 | ..........begin - 59 | match t with - 60 | | Phrase ph_s -> ( - 61 | match typ_keyword_of_engl_string ph_s with - 62 | | Some (TypField t) -> Ok (p_opt, Some d, Some t) - 63 | | _ -> Error ("invalid field (typ) value: '" ^ ph_s ^ "'")) - 64 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 105-112, characters 6-26: - 105 | ......match vals with - 106 | | Ok (v :: []) -> Ok (Primitive (f, v)) - 107 | | Ok (v1 :: vs) -> - 108 | (* a disjunction of the form "<proto> <value1> || <value2> || <value3> || ..." *) - 109 | let f0 = (None, None, None) in - 110 | Ok - 111 | (Or (Primitive (f, v1) :: List.map (fun v -> Primitive (f0, v)) vs)) - 112 | | Error e -> Error e. - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ok [] - File "english/english_to_pcap.ml", lines 122-125, characters 12-42: - 122 | ............match ordinal_name_s with - 123 | | "byte" -> "" - 124 | | "2 bytes" -> " : 2" - 125 | | "4 bytes" | "word" -> " : 4" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "english/english_to_pcap.ml", lines 117-127, characters 76-63: - 117 | ............................................................................( - 118 | match field_of_phrase_term (Phrase collection_name) with - 119 | | Ok (Some p, _, _) -> - 120 | let header_name_s = Pcap_syntax_aux.string_of_proto p in - 121 | let no_bytes = - ... - 124 | | "2 bytes" -> " : 2" - 125 | | "4 bytes" | "word" -> " : 4" - 126 | in - 127 | " " ^ header_name_s ^ "[" ^ number ^ no_bytes ^ "] ") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Ok (None, _, _)|Error _) - File "english/english_to_pcap.ml", lines 116-127, characters 2-63: - 116 | ..match ord_ref with - 117 | | OrdinalReference (number, ordinal_name_s, collection_name, "header") -> ( - 118 | match field_of_phrase_term (Phrase collection_name) with - 119 | | Ok (Some p, _, _) -> - 120 | let header_name_s = Pcap_syntax_aux.string_of_proto p in - ... - 124 | | "2 bytes" -> " : 2" - 125 | | "4 bytes" | "word" -> " : 4" - 126 | in - 127 | " " ^ header_name_s ^ "[" ^ number ^ no_bytes ^ "] ") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (OrdinalReference (_, _, _, "")|Phrase _|UnidentifiedString _| - With_term (_, _, _)|OfSize_term (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 134-135, characters 10-68: - 134 | ..........match l with - 135 | | OrdinalReference _ -> string_of_ordinal_reference_term l - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Phrase _|UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - TermList _) - File "english/english_to_pcap.ml", lines 157-159, characters 12-15: - 157 | ............begin - 158 | match fld with Ok f -> Ok (Primitive (f, Nothing)) - 159 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Error _ - File "english/english_to_pcap.ml", lines 167-169, characters 12-15: - 167 | ............begin - 168 | match fld with Ok f -> Ok (Primitive (f, Nothing)) - 169 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Error _ - File "english/english_to_pcap.ml", lines 151-188, characters 2-80: - 151 | ..match c with - 152 | | OfType r -> - 153 | begin - 154 | match r with - 155 | | Phrase _ -> - ... - 185 | let relation_s = left_arith_s ^ " " ^ comp_s ^ " " ^ right_arith_s in - 186 | (* FIXME - can't check for syntax errors here *) - 187 | Ok (Parsing_support.parse_string relation_s) - 188 | | Unit (UnidentifiedString x) -> Ok (Primitive ((None, None, None), String x)) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Relation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _)| - ExaminingRelation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _, _)| - Unit - (Phrase _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _)) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o expand.cmo expand.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/pcap_to_english.cmo english/pcap_to_english.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/pcap_to_english.cmo english/pcap_to_english.ml - File "english/pcap_to_english.ml", lines 109-116, characters 16-47: - 109 | ................( - 110 | match value with - 111 | | Phrase val_s -> - 112 | Ok - 113 | (Relation_clause - 114 | ( Phrase "is less than or equal to", - 115 | Arithmetic ("len", []), - 116 | Arithmetic (val_s, []) ))) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/pcap_to_english.ml", lines 117-124, characters 19-47: - 117 | ...................( - 118 | match value with - 119 | | Phrase val_s -> - 120 | Ok - 121 | (Relation_clause - 122 | ( Phrase "is greater than or equal to", - 123 | Arithmetic ("len", []), - 124 | Arithmetic (val_s, []) ))) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_wellformed.cmo syntax/pcap_wellformed.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pretty_printing.cmo pretty_printing.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pseudonymise.cmo pseudonymise.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o reorder.cmo reorder.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o reorder.cmo reorder.ml - File "reorder.ml", line 31, characters 4-19: - 31 | int_of_string s; - ^^^^^^^^^^^^^^^ - Warning 10: this expression should have type unit. - File "reorder.ml", line 33, characters 14-31: - 33 | with Failure("int_of_string") -> false - ^^^^^^^^^^^^^^^^^ - Warning 52: Code should not depend on the actual values of - this constructor's arguments. They are only for information - and may change in future versions. (See manual section 9.5) - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o translate.cmo translate.ml - + ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o caper.cmo caper.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_syntax.cmx english/english_syntax.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_parsing.cmx english/english_parsing.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_parsing.cmx english/english_parsing.ml - File "english/english_parsing.ml", lines 316-324, characters 15-35: - 316 | ...............function - 317 | | "1st" | "first" -> return "1" - 318 | | "2nd" | "second" -> return "2" - 319 | | "3rd" | "third" -> return "3" - 320 | | "fourth" -> return "4" - 321 | | "fifth" -> return "5" - 322 | | "sixth" -> return "6" - 323 | | "seventh" -> return "7" - 324 | | "eighth" -> return "8".. - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "english/english_parsing.ml", lines 457-464, characters 6-45: - 457 | ......fun (used_it_variable, Relation_clause (comp, left_term, right_expr)) -> - 458 | if used_it_variable then - 459 | return - 460 | (Clause (ExaminingRelation_clause (comp, it_val, left_term, right_expr))) - 461 | else - 462 | fail - 463 | ("did not use '# it' variable for the examination argument" - 464 | ^ " in 'examining' relation expression") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (OfType _|ThatIs (_, _)|IsThatOf (_, _)|ThatHas (_, _, _)|Unit _)) - File "english/english_parsing.ml", line 612, characters 19-75: - 612 | (fun sep es -> match sep with "and" -> And_expr es | "or" -> Or_expr es) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "english/english_parsing.ml", lines 631-633, characters 2-61: - 631 | ..match e with - 632 | | Or_expr _ -> return e - 633 | | And_expr _ -> fail "too many 'if and only if' connectors" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (True_expr|False_expr|Clause _|Not_expr _) - File "english/english_parsing.ml", lines 694-697, characters 25-50: - 694 | .........................function - 695 | | Clause (Unit (UnidentifiedString "")) -> return expr - 696 | | Clause (Unit (UnidentifiedString rest)) -> - 697 | fail ("unparseable English: '" ^ rest ^ "'") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clause - (Unit - (Phrase _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _))| - Clause - (OfType _|ThatIs (_, _)|IsThatOf (_, _)|ThatHas (_, _, _)| - Relation_clause (_, _, _)|ExaminingRelation_clause (_, _, _, _))| - True_expr|False_expr|And_expr _|Or_expr _|Not_expr _) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_syntax.cmx syntax/pcap_syntax.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_pcap_spec.cmx english/english_to_pcap_spec.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o config.cmx config.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/inst.cmx pcap_to_bpf/inst.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/inst.cmx pcap_to_bpf/inst.ml - File "pcap_to_bpf/inst.ml", lines 159-169, characters 4-50: - 159 | ....match v with - 160 | | X -> "x" - 161 | | True -> "true" - 162 | | False -> "false" - 163 | | Off idx -> Printf.sprintf "[%d]" idx - ... - 166 | | Hexj num -> Printf.sprintf "#0x%x" num - 167 | | Lit num -> Printf.sprintf "%d" num - 168 | | Exp (val1,val2,operator) -> Printf.sprintf "(%s %s %s)" (helper val1) (operator_to_str operator) (helper val2) - 169 | | Offset v -> Printf.sprintf "[%s]" (helper v)... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - NilVal - File "pcap_to_bpf/inst.ml", lines 206-223, characters 18-59: - 206 | ..................function - 207 | | No_cond -> "no_cond" - 208 | | Ip_Protochain_cond value -> pretty_format "ip protochain" (value_to_str value) - 209 | | Ip6_Protochain_cond value -> pretty_format "ip6 protochain" (value_to_str value) - 210 | | Icmp6_Protochain_cond value -> pretty_format "icmp6_protochain" (value_to_str value) - ... - 220 | | Jle value -> pretty_format "jle" (value_to_str value) - 221 | | Jgt value -> pretty_format "jgt" (value_to_str value) - 222 | | Jge value -> pretty_format "jge" (value_to_str value) - 223 | | Jset value -> pretty_format "jset" (value_to_str value) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (True_cond|False_cond) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/headers.cmx pcap_to_bpf/headers.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/headers.cmx pcap_to_bpf/headers.ml - File "pcap_to_bpf/headers.ml", line 85, characters 4-5: - 85 | | _ -> failwith "unsupported Layer" - ^ - Warning 11: this match case is unused. - File "pcap_to_bpf/headers.ml", lines 88-98, characters 2-17: - 88 | ..match p with - 89 | | L2 Ether -> 14 - 90 | | L2_5 Vlan -> 4 - 91 | | L2_5 Mpls -> 4 - 92 | | L2 Fddi -> 14 - ... - 95 | | L4 Icmp -> 8 - 96 | | L4 Icmp6 -> 8 - 97 | | L3 Arp -> 28 - 98 | | L3 Rarp -> 28 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - L4 (Tcp|Udp|Sctp) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/util.cmx pcap_to_bpf/util.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/util.cmx pcap_to_bpf/util.ml - File "pcap_to_bpf/util.ml", lines 80-85, characters 2-120: - 80 | ..match sf with - 81 | | Some {code = [Nil_op]; cond = No_cond; jt = None; jf = None;} -> Some {code = [Nil_op]; cond = No_cond; jt = None; jf = None;} - 82 | | Some {code = [Logical_And]; cond = True_cond; jf = sf2; jt = sf1} -> Some {code = [Logical_Or]; cond = True_cond; jf = negate sf2; jt = negate sf1;} - 83 | | Some {code = [Logical_Or]; cond = True_cond; jf = sf2; jt = sf1} -> Some {code = [Logical_And]; cond = True_cond; jf = negate sf2; jt = negate sf1;} - 84 | | Some {code = x; cond = y; jf = ret_false; jt = ret_true} -> Some {code = x; cond = y; jf = ret_true; jt = ret_false} - 85 | | Some {code = x; cond = y; jf = ret_true; jt = ret_false} -> Some {code = x; cond = y; jf = ret_false; jt = ret_true} - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - File "pcap_to_bpf/util.ml", line 85, characters 4-60: - 85 | | Some {code = x; cond = y; jf = ret_true; jt = ret_false} -> Some {code = x; cond = y; jf = ret_false; jt = ret_true} - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 11: this match case is unused. - File "pcap_to_bpf/util.ml", lines 125-129, characters 20-14: - 125 | ....................function - 126 | | "ip" -> 12 - 127 | | "arp" -> 14 - 128 | | "rarp" -> 14 - 129 | | "ip6" -> 8 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/util.ml", lines 131-135, characters 20-15: - 131 | ....................function - 132 | | "ip" -> 16 - 133 | | "arp" -> 24 - 134 | | "rarp" -> 24 - 135 | | "ip6" -> 24 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/util.ml", lines 138-142, characters 2-42: - 138 | ..match net with - 139 | | [oct1] -> 0xff000000 - 140 | | [oct1; oct2] -> 0xffff0000 - 141 | | [oct1; oct2; oct3;] -> 0xffffff00 - 142 | | [oct1; oct2; oct3; oct4] -> 0xffffffff - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_::_::_|[]) - File "pcap_to_bpf/util.ml", lines 187-188, characters 4-87: - 187 | ....match ipv6_piece with - 188 | | [x; y] -> Int.shift_left (int_of_string ("0x" ^ x)) 16 + int_of_string ("0x" ^ y)... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_|_::[]|[]) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/block.cmx pcap_to_bpf/block.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/register.cmx pcap_to_bpf/optimizer/register.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/register.cmx pcap_to_bpf/optimizer/register.ml - File "pcap_to_bpf/optimizer/register.ml", line 53, characters 4-5: - 53 | | _ -> failwith (Printf.sprintf "%s" (reg_to_str reg)) - ^ - Warning 11: this match case is unused. - File "pcap_to_bpf/optimizer/register.ml", lines 56-57, characters 2-14: - 56 | ..match reg with - 57 | | Reg v -> v - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (NilReg|Reg_exp (_, _, _)) - File "pcap_to_bpf/optimizer/register.ml", lines 109-125, characters 55-96: - 109 | .......................................................function - 110 | | Lit n | Hex n | Hexj n -> Reg (Hex n) - 111 | | Off n -> Reg (Off n) - 112 | | Offset n -> Reg (Offset (get_val (regify a_reg x_reg n))) - 113 | | X -> x_reg - ... - 122 | | Arith_and -> arith_and (regify a_reg x_reg v1) (regify a_reg x_reg v2) - 123 | | Arith_xor -> arith_xor (regify a_reg x_reg v1) (regify a_reg x_reg v2) - 124 | | Logical_shift_left -> logical_shift_left (regify a_reg x_reg v1) (regify a_reg x_reg v2) - 125 | | Logical_shift_right -> logical_shift_right (regify a_reg x_reg v1) (regify a_reg x_reg v2) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (True|False|NilVal|Mem _) - File "pcap_to_bpf/optimizer/register.ml", lines 166-178, characters 8-68: - 166 | ........match cond1, cond2 with - 167 | | NilCond, _ -> if_insert tl c - 168 | | _, NilCond -> if_insert tl c - 169 | | Eq x, Eq y -> if x = y then Triv_True else Triv_False - 170 | | Eq x, Neq y -> if x = y then Triv_False else Triv_True - ... - 175 | | Gt x, Gt y -> if x >= y then Triv_True else if_insert tl c - 176 | | Gt x, Ge y -> if x > y then Triv_True else if_insert tl c - 177 | | Ge x, Gt y -> if x > y then Triv_True else if_insert tl c - 178 | | Ge x, Ge y -> if x >= y then Triv_True else if_insert tl c - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Ge _, (Eq _|Neq _|Lt _|Le _))|(Gt _, (Eq _|Neq _|Lt _|Le _))| - (Eq _, (Lt _|Le _))|(Neq _, (Lt _|Le _|Gt _|Ge _))| - ((Lt _|Le _), (Eq _|Neq _|Lt _|Le _|Gt _|Ge _))) - File "pcap_to_bpf/optimizer/register.ml", lines 184-235, characters 2-41: - 184 | ..match opcode with - 185 | | No_op _ | Nil_op -> a_reg, x_reg - 186 | | St (Mem n) -> - 187 | begin - 188 | memory.(n) <- a_reg; - ... - 232 | | Rsh X -> (logical_shift_right a_reg x_reg), x_reg - 233 | | Tax -> a_reg, a_reg - 234 | | Txa -> x_reg, x_reg - 235 | | Ret False | Ret True -> a_reg, x_reg - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (St (X|True|False|NilVal|Off _|Offset _|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Stx (X|True|False|NilVal|Off _|Offset _|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Ldi (X|True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Ld (X|True|False|NilVal|Exp (_, _, _))| - Ldx (X|True|False|NilVal|Offset _|Exp (_, _, _))| - Ldh (X|True|False|NilVal|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Ldb (X|True|False|NilVal|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Ldxb (X|True|False|NilVal|Offset _|Hex _|Hexj _|Lit _)| - Add (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Sub (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Mul (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Div (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Mod (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - And (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Or (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Xor (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Lsh (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Rsh (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Ret (X|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Lit _|Exp (_, _, _))| - Logical_And|Logical_Or|Ldxi _|Neg _|Num _|List _) - File "pcap_to_bpf/optimizer/register.ml", lines 240-264, characters 4-7: - 240 | ....begin - 241 | match jump_cond with - 242 | | Jeq (Lit n) | Jeq (Hex n) | Jeq (Hexj n) -> a_reg, x_reg, (Eq (Reg (Hex n))) - 243 | | Jneq (Lit n) | Jneq (Hex n) | Jneq (Hexj n) -> a_reg, x_reg, (Neq (Reg (Hex n))) - 244 | | Jne (Lit n) | Jne (Hex n) | Jne (Hexj n) -> a_reg, x_reg, (Neq (Reg (Hex n))) - ... - 261 | | Ip_Protochain_Bridge_cond (Lit n) -> a_reg, x_reg, NilCond - 262 | | Ip6_Protochain_Bridge_cond (Lit n) -> a_reg, x_reg, NilCond - 263 | | Icmp6_Protochain_Bridge_cond (Lit n) -> a_reg, x_reg, NilCond - 264 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Jeq (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jneq (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jne (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jlt (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jle (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jgt (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jge (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Jset (True|False|NilVal|Off _|Offset _|Mem _|Exp (_, _, _))| - Ip_Protochain_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Ip6_Protochain_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Icmp6_Protochain_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Ip_Protochain_Bridge_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Ip6_Protochain_Bridge_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - Icmp6_Protochain_Bridge_cond - (X|True|False|NilVal|Off _|Offset _|Mem _|Hex _|Hexj _|Exp (_, _, _))| - True_cond|False_cond|No_cond|Jmp _|Ja _) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/env.cmx pcap_to_bpf/env.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/protochain.cmx pcap_to_bpf/protocol/protochain.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/protochain.cmx pcap_to_bpf/protocol/protochain.ml - File "pcap_to_bpf/protocol/protochain.ml", lines 93-113, characters 4-7: - 93 | ....match headers with - 94 | | Packet (_, _, L3 Ip) | Segment (_, _, L3 Ip, _)-> - 95 | Some { - 96 | code = [ - 97 | Ldb (Off (sum_of_pred_headers + 9)); - ... - 110 | cond = Jeq (Hexj protochain_num); - 111 | jt = ret_true; - 112 | jf = ret_false - 113 | } - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)) - File "pcap_to_bpf/protocol/protochain.ml", lines 126-130, characters 2-37: - 126 | ..match headers with - 127 | | Packet (_, _, L3 Ip) | Segment (_, _, L3 Ip, _)-> - 128 | gen_ip_protochain protochain_num - 129 | | Packet (_, _, L3 Ip6) | Segment (_, _, L3 Ip6, _)-> - 130 | gen_ip6_protochain protochain_num - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/host.cmx pcap_to_bpf/protocol/host.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/net.cmx pcap_to_bpf/protocol/net.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/net.cmx pcap_to_bpf/protocol/net.ml - File "pcap_to_bpf/protocol/net.ml", lines 96-102, characters 4-7: - 96 | ....begin - 97 | match String.split_on_char '/' net with - 98 | | net' :: [mask] -> - 99 | let mask' = int_of_string mask in - 100 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 101 | ipv6_src_net net'' mask' headers - 102 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_|_::[]|[]) - File "pcap_to_bpf/protocol/net.ml", lines 83-102, characters 2-7: - 83 | ..match protocol with - 84 | | "ip" | "arp" | "rarp" -> - 85 | let _net = String.split_on_char '.' net in - 86 | Some { - 87 | code = [ - ... - 99 | let mask' = int_of_string mask in - 100 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 101 | ipv6_src_net net'' mask' headers - 102 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/protocol/net.ml", lines 119-125, characters 4-7: - 119 | ....begin - 120 | match String.split_on_char '/' net with - 121 | | net' :: [mask] -> - 122 | let mask' = int_of_string mask in - 123 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 124 | ipv6_dst_net net'' mask' headers - 125 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_::_::_::_|_::[]|[]) - File "pcap_to_bpf/protocol/net.ml", lines 106-125, characters 2-7: - 106 | ..match protocol with - 107 | | "ip" | "arp" | "rarp" -> - 108 | let _net = String.split_on_char '.' net in - 109 | Some { - 110 | code = [ - ... - 122 | let mask' = int_of_string mask in - 123 | let net'' = String.split_on_char ':' net' |> (List.filter (fun a -> a <> "")) |> ipv6_pad in - 124 | ipv6_dst_net net'' mask' headers - 125 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ether.cmx pcap_to_bpf/protocol/ether.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp6.cmx pcap_to_bpf/protocol/icmp6.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp6.cmx pcap_to_bpf/protocol/icmp6.ml - File "pcap_to_bpf/protocol/icmp6.ml", lines 186-189, characters 2-43: - 186 | ..match icmp6_info with - 187 | | "protochain" :: [protochain_num] -> - 188 | Env.generate_icmp6_protochain := true; - 189 | icmp6_protochain protochain_num headers - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("protochain"::_::_::_|"protochain"::[]|""::_|[]) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/infix_to_postfix.cmx pcap_to_bpf/infix_to_postfix.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/infix_to_postfix.cmx pcap_to_bpf/infix_to_postfix.ml - File "pcap_to_bpf/infix_to_postfix.ml", lines 73-78, characters 6-60: - 73 | ......match block with - 74 | | head :: rest -> - 75 | if is_square_open head || is_square_close head then - 76 | let square_cnt = count_square 0 0 head in - 77 | parse_square_bracket (head :: ret) rest (counter + (fst square_cnt) - (snd square_cnt)) - 78 | else parse_square_bracket (head :: ret) rest counter - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ip6.cmx pcap_to_bpf/protocol/ip6.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/port.cmx pcap_to_bpf/protocol/port.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/portrange.cmx pcap_to_bpf/protocol/portrange.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp.cmx pcap_to_bpf/protocol/icmp.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/icmp.cmx pcap_to_bpf/protocol/icmp.ml - File "pcap_to_bpf/protocol/icmp.ml", lines 95-96, characters 2-78: - 95 | ..match icmp_info with - 96 | | "protochain" :: [protochain_num] -> icmp_protochain protochain_num headers - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("protochain"::_::_::_|"protochain"::[]|""::_|[]) - File "pcap_to_bpf/protocol/icmp.ml", line 72, characters 6-19: - 72 | let source_quench = Some {code = []; cond = Jeq (Hexj 0x4); jt = ret_true; jf = ret_false} in - ^^^^^^^^^^^^^ - Warning 26: unused variable source_quench. - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ip.cmx pcap_to_bpf/protocol/ip.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/ip.cmx pcap_to_bpf/protocol/ip.ml - File "pcap_to_bpf/protocol/ip.ml", lines 41-42, characters 2-157: - 41 | ..match headers with - 42 | | Packet (x, _, L3 Ip) | Segment (x, _, L3 Ip, _) -> Ldxb (Exp ((Lit 4), (Exp ((Off (sum_of_header headers "ip")), (Hex 0xf), Arith_and)), Multiplication)) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Ip6|Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Ip6|Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)| - Nil|Frame (_, _)) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/sctp.cmx pcap_to_bpf/protocol/sctp.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/tcp.cmx pcap_to_bpf/protocol/tcp.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/udp.cmx pcap_to_bpf/protocol/udp.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/arp.cmx pcap_to_bpf/protocol/arp.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/bound.cmx pcap_to_bpf/protocol/bound.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/eval.cmx pcap_to_bpf/eval.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/eval.cmx pcap_to_bpf/eval.ml - File "pcap_to_bpf/eval.ml", lines 73-82, characters 13-21: - 73 | .............function - 74 | | "+" -> Add X - 75 | | "-" -> Sub X - 76 | | "*" -> Mul X - 77 | | "/" -> Div X - 78 | | "%" -> Mod X - 79 | | "&" -> And X - 80 | | "|" -> Or X - 81 | | "<<" -> Lsh X - 82 | | ">>" -> Rsh X... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/eval.ml", lines 83-87, characters 4-63: - 83 | ....match operator, num_op, proto_op with - 84 | | "+", _, _ -> eval_proto_num operator proto_op num_op headers - 85 | | "*", _, _ -> eval_proto_num operator proto_op num_op headers - 86 | | other, Num n, List x -> List (x @ [Tax; Ld (Lit n); op other]) - 87 | | other, Num n, x -> List ([x; Tax; Ld (Lit n); op other]) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("", - (Tax|Txa|Logical_And|Logical_Or|Nil_op|Ld _|Ldi _|Ldh _|Ldb _|Ldx _|Ldxi _| - Ldxb _|St _|Stx _|Add _|Sub _|Mul _|Div _|Mod _|Neg _|And _|Or _|Xor _| - Lsh _|Rsh _|No_op _|List _|Ret _), _) - File "pcap_to_bpf/eval.ml", lines 91-100, characters 13-21: - 91 | .............function - 92 | | "+" -> Add X - 93 | | "-" -> Sub X - 94 | | "*" -> Mul X - 95 | | "/" -> Div X - 96 | | "%" -> Mod X - 97 | | "&" -> And X - 98 | | "|" -> Or X - 99 | | "<<" -> Lsh X - 100 | | ">>" -> Rsh X... - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/eval.ml", lines 143-148, characters 4-49: - 143 | ....match comparison with - 144 | | "=" | "==" | "!=" -> comp_opcode_int comparison op num headers - 145 | | "<" -> comp_opcode_int ">" op num headers - 146 | | ">" -> comp_opcode_int "<" op num headers - 147 | | ">=" -> comp_opcode_int "<=" op num headers - 148 | | "<=" -> comp_opcode_int ">=" op num headers - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/eval.ml", line 188, characters 4-5: - 188 | | _ -> failwith "Eval.eval_pcaps" - ^ - Warning 11: this match case is unused. - File "pcap_to_bpf/eval.ml", lines 192-213, characters 2-42: - 192 | ..match headers with - 193 | | Frame (l2, _) | Packet (l2, _, _) | Segment (l2, _, _, _) -> - 194 | if l2 <> _protocol then failwith "Eval.l2_expr_size" else - 195 | if is_digit expr then - 196 | let inst = - ... - 210 | | 4 -> Ld (Offset (Exp (X, (Lit (0)), Addition))) - 211 | | _ -> failwith "Eval.l2_expr_size ( 1, 2, 4 )" - 212 | in - 213 | List (expr_op @ (Tax :: inst :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Nil - File "pcap_to_bpf/eval.ml", lines 217-239, characters 2-44: - 217 | ..match headers with - 218 | | Packet (_, _, l3) | Segment (_, _ ,l3, _) -> - 219 | if l3 <> _protocol then failwith "Eval.l3_expr_size" else - 220 | let pred_header_size = sum_of_header headers protocol in - 221 | if is_digit expr then - ... - 236 | | 4 -> Ld (Offset (Exp (X, (Lit (pred_header_size)), Addition))) - 237 | | _ -> failwith "Eval.l3_expr_size" - 238 | in - 239 | List (expr_op @ (Tax :: inst :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Nil|Frame (_, _)) - File "pcap_to_bpf/eval.ml", lines 243-283, characters 2-42: - 243 | ..match headers with - 244 | | Segment (_, _, L3 Ip, l4) -> - 245 | if l4 <> _protocol then failwith "Eval.l4_expr_size" else - 246 | let pred_header_size = sum_of_header headers "ip" in - 247 | if is_digit expr then - ... - 280 | | 4 -> Ld (Offset (Exp (X, (Lit (sum_of_header headers protocol)), Addition))) - 281 | | _ -> failwith "Eval.l4_expr_size" - 282 | in - 283 | List (expr_op @ (Tax :: inst :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)|Packet (_, _, _)) - File "pcap_to_bpf/eval.ml", lines 287-294, characters 2-80: - 287 | ..match headers with - 288 | | Frame (l2, _) | Packet (l2, _, _) | Segment (l2, _, _, _) -> - 289 | if _protocol <> l2 then failwith "Eval.l2_offset" else - 290 | if is_digit idx then - 291 | Ldb (Off (int_of_string idx)) - 292 | else - 293 | let idx_op = (Option.get (eval_pcaps [] (pcap_infix_to_postfix idx) headers)).code in - 294 | List (idx_op @ (Tax :: Ldb (Offset (Exp (X, (Lit (0)), Addition))) :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Nil - File "pcap_to_bpf/eval.ml", lines 298-305, characters 2-109: - 298 | ..match headers with - 299 | | Packet (l2, _, l3) | Segment (l2, _, l3, _) -> - 300 | if _protocol <> l3 then failwith "Eval.l3_offset" else - 301 | if is_digit idx then - 302 | Ldb (Off (sum_of_header headers protocol + int_of_string idx)) - 303 | else - 304 | let idx_op = (Option.get (eval_pcaps [] (pcap_infix_to_postfix idx) headers)).code in - 305 | List (idx_op @ (Tax :: Ldb (Offset (Exp (X, (Lit (sum_of_header headers protocol)), Addition))) :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Nil|Frame (_, _)) - File "pcap_to_bpf/eval.ml", lines 309-324, characters 2-107: - 309 | ..match headers with - 310 | | Segment (l2, _, L3 Ip, l4) -> - 311 | let pred_header_size = sum_of_header headers "ip" in - 312 | if _protocol <> l4 then failwith "Eval.l4_offset" else - 313 | if is_digit idx then - ... - 321 | Ldb (Off (sum_of_header headers protocol + int_of_string idx)) - 322 | else - 323 | let idx_op = (Option.get (eval_pcaps [] (pcap_infix_to_postfix idx) headers)).code in - 324 | List (idx_op @ (Tax :: Ldb (Offset (Exp (X, Lit (sum_of_header headers protocol), Addition))) :: [])) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)|Packet (_, _, _)) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/mpls.cmx pcap_to_bpf/protocol/mpls.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/mpls.cmx pcap_to_bpf/protocol/mpls.ml - File "pcap_to_bpf/protocol/mpls.ml", lines 36-47, characters 2-34: - 36 | ..match mpls_info, l2_5_header with - 37 | | [], L2_5 Mpls :: [] -> is_mpls headers - 38 | | [], L2_5 Mpls :: L2_5 Vlan :: l2_5 -> is_mpls headers - 39 | | [], L2_5 Mpls :: L2_5 Mpls :: l2_5 -> is_bottom headers - 40 | | [mpls_val], L2_5 Mpls :: [] | [mpls_val], L2_5 Mpls :: L2_5 Vlan :: _ -> - ... - 44 | | [mpls_val], L2_5 Mpls :: L2_5 Mpls :: l2_5 -> - 45 | let _mpls_val = mpls_val_shift (int_of_string mpls_val) in - 46 | let sf = Some {code = [Ld (Off (get_protocol_size (get_l2 headers) + get_l2_5_size headers - 4)); And (Hexj 0xfffff000)]; cond = Jeq (Hexj (_mpls_val)); jt = ret_true; jf = ret_false}in - 47 | conjoin (is_bottom headers) sf - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((_::[], L2_5 Mpls::(L2 _|L3 _|L4 _)::_)|(_::[], L2_5 Vlan::_)| - (_::[], (L2 _|L3 _|L4 _)::_)|(_::[], [])|(_::_::_, _)| - ([], L2_5 Mpls::(L2 _|L3 _|L4 _)::_)|([], L2_5 Vlan::_)| - ([], (L2 _|L3 _|L4 _)::_)|([], [])) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/rarp.cmx pcap_to_bpf/protocol/rarp.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/vlan.cmx pcap_to_bpf/protocol/vlan.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -o pcap_to_bpf/protocol/vlan.cmx pcap_to_bpf/protocol/vlan.ml - File "pcap_to_bpf/protocol/vlan.ml", lines 39-189, characters 2-79: - 39 | ..match vlan_info, headers with - 40 | (* [snipped from <linux/filter.h>] - 41 | Git hash: 6f52b16c5b29b89d92c0e7236f4655dc8491ad70 - 42 | https://github.com/torvalds/linux/blob/master/include/uapi/linux/filter.h - 43 | - ... - 186 | jf = ret_false; - 187 | } - 188 | in - 189 | conjoin (disjoin vlan_id_8100 (disjoin vlan_id_88a8 vlan_id_9100)) vlan_val - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (("SKF_AD"::_::_, _)| - ("SKF_AD_TAG"::[], (Nil|Packet (_, _, _)|Segment (_, _, _, _)))| - ("SKF_AD_TAG"::_::_::_, _)| - (""::[], (Nil|Packet (_, _, _)|Segment (_, _, _, _)))|(""::_::_, _)| - ([], (Nil|Packet (_, _, _)|Segment (_, _, _, _)))) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/bpf_optimizer.cmx pcap_to_bpf/optimizer/bpf_optimizer.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/protocol -o pcap_to_bpf/optimizer/bpf_optimizer.cmx pcap_to_bpf/optimizer/bpf_optimizer.ml - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", lines 53-59, characters 2-65: - 53 | ..match blocks with - 54 | | b :: bs -> - 55 | match b with - 56 | | {key = _; opcodes = [Ret True]; cond = _; jt = -1; jf = -1} - 57 | | {key = _; opcodes = [Ret False]; cond = _; jt = -1; jf = -1} -> ret - 58 | | {key = key; opcodes = opcodes; cond = cond; jt = jt; jf = jf} -> - 59 | get_pkt_acpt_line_helper (ret + List.length opcodes + 1) bs - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", line 187, characters 14-19: - 187 | let new_a = {key = a_key; opcodes = a_opcodes; cond = a_cond; jt = a_jt; jf = a_jf} in - ^^^^^ - Warning 26: unused variable new_a. - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", line 486, characters 16-22: - 486 | let jf_blk = Hashtbl.find blocks_tbl b.jf in - ^^^^^^ - Warning 26: unused variable jf_blk. - File "pcap_to_bpf/optimizer/bpf_optimizer.ml", line 501, characters 16-28: - 501 | let cur_blk_eval = Hashtbl.find blocks_eval_tbl b.key in - ^^^^^^^^^^^^ - Warning 26: unused variable cur_blk_eval. - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/pcap_to_tree.cmx pcap_to_bpf/pcap_to_tree.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/pcap_to_tree.cmx pcap_to_bpf/pcap_to_tree.ml - File "pcap_to_bpf/pcap_to_tree.ml", lines 53-58, characters 4-35: - 53 | ....match protocol with - 54 | | "icmp" -> icmp_to_sock_filter - 55 | | "tcp" -> tcp_to_sock_filter - 56 | | "udp" -> udp_to_sock_filter - 57 | | "icmp6" -> icmp6_to_sock_filter - 58 | | "sctp" -> sctp_to_sock_filter - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/pcap_to_tree.ml", lines 61-66, characters 4-19: - 61 | ....match protocol with - 62 | | "icmp" -> 1 - 63 | | "tcp" -> 6 - 64 | | "udp" -> 17 - 65 | | "icmp6" -> 58 - 66 | | "sctp" -> 132 - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "pcap_to_bpf/pcap_to_tree.ml", lines 78-80, characters 6-88: - 78 | ......match headers with - 79 | | Packet (_, _, L3 Ip) | Segment (_, _, L3 Ip, _) -> sum_of_header headers "ip" - 80 | | Packet (_, _, L3 Ip6) | Segment (_, _, L3 Ip6, _) -> sum_of_header headers "ip6" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Packet (_, _, L3 (Arp|Rarp))|Packet (_, _, (L2 _|L2_5 _|L4 _))| - Segment (_, _, L3 (Arp|Rarp), _)|Segment (_, _, (L2 _|L2_5 _|L4 _), _)|Nil| - Frame (_, _)) - File "pcap_to_bpf/pcap_to_tree.ml", lines 69-98, characters 2-37: - 69 | ..match !Env.protochain_list, protocol with - 70 | | [], _ - 71 | | 1 :: _, "icmp" - 72 | | 6 :: _, "tcp" - 73 | | 17 :: _, "udp" - ... - 95 | failwith "not_supported protochain_bridge" - 96 | in - 97 | Env.protochain_list := protocol_num :: !Env.protochain_list; - 98 | conjoin protochain_bridge main_sf - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((1::_, "")|(6::_, "")|(17::_, "")|(58::_, "")|(0::_, _)) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/tree_to_bpf.cmx pcap_to_bpf/tree_to_bpf.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o html.cmx html.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf -I english -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pcap_to_bpf/pcap_to_bpf.cmx pcap_to_bpf/pcap_to_bpf.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o aux.cmx aux.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/bitvector.cmx syntax/bitvector.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/bitvector.cmx syntax/bitvector.ml - File "syntax/bitvector.ml", lines 83-189, characters 2-9: - 83 | ..match bv_e with - 84 | | Hole (_, s) -> s - 85 | | Const (Some w, n) -> - 86 | assert (exponentiate 2 w > n); - 87 | let nibble_width = - ... - 186 | "((_ zero_extend " ^ - 187 | string_of_int w ^ ") " ^ - 188 | string_of_bv_exp bv_e' ^ - 189 | ")" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Const (None, _) - File "syntax/bitvector.ml", line 87, characters 10-22: - 87 | let nibble_width = - ^^^^^^^^^^^^ - Warning 26: unused variable nibble_width. - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/string_features.cmx syntax/string_features.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_syntax_aux.cmx syntax/pcap_syntax_aux.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o layering.cmx layering.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o names.cmx names.ml - + ocamlfind ocamldep -package angstrom -package str -modules syntax/pcap_parser.ml > syntax/pcap_parser.ml.depends - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_parser.cmx syntax/pcap_parser.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_lexer.cmx syntax/pcap_lexer.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_string.cmx english/english_to_string.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_string.cmx english/english_to_string.ml - File "english/english_to_string.ml", lines 73-111, characters 2-46: - 73 | ..match c with - 74 | | OfType t -> (if logically_positive then "of type" else "not of type") ^ " " ^ string_of_term t - 75 | | ThatIs (t1, t2) -> - 76 | string_of_term t1 ^ " " - 77 | ^ (if logically_positive then "that is" else "that is not") - ... - 108 | | ExaminingRelation_clause (Phrase comp, it_var, left, right) -> - 109 | let it_str = string_of_term it_var in - 110 | "examining" ^ " " ^ it_str ^ ":" ^ " " ^ string_of_arith_val left ^ " " - 111 | ^ comp ^ " " ^ string_of_arith_val right - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Relation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _)| - ExaminingRelation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _, _)| - Unit _) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o parsing_support.cmx parsing_support.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o contract.cmx contract.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o simplifire.cmx simplifire.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/pcap_to_english_spec.cmx english/pcap_to_english_spec.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o bitvector_sizing.cmx bitvector_sizing.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o bitvector_sizing.cmx bitvector_sizing.ml - File "bitvector_sizing.ml", lines 34-36, characters 6-37: - 34 | ......let (bv_e2', Some bv_e2_w) = width_of_bv_exp bv_e2 in - 35 | assert (w = bv_e1_w + bv_e2_w); - 36 | Concat (Some w, bv_e1', bv_e2') - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, None) - File "bitvector_sizing.ml", lines 33-36, characters 6-37: - 33 | ......let (bv_e1', Some bv_e1_w) = width_of_bv_exp bv_e1 in - 34 | let (bv_e2', Some bv_e2_w) = width_of_bv_exp bv_e2 in - 35 | assert (w = bv_e1_w + bv_e2_w); - 36 | Concat (Some w, bv_e1', bv_e2') - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, None) - File "bitvector_sizing.ml", lines 170-185, characters 2-137: - 170 | ..match bv_e with - 171 | | Hole (w, _) - 172 | | Const (w, _) -> (bv_e, w) - 173 | | BNot (w_opt, bv_e') -> width_of_mono (w_opt, bv_e') (fun (x1, x2) -> BNot (x1, x2)) - 174 | | BNegate (w_opt, bv_e') -> width_of_mono (w_opt, bv_e') (fun (x1, x2) -> BNegate (x1, x2)) - ... - 182 | | BMod (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> BMod (w_opt, bv_e1, bv_e2)) - 183 | | BMinus (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> BMinus (w_opt, bv_e1, bv_e2)) - 184 | | ShLeft (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> ShLeft (w_opt, bv_e1, bv_e2)) - 185 | | LShRight (w_opt, bv_e1, bv_e2) -> width_of_binary (w_opt, bv_e1, bv_e2) (fun (w_opt, bv_e1, bv_e2) -> LShRight (w_opt, bv_e1, bv_e2)) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Concat (_, _, _)|Extract (_, _, _)|ZeroExtend (_, _, _)) - File "bitvector_sizing.ml", line 224, characters 21-28: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26: unused variable bv_e2''. - File "bitvector_sizing.ml", line 224, characters 12-19: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26: unused variable bv_e1''. - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o prim_translate.cmx prim_translate.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o cli.cmx cli.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_pcap.cmx english/english_to_pcap.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/english_to_pcap.cmx english/english_to_pcap.ml - File "english/english_to_pcap.ml", lines 28-40, characters 2-9: - 28 | ..match ph with - 29 | | Phrase ph_s -> - 30 | begin - 31 | match - 32 | ( proto_keyword_of_engl_string ph_s, - ... - 37 | | _, Some (DirField d), _ -> Ok (None, Some d, None) - 38 | | _, _, Some (TypField t) -> Ok (None, None, Some t) - 39 | | _ -> Error ("invalid field (proto/dir/typ) value: '" ^ ph_s ^ "'") - 40 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 49-56, characters 10-13: - 49 | ..........begin - 50 | match t with - 51 | | Phrase ph_s -> ( - 52 | match (dir_keyword_of_engl_string ph_s, typ_keyword_of_engl_string ph_s) with - 53 | | Some (DirField d), _ -> Ok (Some p, Some d, None) - 54 | | _, Some (TypField t) -> Ok (Some p, None, Some t) - 55 | | _ -> Error ("invalid field (dir/typ) value: '" ^ ph_s ^ "'")) - 56 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 58-64, characters 10-13: - 58 | ..........begin - 59 | match t with - 60 | | Phrase ph_s -> ( - 61 | match typ_keyword_of_engl_string ph_s with - 62 | | Some (TypField t) -> Ok (p_opt, Some d, Some t) - 63 | | _ -> Error ("invalid field (typ) value: '" ^ ph_s ^ "'")) - 64 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 105-112, characters 6-26: - 105 | ......match vals with - 106 | | Ok (v :: []) -> Ok (Primitive (f, v)) - 107 | | Ok (v1 :: vs) -> - 108 | (* a disjunction of the form "<proto> <value1> || <value2> || <value3> || ..." *) - 109 | let f0 = (None, None, None) in - 110 | Ok - 111 | (Or (Primitive (f, v1) :: List.map (fun v -> Primitive (f0, v)) vs)) - 112 | | Error e -> Error e. - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ok [] - File "english/english_to_pcap.ml", lines 122-125, characters 12-42: - 122 | ............match ordinal_name_s with - 123 | | "byte" -> "" - 124 | | "2 bytes" -> " : 2" - 125 | | "4 bytes" | "word" -> " : 4" - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "" - File "english/english_to_pcap.ml", lines 117-127, characters 76-63: - 117 | ............................................................................( - 118 | match field_of_phrase_term (Phrase collection_name) with - 119 | | Ok (Some p, _, _) -> - 120 | let header_name_s = Pcap_syntax_aux.string_of_proto p in - 121 | let no_bytes = - ... - 124 | | "2 bytes" -> " : 2" - 125 | | "4 bytes" | "word" -> " : 4" - 126 | in - 127 | " " ^ header_name_s ^ "[" ^ number ^ no_bytes ^ "] ") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Ok (None, _, _)|Error _) - File "english/english_to_pcap.ml", lines 116-127, characters 2-63: - 116 | ..match ord_ref with - 117 | | OrdinalReference (number, ordinal_name_s, collection_name, "header") -> ( - 118 | match field_of_phrase_term (Phrase collection_name) with - 119 | | Ok (Some p, _, _) -> - 120 | let header_name_s = Pcap_syntax_aux.string_of_proto p in - ... - 124 | | "2 bytes" -> " : 2" - 125 | | "4 bytes" | "word" -> " : 4" - 126 | in - 127 | " " ^ header_name_s ^ "[" ^ number ^ no_bytes ^ "] ") - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (OrdinalReference (_, _, _, "")|Phrase _|UnidentifiedString _| - With_term (_, _, _)|OfSize_term (_, _, _, _)|TermList _) - File "english/english_to_pcap.ml", lines 134-135, characters 10-68: - 134 | ..........match l with - 135 | | OrdinalReference _ -> string_of_ordinal_reference_term l - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Phrase _|UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - TermList _) - File "english/english_to_pcap.ml", lines 157-159, characters 12-15: - 157 | ............begin - 158 | match fld with Ok f -> Ok (Primitive (f, Nothing)) - 159 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Error _ - File "english/english_to_pcap.ml", lines 167-169, characters 12-15: - 167 | ............begin - 168 | match fld with Ok f -> Ok (Primitive (f, Nothing)) - 169 | end - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Error _ - File "english/english_to_pcap.ml", lines 151-188, characters 2-80: - 151 | ..match c with - 152 | | OfType r -> - 153 | begin - 154 | match r with - 155 | | Phrase _ -> - ... - 185 | let relation_s = left_arith_s ^ " " ^ comp_s ^ " " ^ right_arith_s in - 186 | (* FIXME - can't check for syntax errors here *) - 187 | Ok (Parsing_support.parse_string relation_s) - 188 | | Unit (UnidentifiedString x) -> Ok (Primitive ((None, None, None), String x)) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Relation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _)| - ExaminingRelation_clause - ((UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _), - _, _, _)| - Unit - (Phrase _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _)) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o expand.cmx expand.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/pcap_to_english.cmx english/pcap_to_english.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o english/pcap_to_english.cmx english/pcap_to_english.ml - File "english/pcap_to_english.ml", lines 109-116, characters 16-47: - 109 | ................( - 110 | match value with - 111 | | Phrase val_s -> - 112 | Ok - 113 | (Relation_clause - 114 | ( Phrase "is less than or equal to", - 115 | Arithmetic ("len", []), - 116 | Arithmetic (val_s, []) ))) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - File "english/pcap_to_english.ml", lines 117-124, characters 19-47: - 117 | ...................( - 118 | match value with - 119 | | Phrase val_s -> - 120 | Ok - 121 | (Relation_clause - 122 | ( Phrase "is greater than or equal to", - 123 | Arithmetic ("len", []), - 124 | Arithmetic (val_s, []) ))) - Warning 8: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (UnidentifiedString _|With_term (_, _, _)|OfSize_term (_, _, _, _)| - OrdinalReference (_, _, _, _)|TermList _) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I syntax -I english -I pcap_to_bpf -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o syntax/pcap_wellformed.cmx syntax/pcap_wellformed.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pretty_printing.cmx pretty_printing.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o pseudonymise.cmx pseudonymise.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o reorder.cmx reorder.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o reorder.cmx reorder.ml - File "reorder.ml", line 31, characters 4-19: - 31 | int_of_string s; - ^^^^^^^^^^^^^^^ - Warning 10: this expression should have type unit. - File "reorder.ml", line 33, characters 14-31: - 33 | with Failure("int_of_string") -> false - ^^^^^^^^^^^^^^^^^ - Warning 52: Code should not depend on the actual values of - this constructor's arguments. They are only for information - and may change in future versions. (See manual section 9.5) - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o translate.cmx translate.ml - + ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I pcap_to_bpf -I syntax -I pcap_to_bpf/optimizer -I pcap_to_bpf/protocol -o caper.cmx caper.ml - + ocamlfind ocamlopt -g -linkpkg -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -I pcap_to_bpf/protocol -I pcap_to_bpf/optimizer config.cmx english/english_syntax.cmx english/english_parsing.cmx syntax/pcap_syntax.cmx english/english_to_pcap_spec.cmx html.cmx pcap_to_bpf/headers.cmx pcap_to_bpf/inst.cmx pcap_to_bpf/util.cmx pcap_to_bpf/block.cmx pcap_to_bpf/env.cmx pcap_to_bpf/infix_to_postfix.cmx pcap_to_bpf/protocol/ether.cmx pcap_to_bpf/protocol/host.cmx pcap_to_bpf/protocol/icmp.cmx pcap_to_bpf/protocol/protochain.cmx pcap_to_bpf/protocol/icmp6.cmx pcap_to_bpf/protocol/net.cmx pcap_to_bpf/protocol/ip.cmx pcap_to_bpf/protocol/ip6.cmx pcap_to_bpf/protocol/port.cmx pcap_to_bpf/protocol/portrange.cmx pcap_to_bpf/protocol/sctp.cmx pcap_to_bpf/protocol/tcp.cmx pcap_to_bpf/protocol/udp.cmx pcap_to_bpf/eval.cmx pcap_to_bpf/optimizer/register.cmx pcap_to_bpf/optimizer/bpf_optimizer.cmx pcap_to_bpf/protocol/arp.cmx pcap_to_bpf/protocol/bound.cmx pcap_to_bpf/protocol/mpls.cmx pcap_to_bpf/protocol/rarp.cmx pcap_to_bpf/protocol/vlan.cmx pcap_to_bpf/pcap_to_tree.cmx pcap_to_bpf/tree_to_bpf.cmx pcap_to_bpf/pcap_to_bpf.cmx aux.cmx syntax/bitvector.cmx bitvector_sizing.cmx cli.cmx layering.cmx syntax/string_features.cmx syntax/pcap_syntax_aux.cmx names.cmx contract.cmx english/english_to_string.cmx syntax/pcap_parser.cmx syntax/pcap_lexer.cmx parsing_support.cmx english/english_to_pcap.cmx english/pcap_to_english_spec.cmx english/pcap_to_english.cmx simplifire.cmx expand.cmx pretty_printing.cmx prim_translate.cmx pseudonymise.cmx reorder.cmx syntax/pcap_wellformed.cmx translate.cmx caper.cmx -o caper.native -> compiled caper.0.9 -> installed caper.0.9 Done. # Run eval $(opam env) to update the current shell environment 2024-08-04 19:39.45 ---> saved as "7f0ebdfb6e16a21277ab2d68d011eaf96f3b438df2dfa7a11e0e5b6214cf7da6" Job succeeded