Building on summer (from freebsd) 2024-07-02 18:56.33 ---> using "77d5fe31836124b4684d554707425c4fde23f9ef3df0a804431a47419573778d" 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/local/bin/opam-dev /usr/local/bin/opam")) 2024-07-02 18:56.33 ---> using "a2b22593046b56fadc85e22b0da7b84e903c1f5aa4d42a7c481121ceec28b31f" 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 175a8ca8b27d9a46ed86ec5d7b1130c98a153055")) 2024-07-02 18:56.34 ---> using "12d681098b105578a67465aa7bc396c5d90e9ce4e3304a8d75f23641353fa26c" from cache /: (run (shell "rm -rf ~/.opam && opam init -ya --bare ~/opam-repository")) No configuration file found, using 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-07-02 18:56.34 ---> using "cd58f29b8c142c1ae36c06cbe6d040fc45053855e85f74d3d710bce30c463662" from cache /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam switch create --repositories=default '4.14.1' 'ocaml-base-compiler.4.14.1'")) <><> Installing new switch packages <><><><><><><><><><><><><><><><><><><><><><> Switch invariant: ["ocaml-base-compiler" {= "4.14.1"}] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> retrieved ocaml-config.2 (cached) -> installed base-bigarray.base -> installed base-threads.base -> installed base-unix.base -> installed host-arch-x86_64.1 -> installed host-system-other.1 -> installed ocaml-options-vanilla.1 -> retrieved ocaml-base-compiler.4.14.1 (cached) -> installed ocaml-base-compiler.4.14.1 -> installed ocaml-config.2 -> installed ocaml.4.14.1 Done. # Run eval $(opam env --switch=4.14.1) to update the current shell environment 2024-07-02 18:56.34 ---> using "7b308b2584dc258233cfb37ad83354a0804ec90976555e191659bff7e597c170" from cache /: (run (network host) (shell "opam update --depexts")) [WARNING] Unknown update command for bsd, skipping system update 2024-07-02 18:56.35 ---> using "3f0c14f5761a225622a6acf1a058a90ab52281bdd9172d3eca06be38cd0468ad" 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 '\"freebsd\"'; 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.9.1 [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 20231231 [required by caper] - install menhirCST 20231231 [required by menhir] - install menhirLib 20231231 [required by menhir] - install menhirSdk 20231231 [required by menhir] - install ocaml-syntax-shims 1.0.0 [required by angstrom] - install ocamlbuild 0.14.3 [required by caper] - install ocamlfind 1.9.6 [required by caper] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> Processing 1/38: [angstrom.0.16.0: extract] Processing 2/38: [angstrom.0.16.0: extract] [bigstringaf.0.9.1: extract] Processing 3/38: [angstrom.0.16.0: extract] [bigstringaf.0.9.1: extract] [caper.0.9: http] -> retrieved bigstringaf.0.9.1 (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] + /bin/sh "-exc" "echo | m4" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/conf-m4.1) - + echo - + m4 - -> compiled conf-m4.1 Processing 7/38: [angstrom.0.16.0: extract] [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] -> installed conf-m4.1 Processing 8/38: [angstrom.0.16.0: extract] [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] -> retrieved angstrom.0.16.0 (cached) Processing 8/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] Processing 9/38: [caper.0.9: http] [dune.3.16.0, dune-configurator.3.16.0: extract] [menhir.20231231 + 3 others: extract] -> retrieved menhir.20231231, menhirCST.20231231, menhirLib.20231231, menhirSdk.20231231 (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.14.3: 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.14.3: extract] Processing 12/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild.0.14.3: extract] [ocamlfind.1.9.6: extract] -> retrieved ocamlbuild.0.14.3 (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: gmake configure.make] -> retrieved ocamlfind.1.9.6 (cached) Processing 13/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild: gmake 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: gmake configure.make] [ocamlfind: patch] Processing 14/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild: gmake configure.make] [ocamlfind: ./configure] + /usr/local/bin/gmake "-f" "configure.make" "all" "OCAMLBUILD_PREFIX=/home/opam/.opam/4.14.1" "OCAMLBUILD_BINDIR=/home/opam/.opam/4.14.1/bin" "OCAMLBUILD_LIBDIR=/home/opam/.opam/4.14.1/lib" "OCAMLBUILD_MANDIR=/home/opam/.opam/4.14.1/man" "OCAML_NATIVE=true" "OCAML_NATIVE_TOOLS=true" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3) - (echo "# This file was generated from configure.make"; \ - echo ;\ - echo "OCAML_PREFIX="; \ - echo "OCAML_BINDIR=/home/opam/.opam/4.14.1/bin"; \ - echo "OCAML_LIBDIR=/home/opam/.opam/4.14.1/lib/ocaml"; \ - echo "OCAML_MANDIR=/home/opam/.opam/4.14.1/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.14.1"; \ - echo "BINDIR=/home/opam/.opam/4.14.1/bin"; \ - echo "LIBDIR=/home/opam/.opam/4.14.1/lib"; \ - echo "MANDIR=/home/opam/.opam/4.14.1/man"; \ - ) > Makefile.config - (echo "(* This file was generated from ../configure.make *)"; \ - echo ;\ - echo 'let bindir = "/home/opam/.opam/4.14.1/bin"'; \ - echo 'let libdir = "/home/opam/.opam/4.14.1/lib"'; \ - echo 'let ocaml_libdir = "/home/opam/.opam/4.14.1/lib/ocaml"'; \ - echo 'let libdir_abs = "/home/opam/.opam/4.14.1/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.14.3"'; \ - ) > src/ocamlbuild_config.ml Processing 14/38: [dune.3.16.0, dune-configurator.3.16.0: extract] [ocamlbuild: gmake check-if-preinstalled] [ocamlfind: ./configure] -> retrieved dune.3.16.0, dune-configurator.3.16.0 (cached) Processing 14/38: [ocamlbuild: gmake check-if-preinstalled] [ocamlfind: ./configure] Processing 15/38: [dune: ocaml 15] [ocamlbuild: gmake check-if-preinstalled] [ocamlfind: ./configure] + /home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6/./configure "-bindir" "/home/opam/.opam/4.14.1/bin" "-sitelib" "/home/opam/.opam/4.14.1/lib" "-mandir" "/home/opam/.opam/4.14.1/man" "-config" "/home/opam/.opam/4.14.1/lib/findlib.conf" "-no-custom" "-no-camlp4" (CWD=/home/opam/.opam/4.14.1/.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: not present (normal since 4.12) - 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 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.14.1/lib/ocaml - Binaries: /home/opam/.opam/4.14.1/bin - Manual pages: /home/opam/.opam/4.14.1/man - Multi-threading type: posix - The directory of site-specific packages will be - site-lib: /home/opam/.opam/4.14.1/lib - The configuration file is written to: - findlib config file: /home/opam/.opam/4.14.1/lib/findlib.conf - Software will be installed: - Libraries: in <site-lib>/findlib - Binaries: /home/opam/.opam/4.14.1/bin - Manual pages: /home/opam/.opam/4.14.1/man - topfind script: /home/opam/.opam/4.14.1/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 15] [ocamlbuild: gmake check-if-preinstalled] [ocamlfind: gmake all] + /usr/local/bin/gmake "all" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6) - for p in findlib; do ( cd src/$p; /usr/local/bin/gmake all ) || exit; done - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.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.14.1/lib/findlib.conf' | \ - ../../tools/patch '@STDLIB@' '/home/opam/.opam/4.14.1/lib/ocaml' | \ - sed -e 's;@AUTOLINK@;true;g' \ - -e 's;@SYSTEM@;freebsd;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 - File "fl_package_base.ml", line 304, characters 22-40: - 304 | let pkg_ancestors = query_requirements predlist pkg in - ^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "fl_package_base.ml", line 350, characters 18-36: - 350 | let ancestors = query_requirements predlist package_name in - ^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "fl_package_base.ml", line 375, characters 23-41: - 375 | let pkg_ancestors = query_requirements predlist pkg in - ^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "fl_package_base.ml", line 510, characters 16-35: - 510 | ( let c = package_definitions search_path pkg.package_name in - ^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label search_path was omitted in the application of this function. - 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 - File "findlib.ml", line 390, characters 2-26: - 390 | Fl_package_base.requires predlist pkg - ^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "findlib.ml", line 396, characters 2-33: - 396 | Fl_package_base.requires_deeply predlist pkglist - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - 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 - File "frontend.ml", line 859, characters 10-39: - 859 | Fl_package_base.package_users predicates1 packages1 - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - 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 - File "topfind.ml", line 128, characters 40-63: - 128 | match Hashtbl.find Toploop.directive_table "ppx" with - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 258, characters 4-27: - 258 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 268, characters 4-27: - 268 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 280, characters 4-27: - 280 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 293, characters 4-27: - 293 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 307, characters 4-27: - 307 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 319, characters 4-27: - 319 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - 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.14.1/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 - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - /usr/local/bin/gmake all-config - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' - USE_CYGPATH="0"; \ - export USE_CYGPATH; \ - cat findlib.conf.in | \ - tools/patch '@SITELIB@' '/home/opam/.opam/4.14.1/lib' | \ - tools/patch '@FINDLIB_PATH@' '/home/opam/.opam/4.14.1/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 - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' Processing 15/38: [dune: ocaml 15] [ocamlbuild: gmake check-if-preinstalled] [ocamlfind: gmake opt] + /usr/local/bin/gmake "opt" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6) - for p in findlib; do ( cd src/$p; /usr/local/bin/gmake opt ) || exit; done - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.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 - File "fl_package_base.ml", line 304, characters 22-40: - 304 | let pkg_ancestors = query_requirements predlist pkg in - ^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "fl_package_base.ml", line 350, characters 18-36: - 350 | let ancestors = query_requirements predlist package_name in - ^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "fl_package_base.ml", line 375, characters 23-41: - 375 | let pkg_ancestors = query_requirements predlist pkg in - ^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "fl_package_base.ml", line 510, characters 16-35: - 510 | ( let c = package_definitions search_path pkg.package_name in - ^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label search_path was omitted in the application of this function. - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c findlib.ml - File "findlib.ml", line 390, characters 2-26: - 390 | Fl_package_base.requires predlist pkg - ^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - File "findlib.ml", line 396, characters 2-33: - 396 | Fl_package_base.requires_deeply predlist pkglist - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - 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 - File "frontend.ml", line 859, characters 10-39: - 859 | Fl_package_base.package_users predicates1 packages1 - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 6 [labels-omitted]: label preds was omitted in the application of this function. - 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 "topfind.ml", line 128, characters 40-63: - 128 | match Hashtbl.find Toploop.directive_table "ppx" with - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 258, characters 4-27: - 258 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 268, characters 4-27: - 268 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 280, characters 4-27: - 280 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 293, characters 4-27: - 293 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 307, characters 4-27: - 307 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - File "topfind.ml", line 319, characters 4-27: - 319 | Toploop.directive_table - ^^^^^^^^^^^^^^^^^^^^^^^ - Alert deprecated: Toploop.directive_table - 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 - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6/src/findlib' -> compiled ocamlfind.1.9.6 Processing 15/38: [dune: ocaml 15] [ocamlbuild: gmake check-if-preinstalled] Processing 16/38: [dune: ocaml 15] [ocamlbuild: gmake check-if-preinstalled] [ocamlfind: gmake install] + /usr/local/bin/gmake "check-if-preinstalled" "all" "opam-install" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3) - if test -d /home/opam/.opam/4.14.1/lib/ocaml/ocamlbuild; then\ - >&2 echo "ERROR: Preinstalled ocamlbuild detected at"\ - "/home/opam/.opam/4.14.1/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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 - 251 states, 1051 transitions, table size 5710 bytes - 4334 additional bytes used for bindings - ocamlc.opt -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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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/my_std.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/exit_codes.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 +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 +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 +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_executor.mli - ocamlc.opt -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_executor.ml - ocamlc.opt -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.mli - ocamlc.opt -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 +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 +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 unix.cma src/ocamlbuild_pack.cmo plugin-lib/ocamlbuild_plugin.cmo plugin-lib/ocamlbuild_executor.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_executor.cmo plugin-lib/ocamlbuild_unix_plugin.cmo - ocamlopt.opt -for-pack Ocamlbuild_pack -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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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/my_std.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/exit_codes.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 +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 +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_executor.ml - ocamlopt.opt -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 +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 unix.cmxa src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_executor.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_executor.cmx plugin-lib/ocamlbuild_unix_plugin.cmx - ocamlc.opt 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 - /usr/local/bin/gmake ocamlbuild.install - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - rm -f ocamlbuild.install - touch ocamlbuild.install - /usr/local/bin/gmake install-bin-opam - gmake[2]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - 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 - gmake[2]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - /usr/local/bin/gmake install-lib-opam - gmake[2]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - echo 'lib: [' >> ocamlbuild.install - /usr/local/bin/gmake install-lib-basics-opam - gmake[3]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - 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 - gmake[3]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - /usr/local/bin/gmake install-lib-byte-opam - gmake[3]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - for lib in plugin-lib/ocamlbuildlib.cma bin/ocamlbuild.cmo src/ocamlbuild_pack.cmi plugin-lib/ocamlbuild_plugin.cmi plugin-lib/ocamlbuild_executor.cmi plugin-lib/ocamlbuild_unix_plugin.cmi; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - gmake[3]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - /usr/local/bin/gmake install-lib-native-opam - gmake[3]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - 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_executor.cmx plugin-lib/ocamlbuild_unix_plugin.cmx plugin-lib/ocamlbuild_plugin.o plugin-lib/ocamlbuild_executor.o plugin-lib/ocamlbuild_unix_plugin.o; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - gmake[3]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - gmake[2]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - /usr/local/bin/gmake install-man-opam - gmake[2]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - echo 'man: [' >> ocamlbuild.install - echo ' "man/ocamlbuild.1" {"man1/ocamlbuild.1"}' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - gmake[2]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - /usr/local/bin/gmake install-doc-opam - gmake[2]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - echo 'doc: [' >> ocamlbuild.install - echo ' "LICENSE"' >> ocamlbuild.install - echo ' "Changes"' >> ocamlbuild.install - echo ' "Readme.md"' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - gmake[2]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlbuild.0.14.3' -> compiled ocamlbuild.0.14.3 Processing 16/38: [dune: ocaml 15] [ocamlfind: gmake install] + /usr/local/bin/gmake "install" (CWD=/home/opam/.opam/4.14.1/.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.14.1/lib/$x/META" ]; then \ - if ! grep -Fq '[distributed with Ocaml]' "//home/opam/.opam/4.14.1/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.14.1/bin" - install -d "/home/opam/.opam/4.14.1/man" - /usr/local/bin/gmake install-config - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' - install -d "`dirname \"/home/opam/.opam/4.14.1/lib/findlib.conf\"`" - test -f "/home/opam/.opam/4.14.1/lib/findlib.conf" || install -c findlib.conf "/home/opam/.opam/4.14.1/lib/findlib.conf" - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' - for p in findlib; do ( cd src/$p; /usr/local/bin/gmake install ); done - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - install -d "/home/opam/.opam/4.14.1/lib/findlib" - install -d "/home/opam/.opam/4.14.1/bin" - test 1 -eq 0 || install -d "/home/opam/.opam/4.14.1/lib/ocaml" - test 1 -eq 0 || install -c topfind "/home/opam/.opam/4.14.1/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.14.1/lib/findlib/" - f="ocamlfind"; { test -f ocamlfind_opt && f="ocamlfind_opt"; }; \ - install -c $f "/home/opam/.opam/4.14.1/bin/ocamlfind" - # the following "if" block is only needed for 4.00beta2 - if [ 1 -eq 0 -a -f "/home/opam/.opam/4.14.1/lib/ocaml/compiler-libs/topdirs.cmi" ]; then \ - cd "/home/opam/.opam/4.14.1/lib/ocaml/compiler-libs/"; \ - install -c topdirs.cmi toploop.cmi "/home/opam/.opam/4.14.1/lib/findlib/"; \ - fi - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6/src/findlib' - /usr/local/bin/gmake install-meta - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' - for x in bigarray bytes compiler-libs dynlink ocamldoc stdlib str threads unix ; do install -d "/home/opam/.opam/4.14.1/lib/$x"; install -c site-lib-src/$x/META "/home/opam/.opam/4.14.1/lib/$x/META.tmp" && mv "/home/opam/.opam/4.14.1/lib/$x/META.tmp" "/home/opam/.opam/4.14.1/lib/$x/META"; done - install -d "/home/opam/.opam/4.14.1/lib/findlib"; install -c Makefile.packages "/home/opam/.opam/4.14.1/lib/findlib/Makefile.packages" - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' - test ! -f 'site-lib-src/num-top/META' || { cd src/findlib; /usr/local/bin/gmake install-num-top; } - test ! -f 'site-lib-src/camlp4/META' || install -c tools/safe_camlp4 "/home/opam/.opam/4.14.1/bin" - /usr/local/bin/gmake install-doc - gmake[1]: Entering directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' - install -d "/home/opam/.opam/4.14.1/man/man1" "/home/opam/.opam/4.14.1/man/man3" "/home/opam/.opam/4.14.1/man/man5" - install -c doc/ref-man/ocamlfind.1 "/home/opam/.opam/4.14.1/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.14.1/man/man5" - gmake[1]: Leaving directory '/home/opam/.opam/4.14.1/.opam-switch/build/ocamlfind.1.9.6' -> installed ocamlfind.1.9.6 Processing 16/38: [dune: ocaml 15] -> installed ocamlbuild.0.14.3 Processing 17/38: [dune: ocaml 15] + /home/opam/.opam/4.14.1/bin/ocaml "boot/bootstrap.ml" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/dune.3.16.0) - ocamlc -output-complete-exe -w -24 -g -o .duneboot.exe -I boot unix.cma boot/libs.ml boot/duneboot.ml - /tmp/camlobja60967.c:16582:14: warning: a function declaration without a prototype is deprecated in all versions of C and is treated as a zero-parameter prototype in C2x, conflicting with a previous declaration [-Wdeprecated-non-prototype] - extern value caml_get_public_method(); - ^ - /home/opam/.opam/4.14.1/lib/ocaml/caml/mlvalues.h:236:18: note: conflicting prototype is here - CAMLextern value caml_get_public_method (value obj, value tag); - ^ - /tmp/camlobja60967.c:16764:14: warning: a function declaration without a prototype is deprecated in all versions of C and is treated as a zero-parameter prototype in C2x, conflicting with a previous declaration [-Wdeprecated-non-prototype] - extern value caml_set_oo_id(); - ^ - /home/opam/.opam/4.14.1/lib/ocaml/caml/mlvalues.h:413:18: note: conflicting prototype is here - CAMLextern value caml_set_oo_id(value obj); - ^ - 2 warnings generated. - ./.duneboot.exe -j 15 - Processing 17/38: [dune: ./_boot/dune.exe build] + /home/opam/.opam/4.14.1/.opam-switch/build/dune.3.16.0/./_boot/dune.exe "build" "dune.install" "--release" "--profile" "dune-bootstrap" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.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/4.14.1/bin/dune "build" "-p" "csexp" "-j" "15" "@install" (CWD=/home/opam/.opam/4.14.1/.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/4.14.1/bin/dune "build" "-p" "ocaml-syntax-shims" "-j" "15" "@install" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/ocaml-syntax-shims.1.0.0) -> compiled ocaml-syntax-shims.1.0.0 Processing 25/38: [dune-configurator: rm] [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] -> installed ocaml-syntax-shims.1.0.0 Processing 26/38: [dune-configurator: rm] [menhirCST: dune build] [menhirLib: dune build] [menhirSdk: dune build] + /bin/rm "-rf" "vendor/csexp" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/dune-configurator.3.16.0) + /home/opam/.opam/4.14.1/bin/dune "build" "-p" "menhirSdk" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/menhirSdk.20231231) -> compiled menhirSdk.20231231 Processing 26/38: [dune-configurator: rm] [menhirCST: dune build] [menhirLib: dune build] -> installed menhirSdk.20231231 Processing 27/38: [dune-configurator: rm] [menhirCST: dune build] [menhirLib: dune build] + /bin/rm "-rf" "vendor/pp" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/dune-configurator.3.16.0) Processing 27/38: [dune-configurator: dune build] [menhirCST: dune build] [menhirLib: dune build] + /home/opam/.opam/4.14.1/bin/dune "build" "-p" "menhirLib" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/menhirLib.20231231) - (cd _build/default/lib/pack && ./pack.exe) - Creating menhirLib.ml... - Creating menhirLib.mli... -> compiled menhirLib.20231231 Processing 27/38: [dune-configurator: dune build] [menhirCST: dune build] -> installed menhirLib.20231231 Processing 28/38: [dune-configurator: dune build] [menhirCST: dune build] + /home/opam/.opam/4.14.1/bin/dune "build" "-p" "menhirCST" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/menhirCST.20231231) -> compiled menhirCST.20231231 Processing 28/38: [dune-configurator: dune build] -> installed menhirCST.20231231 Processing 29/38: [dune-configurator: dune build] Processing 30/38: [dune-configurator: dune build] [menhir: dune build] + /home/opam/.opam/4.14.1/bin/dune "build" "-p" "dune-configurator" "-j" "15" "@install" (CWD=/home/opam/.opam/4.14.1/.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/4.14.1/bin/dune "build" "-p" "bigstringaf" "-j" "15" "@install" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/bigstringaf.0.9.1) -> compiled bigstringaf.0.9.1 Processing 32/38: [menhir: dune build] -> installed bigstringaf.0.9.1 Processing 33/38: [menhir: dune build] Processing 34/38: [angstrom: dune build] [menhir: dune build] + /home/opam/.opam/4.14.1/bin/dune "build" "-p" "angstrom" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.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/4.14.1/bin/dune "build" "-p" "menhir" "-j" "15" (CWD=/home/opam/.opam/4.14.1/.opam-switch/build/menhir.20231231) - (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.20231231 -> installed menhir.20231231 Processing 37/38: [caper: bash] + /usr/local/bin/bash "-c" "CAPER_WITH_ENGLISH=yes ./build.sh caper.native" (CWD=/home/opam/.opam/4.14.1/.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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, - (OfType _|ThatIs (_, _)|IsThatOf (_, _)|ThatHas (_, _, _)|Unit _| - ExaminingRelation_clause (_, _, Arithmetic (_, _), Arithmetic (_, _)))) - 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 _)) - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Eq _, (Lt _|Le _)) - 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 [partial-match]: 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 (_, _, _)) - 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 [partial-match]: 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 (_, _, _)) - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Arp|Rarp)) - 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Arp|Rarp)) - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "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-var]: unused variable source_quench. - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Ip6|Arp|Rarp)) - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Segment (_, _, L3 (Arp|Rarp), _) - 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Segment (_, _, L3 (Arp|Rarp), _) - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ([], L2_5 Mpls::(L2 _|L3 _|L4 _)::_) - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("SKF_AD"::_::_, _) - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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-var]: 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-var]: 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-var]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Arp|Rarp)) - 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1::_, "") - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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-var]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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.14.1/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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 _), - _, _) - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 12-19: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26 [unused-var]: unused variable bv_e1''. - File "bitvector_sizing.ml", line 224, characters 21-28: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26 [unused-var]: unused variable bv_e2''. - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ok (None, _, _) - 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - OrdinalReference (_, _, _, "") - 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 _), - _, _) - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [non-unit-statement]: this expression should have type unit. - File "reorder.ml", line 33, characters 14-31: - 33 | with Failure("int_of_string") -> false - ^^^^^^^^^^^^^^^^^ - Warning 52 [fragile-literal-pattern]: 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 11.5) - ocamlfind ocamlc -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, - (OfType _|ThatIs (_, _)|IsThatOf (_, _)|ThatHas (_, _, _)|Unit _| - ExaminingRelation_clause (_, _, Arithmetic (_, _), Arithmetic (_, _)))) - 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 _)) - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Eq _, (Lt _|Le _)) - 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 [partial-match]: 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 (_, _, _)) - 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 [partial-match]: 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 (_, _, _)) - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Arp|Rarp)) - 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Arp|Rarp)) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - "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-var]: unused variable source_quench. - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Ip6|Arp|Rarp)) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [redundant-case]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Segment (_, _, L3 (Arp|Rarp), _) - 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Segment (_, _, L3 (Arp|Rarp), _) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ([], L2_5 Mpls::(L2 _|L3 _|L4 _)::_) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/protocol -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ("SKF_AD"::_::_, _) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I pcap_to_bpf/optimizer -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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-var]: 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-var]: 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-var]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Packet (_, _, L3 (Arp|Rarp)) - 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1::_, "") - 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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-var]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 _), - _, _) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 12-19: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26 [unused-var]: unused variable bv_e1''. - File "bitvector_sizing.ml", line 224, characters 21-28: - 224 | let bv_e1'', bv_e2'' = - ^^^^^^^ - Warning 26 [unused-var]: unused variable bv_e2''. - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ok (None, _, _) - 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 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - OrdinalReference (_, _, _, "") - 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 [partial-match]: 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 _), - _, _) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [partial-match]: 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 [partial-match]: 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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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 [non-unit-statement]: this expression should have type unit. - File "reorder.ml", line 33, characters 14-31: - 33 | with Failure("int_of_string") -> false - ^^^^^^^^^^^^^^^^^ - Warning 52 [fragile-literal-pattern]: 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 11.5) - ocamlfind ocamlopt -c -g -thread -package angstrom -package str -I english -I syntax -I pcap_to_bpf -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 syntax -I pcap_to_bpf -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. 2024-07-02 18:58.26 ---> saved as "560c5aa2a27c250406f9ea617f16e30eeffc22c5ba0a7e0100a81f85c54a7f87" Job succeeded