Building on doris.caelum.ci.dev (from ocaml/opam:debian-unstable) Unable to find image 'ocaml/opam:debian-unstable' locally debian-unstable: Pulling from ocaml/opam Digest: sha256:326388062fdc5e366d0d25a65b42bf9938e76068527b8aceec3027158b383b3c Status: Downloaded newer image for ocaml/opam:debian-unstable 2025-05-13 23:11.11 ---> using "0acd5aeaa8f7bc314514d9795d14a7f12ec72a6a5b11c5904350189734c6859b" from cache /: (user (uid 1000) (gid 1000)) /: (env OPAMPRECISETRACKING 1) /: (env OPAMUTF8 never) /: (env OPAMEXTERNALSOLVER builtin-0install) /: (env OPAMCRITERIA +removed) /: (env CI true) /: (env OPAM_HEALTH_CHECK_CI true) /: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam")) 2025-05-13 23:11.11 ---> using "40df4fa4cdfc68a5fa7a326047e82a7adc5df52b8059d4a7b745bdd50aad56e7" 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 dbc9ec7b83bac3673185542221a571372b6abb35")) 2025-05-13 23:11.11 ---> using "20357fbea61a92c2bdc1950610fb370ec30d4b4205b6f85be61a0d5ad16763e4" from cache /: (run (shell "rm -rf ~/.opam && opam init -ya --bare --config ~/.opamrc-sandbox ~/opam-repository")) Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults. Checking for available remotes: rsync and local, git. - you won't be able to use mercurial repositories unless you install the hg command on your system. - you won't be able to use darcs repositories unless you install the darcs command on your system. <><> Fetching repository information ><><><><><><><><><><><><><><><><><><><><><> [default] Initialised User configuration: ~/.profile is already up-to-date. [NOTE] Make sure that ~/.profile is well sourced in your ~/.bashrc. 2025-05-13 23:11.11 ---> using "23658a5df8af9828e8d43700cc875c3ea271dfcb3ba9fa82b2220e54a557e121" from cache /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "sudo apt update && sudo apt install autoconf -y")) WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Get:1 http://deb.debian.org/debian unstable InRelease [205 kB] Get:2 http://deb.debian.org/debian unstable/main amd64 Packages.diff/Index [63.6 kB] Get:3 http://deb.debian.org/debian unstable/main amd64 Packages T-2025-05-13-2007.41-F-2025-05-11-0804.30.pdiff [49.0 kB] Get:3 http://deb.debian.org/debian unstable/main amd64 Packages T-2025-05-13-2007.41-F-2025-05-11-0804.30.pdiff [49.0 kB] Fetched 318 kB in 1s (217 kB/s) Reading package lists... Building dependency tree... Reading state information... 3 packages can be upgraded. Run 'apt list --upgradable' to see them. WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Reading package lists... Building dependency tree... Reading state information... Installing: autoconf Installing dependencies: automake autotools-dev m4 Suggested packages: autoconf-archive gnu-standards autoconf-doc libtool gettext m4-doc Summary: Upgrading: 0, Installing: 4, Removing: 0, Not Upgrading: 3 Download size: 1710 kB Space needed: 5051 kB / 271 GB available Get:1 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-8 [294 kB] Get:2 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3.1 [494 kB] Get:3 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20240727.1 [60.2 kB] Get:4 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.17-4 [862 kB] Fetched 1710 kB in 0s (4011 kB/s) Selecting previously unselected package m4. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20678 files and directories currently installed.) Preparing to unpack .../archives/m4_1.4.19-8_amd64.deb ... Unpacking m4 (1.4.19-8) ... Selecting previously unselected package autoconf. Preparing to unpack .../autoconf_2.72-3.1_all.deb ... Unpacking autoconf (2.72-3.1) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../autotools-dev_20240727.1_all.deb ... Unpacking autotools-dev (20240727.1) ... Selecting previously unselected package automake. Preparing to unpack .../automake_1%3a1.17-4_all.deb ... Unpacking automake (1:1.17-4) ... Setting up m4 (1.4.19-8) ... Setting up autotools-dev (20240727.1) ... Setting up autoconf (2.72-3.1) ... Setting up automake (1:1.17-4) ... update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode 2025-05-13 23:11.11 ---> using "7500090cc9af80f322654254041f3fc602ac6ff9f4e9777943eb82a6c52ee3cc" from cache /: (run (network host) (shell "git clone -q 'https://github.com/janestreet/opam-repository' ~/'janestreet-with-extensions' && git -C ~/'janestreet-with-extensions' checkout -q 9fcba8f2828b1dd4de45313c7d472a9a0f1b55e7")) 2025-05-13 23:11.11 ---> using "b59a36de54dea5e80e8207f314640093212b667aab8294c8e5e29f555ddd3d36" from cache /: (run (shell "opam repository add --dont-select 'janestreet-with-extensions' ~/'janestreet-with-extensions'")) [janestreet-with-extensions] Initialised 2025-05-13 23:11.11 ---> using "10fe936c9d1e16eabb942356f07b8a169382f09aa6865fe5b5aff4658669e1b4" from cache /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam switch create --repositories=janestreet-with-extensions,default '5.2.0+flambda2' '5.2.0+flambda2'")) <><> Installing new switch packages <><><><><><><><><><><><><><><><><><><><><><> Switch invariant: ["ocaml-variants" {= "5.2.0+flambda2"}] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> -> installed base-bigarray.base -> installed base-threads.base -> installed base-unix.base -> retrieved init-compiler.4.14.1 (cached) -> retrieved ocaml-config.3 (cached) -> installed ocaml-options-vanilla.1 -> retrieved init-dune.3.9.3 (cached) -> retrieved init-menhir.20231231 (cached) -> retrieved ocaml-variants.5.2.0+flambda2 (cached) -> installed init-compiler.4.14.1 -> installed init-dune.3.9.3 -> installed init-menhir.20231231 -> installed ocaml-variants.5.2.0+flambda2 -> installed ocaml-config.3 -> installed ocaml.5.2.0 -> installed base-domains.base -> installed base-nnp.base Done. # To update the current shell environment, run: eval $(opam env --switch=5.2.0+flambda2) 2025-05-13 23:14.57 ---> saved as "9f23afe31887703a43d49f189611b0f7e2f0becabaae5932d8d0b25ddd85cc79" /: (run (network host) (shell "opam update --depexts")) + /usr/bin/sudo "apt-get" "update" - Hit:1 http://deb.debian.org/debian unstable InRelease - Reading package lists... 2025-05-13 23:14.58 ---> saved as "87e27a9fa6d806fc35e8b46f539fdf3d7c669955ce3150e27e16209fde14592a" /: (run (cache (opam-archives (target /home/opam/.opam/download-cache))) (network host) (shell "opam remove -y beluga.1.1.2\ \nopam install -vy beluga.1.1.2\ \nres=$?\ \nif [ $res = 31 ]; then\ \n if opam show -f x-ci-accept-failures: beluga.1.1.2 | grep -q 'debian-unstable'; then\ \n echo \"This package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\"\ \n exit 69\ \n fi\ \nfi \ \n\ \n\ \nexit $res")) Nothing to do. [NOTE] beluga.1.1.2 is not installed. The following actions will be performed: === install 32 packages - install angstrom 0.16.1 [required by uri] - install basement v0.18~preview.130.31+242 [required by sexplib0] - install beluga 1.1.2 - install bigstringaf 0.10.0 [required by angstrom] - install cmdliner 1.3.0 [required by uucp] - install cppo 1.8.0 [required by extlib] - install csexp 1.5.2 [required by dune-configurator] - install dune 3.18.2 [required by beluga] - install dune-build-info 3.18.2 [required by beluga] - install dune-configurator 3.18.2 [required by bigstringaf] - install extlib 1.8.0 [required by beluga] - install gen 1.1 [required by beluga] - install linenoise 1.5.1 [required by beluga] - install ocaml-compiler-libs v0.17.0+jst [required by ppxlib] - install ocaml-syntax-shims 1.0.0 [required by angstrom] - install ocamlbuild 0.15.0+jst [required by uucp] - install ocamlfind 1.9.8 [required by uucp] - install omd 2.0.0~alpha4 [required by beluga] - install ppx_derivers 1.2.1 [required by ppxlib] - install ppxlib 0.33.0+jst [required by sedlex] - install ppxlib_ast 0.33.0+jst [required by ppxlib] - install ppxlib_jane v0.18~preview.130.31+242 [required by ppxlib] - install sedlex 3.3+jst [required by beluga] - install seq base [required by gen] - install sexplib0 v0.18~preview.130.31+242 [required by ppxlib] - install stdlib-shims 0.3.0 [required by ppxlib] - install stringext 1.6.0 [required by uri] - install topkg 1.0.8+jst [required by uucp] - install uri 4.4.0 [required by beluga] - install uucp 16.0.0 [required by omd] - install uunf 16.0.0 [required by omd] - install uutf 1.0.3+jst [required by omd] <><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> Processing 1/93: [angstrom.0.16.1: extract] Processing 2/93: [angstrom.0.16.1: extract] [basement.v0.18~preview.130.31+242: extract] Processing 3/93: [angstrom.0.16.1: extract] [basement.v0.18~preview.130.31+242: extract] [beluga.1.1.2: extract] -> retrieved angstrom.0.16.1 (cached) Processing 3/93: [basement.v0.18~preview.130.31+242: extract] [beluga.1.1.2: extract] Processing 4/93: [basement.v0.18~preview.130.31+242: extract] [beluga.1.1.2: extract] [bigstringaf.0.10.0: extract] -> retrieved basement.v0.18~preview.130.31+242 (cached) Processing 4/93: [beluga.1.1.2: extract] [bigstringaf.0.10.0: extract] Processing 5/93: [beluga.1.1.2: extract] [bigstringaf.0.10.0: extract] [cmdliner.1.3.0: extract] -> retrieved beluga.1.1.2 (cached) Processing 5/93: [bigstringaf.0.10.0: extract] [cmdliner.1.3.0: extract] Processing 6/93: [bigstringaf.0.10.0: extract] [cmdliner.1.3.0: extract] [cppo.1.8.0: extract] -> retrieved bigstringaf.0.10.0 (cached) Processing 6/93: [cmdliner.1.3.0: extract] [cppo.1.8.0: extract] Processing 7/93: [cmdliner.1.3.0: extract] [cppo.1.8.0: extract] [csexp.1.5.2: extract] -> retrieved cmdliner.1.3.0 (cached) Processing 7/93: [cppo.1.8.0: extract] [csexp.1.5.2: extract] Processing 8/93: [cppo.1.8.0: extract] [csexp.1.5.2: extract] [dune.3.18.2 + 2 others: extract] Processing 9/93: [cppo.1.8.0: extract] [csexp.1.5.2: extract] [dune.3.18.2 + 2 others: extract] [cmdliner: make all] -> retrieved cppo.1.8.0 (cached) Processing 9/93: [csexp.1.5.2: extract] [dune.3.18.2 + 2 others: extract] [cmdliner: make all] Processing 10/93: [csexp.1.5.2: extract] [dune.3.18.2 + 2 others: extract] [extlib.1.8.0: extract] [cmdliner: make all] -> retrieved csexp.1.5.2 (cached) Processing 10/93: [dune.3.18.2 + 2 others: extract] [extlib.1.8.0: extract] [cmdliner: make all] Processing 11/93: [dune.3.18.2 + 2 others: extract] [extlib.1.8.0: extract] [gen.1.1: extract] [cmdliner: make all] -> retrieved extlib.1.8.0 (cached) Processing 11/93: [dune.3.18.2 + 2 others: extract] [gen.1.1: extract] [cmdliner: make all] Processing 12/93: [dune.3.18.2 + 2 others: extract] [gen.1.1: extract] [linenoise.1.5.1: extract] [cmdliner: make all] -> retrieved gen.1.1 (cached) Processing 12/93: [dune.3.18.2 + 2 others: extract] [linenoise.1.5.1: extract] [cmdliner: make all] Processing 13/93: [dune.3.18.2 + 2 others: extract] [linenoise.1.5.1: extract] [ocaml-compiler-libs.v0.17.0+jst: extract] [cmdliner: make all] -> retrieved linenoise.1.5.1 (cached) Processing 13/93: [dune.3.18.2 + 2 others: extract] [ocaml-compiler-libs.v0.17.0+jst: extract] [cmdliner: make all] Processing 14/93: [dune.3.18.2 + 2 others: extract] [ocaml-compiler-libs.v0.17.0+jst: extract] [ocaml-syntax-shims.1.0.0: extract] [cmdliner: make all] -> retrieved ocaml-compiler-libs.v0.17.0+jst (cached) Processing 14/93: [dune.3.18.2 + 2 others: extract] [ocaml-syntax-shims.1.0.0: extract] [cmdliner: make all] Processing 15/93: [dune.3.18.2 + 2 others: extract] [ocaml-syntax-shims.1.0.0: extract] [ocamlbuild.0.15.0+jst: extract] [cmdliner: make all] -> retrieved ocaml-syntax-shims.1.0.0 (cached) Processing 15/93: [dune.3.18.2 + 2 others: extract] [ocamlbuild.0.15.0+jst: extract] [cmdliner: make all] Processing 16/93: [dune.3.18.2 + 2 others: extract] [ocamlbuild.0.15.0+jst: extract] [ocamlfind.1.9.8: extract] [cmdliner: make all] -> retrieved ocamlfind.1.9.8 (cached) Processing 16/93: [dune.3.18.2 + 2 others: extract] [ocamlbuild.0.15.0+jst: extract] [cmdliner: make all] Processing 17/93: [dune.3.18.2 + 2 others: extract] [ocamlbuild.0.15.0+jst: extract] [omd.2.0.0~alpha4: extract] [cmdliner: make all] Processing 18/93: [dune.3.18.2 + 2 others: extract] [ocamlbuild.0.15.0+jst: extract] [omd.2.0.0~alpha4: extract] [cmdliner: make all] [ocamlfind: ./configure] -> retrieved ocamlbuild.0.15.0+jst (cached) Processing 18/93: [dune.3.18.2 + 2 others: extract] [omd.2.0.0~alpha4: extract] [cmdliner: make all] [ocamlfind: ./configure] Processing 19/93: [dune.3.18.2 + 2 others: extract] [omd.2.0.0~alpha4: extract] [ppx_derivers.1.2.1: extract] [cmdliner: make all] [ocamlfind: ./configure] [ocamlbuild: patch] applying flambda2.patch Processing 20/93: [dune.3.18.2 + 2 others: extract] [omd.2.0.0~alpha4: extract] [ppx_derivers.1.2.1: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> retrieved omd.2.0.0~alpha4 (cached) Processing 20/93: [dune.3.18.2 + 2 others: extract] [ppx_derivers.1.2.1: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] Processing 21/93: [dune.3.18.2 + 2 others: extract] [ppx_derivers.1.2.1: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> retrieved ppx_derivers.1.2.1 (cached) Processing 21/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] Processing 22/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [ppxlib_jane.v0.18~preview.130.31+242: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> retrieved ppxlib_jane.v0.18~preview.130.31+242 (cached) Processing 22/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] Processing 23/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [sedlex.3.3+jst: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> retrieved sedlex.3.3+jst (cached) Processing 23/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> retrieved seq.base (cached) Processing 24/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] Processing 25/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [sexplib0.v0.18~preview.130.31+242: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] Processing 26/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [sexplib0.v0.18~preview.130.31+242: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> installed seq.base Processing 27/93: [dune.3.18.2 + 2 others: extract] [ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst: extract] [sexplib0.v0.18~preview.130.31+242: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] -> retrieved ppxlib.0.33.0+jst, ppxlib_ast.0.33.0+jst (cached) Processing 27/93: [dune.3.18.2 + 2 others: extract] [sexplib0.v0.18~preview.130.31+242: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] Processing 28/93: [dune.3.18.2 + 2 others: extract] [sexplib0.v0.18~preview.130.31+242: extract] [stdlib-shims.0.3.0: extract] [cmdliner: make all] [ocamlbuild: make configure.make] [ocamlfind: ./configure] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "-f" "configure.make" "all" "OCAMLBUILD_PREFIX=/home/opam/.opam/5.2.0+flambda2" "OCAMLBUILD_BINDIR=/home/opam/.opam/5.2.0+flambda2/bin" "OCAMLBUILD_LIBDIR=/home/opam/.opam/5.2.0+flambda2/lib" "OCAMLBUILD_MANDIR=/home/opam/.opam/5.2.0+flambda2/man" "OCAML_NATIVE=true" "OCAML_NATIVE_TOOLS=true" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst) - (echo "# This file was generated from configure.make"; \ - echo ;\ - echo "OCAML_PREFIX="; \ - echo "OCAML_BINDIR=/home/opam/.opam/5.2.0+flambda2/bin"; \ - echo "OCAML_LIBDIR=/home/opam/.opam/5.2.0+flambda2/lib/ocaml"; \ - echo "OCAML_MANDIR=/home/opam/.opam/5.2.0+flambda2/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/5.2.0+flambda2"; \ - echo "BINDIR=/home/opam/.opam/5.2.0+flambda2/bin"; \ - echo "LIBDIR=/home/opam/.opam/5.2.0+flambda2/lib"; \ - echo "MANDIR=/home/opam/.opam/5.2.0+flambda2/man"; \ - ) > Makefile.config - (echo "(* This file was generated from ../configure.make *)"; \ - echo ;\ - echo 'let bindir = {|/home/opam/.opam/5.2.0+flambda2/bin|}'; \ - echo 'let libdir = {|/home/opam/.opam/5.2.0+flambda2/lib|}'; \ - echo 'let ocaml_libdir = {|/home/opam/.opam/5.2.0+flambda2/lib/ocaml|}'; \ - echo 'let libdir_abs = {|/home/opam/.opam/5.2.0+flambda2/lib|}'; \ - echo 'let ocaml_native = true'; \ - echo 'let ocaml_native_tools = true'; \ - echo 'let supports_shared_libraries = true';\ - echo 'let a = "a"'; \ - echo 'let o = "o"'; \ - echo 'let so = "so"'; \ - echo 'let ext_dll = ".so"'; \ - echo 'let exe = ""'; \ - echo 'let version = "0.15.0"'; \ - ) > src/ocamlbuild_config.ml Processing 28/93: [dune.3.18.2 + 2 others: extract] [sexplib0.v0.18~preview.130.31+242: extract] [stdlib-shims.0.3.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved sexplib0.v0.18~preview.130.31+242 (cached) Processing 28/93: [dune.3.18.2 + 2 others: extract] [stdlib-shims.0.3.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 29/93: [dune.3.18.2 + 2 others: extract] [stdlib-shims.0.3.0: extract] [stringext.1.6.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved stdlib-shims.0.3.0 (cached) Processing 29/93: [dune.3.18.2 + 2 others: extract] [stringext.1.6.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 30/93: [dune.3.18.2 + 2 others: extract] [stringext.1.6.0: extract] [topkg.1.0.8+jst: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved stringext.1.6.0 (cached) Processing 30/93: [dune.3.18.2 + 2 others: extract] [topkg.1.0.8+jst: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 31/93: [dune.3.18.2 + 2 others: extract] [topkg.1.0.8+jst: extract] [uri.4.4.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved topkg.1.0.8+jst (cached) Processing 31/93: [dune.3.18.2 + 2 others: extract] [uri.4.4.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 32/93: [dune.3.18.2 + 2 others: extract] [uri.4.4.0: extract] [uucp.16.0.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved uri.4.4.0 (cached) Processing 32/93: [dune.3.18.2 + 2 others: extract] [uucp.16.0.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 33/93: [dune.3.18.2 + 2 others: extract] [uucp.16.0.0: extract] [uunf.16.0.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved uunf.16.0.0 (cached) Processing 33/93: [dune.3.18.2 + 2 others: extract] [uucp.16.0.0: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 34/93: [dune.3.18.2 + 2 others: extract] [uucp.16.0.0: extract] [uutf.1.0.3+jst: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] -> retrieved dune.3.18.2, dune-build-info.3.18.2, dune-configurator.3.18.2 (cached) Processing 34/93: [uucp.16.0.0: extract] [uutf.1.0.3+jst: extract] [cmdliner: make all] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] Processing 35/93: [uucp.16.0.0: extract] [uutf.1.0.3+jst: extract] [cmdliner: make all] [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: ./configure] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "./configure" "-bindir" "/home/opam/.opam/5.2.0+flambda2/bin" "-sitelib" "/home/opam/.opam/5.2.0+flambda2/lib" "-mandir" "/home/opam/.opam/5.2.0+flambda2/man" "-config" "/home/opam/.opam/5.2.0+flambda2/lib/findlib.conf" "-no-custom" "-no-camlp4" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8) - Welcome to findlib version 1.9.8 - Configuring core... - Checking for #remove_directory... - Testing threading model... - systhread_supported: true - Testing DLLs... - File "_none_", line 1: - Error: Reference to undefined compilation unit "Stdlib__Mutex" - Hint: This means that the interface of a module is loaded, but its implementation is not. - Did you mean to load a compiled implementation of the module - using "#load" or by passing it as an argument to the toplevel? - Testing whether ppxopt can be supported... - Checking for ocamlc -opaque... - Checking for ocamlopt -g... - Configuring libraries... - unix: found (in +unix) - dynlink: found (in +dynlink) - bigarray: not present (possible since 4.08) - 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: not present - raw_spacetime: not present (normal since 4.12) - threads: found (in +threads) - str: found (in +str) - labltk: not present (normal since 4.02) - native dynlink: found - camlp4: disabled - bytes: found, installing fake library - 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/5.2.0+flambda2/lib/ocaml - Binaries: /home/opam/.opam/5.2.0+flambda2/bin - Manual pages: /usr/local/man - Multi-threading type: posix - The directory of site-specific packages will be - site-lib: /home/opam/.opam/5.2.0+flambda2/lib - The configuration file is written to: - findlib config file: /home/opam/.opam/5.2.0+flambda2/lib/findlib.conf - Software will be installed: - Libraries: in <site-lib>/findlib - Binaries: /home/opam/.opam/5.2.0+flambda2/bin - Manual pages: /home/opam/.opam/5.2.0+flambda2/man - topfind script: /home/opam/.opam/5.2.0+flambda2/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 35/93: [uucp.16.0.0: extract] [uutf.1.0.3+jst: extract] [cmdliner: make all] [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make all] -> retrieved uucp.16.0.0 (cached) Processing 35/93: [uutf.1.0.3+jst: extract] [cmdliner: make all] [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make all] -> retrieved uutf.1.0.3+jst (cached) Processing 35/93: [cmdliner: make all] [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make all] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "all" "PREFIX=/home/opam/.opam/5.2.0+flambda2" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/cmdliner.1.3.0) - ocaml build.ml cma - ocaml build.ml cmxa - ocaml build.ml cmxs -> compiled cmdliner.1.3.0 Processing 35/93: [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make all] Processing 36/93: [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make all] [cmdliner: make install] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "all" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8) - for p in findlib; do ( cd src/$p; make all ) || exit; done - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8/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/5.2.0+flambda2/lib/findlib.conf' | \ - ../../tools/patch '@STDLIB@' '/home/opam/.opam/5.2.0+flambda2/lib/ocaml' | \ - ../../tools/patch '@RELATIVE_PATHS@' 'false' | \ - sed -e 's;@AUTOLINK@;true;g' \ - -e 's;@SYSTEM@;linux;g' \ - >findlib_config.ml - if [ "true" = "true" ]; then \ - cp topfind.ml.in topfind.ml; \ - else \ - sed -e '/PPXOPT_BEGIN/,/PPXOPT_END/ d' topfind.ml.in \ - > topfind.ml ; \ - fi - ocamldep *.ml *.mli >depend - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_compat.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 findlib_config.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_metatoken.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_meta.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_metascanner.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_metascanner.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_topo.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_topo.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_package_base.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_package_base.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c findlib.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c findlib.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_args.ml - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_lint.ml - ocamlc -I +compiler-libs -a -o findlib.cma fl_compat.cmo fl_split.cmo findlib_config.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 385, characters 6-16: - 385 | Sys.signal Sys.sigint Sys.Signal_ignore in - ^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Sys.signal - Use [Sys.Safe.signal]. - - File "frontend.ml", line 428, characters 4-18: - 428 | Sys.set_signal Sys.sigint old_sigint; - ^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Sys.set_signal - Use [Sys.Safe.set_signal]. - 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 - if [ "1" = "1" ]; then \ - cp topfind.in topfind.compat.in; \ - else \ - sed -e '/REMOVE_DIRECTORY_BEGIN/,/REMOVE_DIRECTORY_END/ d' topfind.in \ - > topfind.compat.in ; \ - fi - USE_CYGPATH="0"; \ - export USE_CYGPATH; \ - cat topfind.compat.in | \ - ../../tools/patch '@SITELIB@' '/home/opam/.opam/5.2.0+flambda2/lib' | \ - ../../tools/patch '@RELATIVE_PATHS@' 'false' \ - >topfind - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -c fl_dynload.mli - ocamlc -I +compiler-libs -opaque -I +unix -I +dynlink -g -c fl_dynload.ml - ocamlc -I +compiler-libs -a -o findlib_dynload.cma fl_dynload.cmo - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8/src/findlib' - make all-config - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - if [ "false" = "true" ]; then \ - make findlib-relative; \ - else \ - make findlib-absolute; \ - fi - make[2]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - USE_CYGPATH="0"; \ - export USE_CYGPATH; \ - cat findlib.conf.in | \ - tools/patch '@SITELIB@' '/home/opam/.opam/5.2.0+flambda2/lib' | \ - tools/patch '@FINDLIB_PATH@' '/home/opam/.opam/5.2.0+flambda2/lib/ocaml:/home/opam/.opam/5.2.0+flambda2/lib' -p >findlib.conf - if ./tools/cmd_from_same_dir ocamlc; then \ - echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \ - fi - if ./tools/cmd_from_same_dir ocamlopt; then \ - echo 'ocamlopt="ocamlopt.opt"' >>findlib.conf; \ - fi - if ./tools/cmd_from_same_dir ocamldep; then \ - echo 'ocamldep="ocamldep.opt"' >>findlib.conf; \ - fi - if ./tools/cmd_from_same_dir ocamldoc; then \ - echo 'ocamldoc="ocamldoc.opt"' >>findlib.conf; \ - fi - make[2]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' Processing 36/93: [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make opt] [cmdliner: make install] + /home/opam/.opam/opam-init/hooks/sandbox.sh "install" "make" "install" "LIBDIR=/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" "DOCDIR=/home/opam/.opam/5.2.0+flambda2/doc/cmdliner" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/cmdliner.1.3.0) - install -d "/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" - install pkg/META _build/cmdliner.mli _build/cmdliner.cmi _build/cmdliner.cmti "/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" - install cmdliner.opam "/home/opam/.opam/5.2.0+flambda2/lib/cmdliner/opam" - install _build/cmdliner.cma "/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" - install _build/cmdliner.cmxa _build/cmdliner.a _build/cmdliner.cmx _build/cmdliner_arg.cmx _build/cmdliner_base.cmx _build/cmdliner_cline.cmx _build/cmdliner_cmd.cmx _build/cmdliner_docgen.cmx _build/cmdliner_eval.cmx _build/cmdliner_exit.cmx _build/cmdliner_info.cmx _build/cmdliner_manpage.cmx _build/cmdliner_msg.cmx _build/cmdliner_term.cmx _build/cmdliner_term_deprecated.cmx _build/cmdliner_trie.cmx \ - "/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" - install _build/cmdliner.cmxs "/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" Processing 36/93: [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make opt] [cmdliner: make install-doc] + /home/opam/.opam/opam-init/hooks/sandbox.sh "install" "make" "install-doc" "LIBDIR=/home/opam/.opam/5.2.0+flambda2/lib/cmdliner" "DOCDIR=/home/opam/.opam/5.2.0+flambda2/doc/cmdliner" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/cmdliner.1.3.0) - install -d "/home/opam/.opam/5.2.0+flambda2/doc/cmdliner/odoc-pages" - install CHANGES.md LICENSE.md README.md "/home/opam/.opam/5.2.0+flambda2/doc/cmdliner" - install doc/index.mld doc/cli.mld doc/examples.mld doc/tutorial.mld \ - doc/tool_man.mld "/home/opam/.opam/5.2.0+flambda2/doc/cmdliner/odoc-pages" -> installed cmdliner.1.3.0 Processing 36/93: [dune: ocaml 255] [ocamlbuild: make check-if-preinstalled] [ocamlfind: make opt] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "check-if-preinstalled" "all" "opam-install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst) - if test -d /home/opam/.opam/5.2.0+flambda2/lib/ocaml/ocamlbuild; then\ - >&2 echo "ERROR: Preinstalled ocamlbuild detected at"\ - "/home/opam/.opam/5.2.0+flambda2/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 -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/const.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/loc.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/loc.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/discard_printf.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/discard_printf.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/signatures.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/exit_codes.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/exit_codes.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_std.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_std.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_executor.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_executor.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_unix.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_unix.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tags.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tags.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/display.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/display.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/log.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/log.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/shell.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/shell.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/bool.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/bool.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_ast.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_ast.ml - ocamllex.opt src/glob_lexer.mll - 55 states, 419 transitions, table size 2006 bytes - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_lexer.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_lexer.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob.ml - ocamllex.opt src/lexers.mll - 235 states, 1033 transitions, table size 5542 bytes - 4238 additional bytes used for bindings - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/lexers.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/lexers.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/param_tags.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/param_tags.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/command.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/command.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_config.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_where.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_where.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/slurp.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/slurp.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/options.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/options.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/pathname.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/pathname.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/configuration.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/configuration.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/flags.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/flags.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hygiene.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hygiene.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/digest_cache.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/digest_cache.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/resource.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/resource.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/rule.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/rule.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/solver.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/solver.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/report.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/report.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tools.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tools.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/fda.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/fda.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/findlib.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/findlib.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_arch.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_arch.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_utils.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_utils.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_dependencies.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_dependencies.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_compiler.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_compiler.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_tools.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_tools.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_specific.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_specific.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/plugin.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/plugin.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hooks.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hooks.ml - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/main.mli - ocamlc.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/main.ml - mkdir -p tmp - ocamlc.opt -pack src/const.cmo src/loc.cmo src/discard_printf.cmo src/signatures.cmi src/exit_codes.cmo src/my_std.cmo src/ocamlbuild_executor.cmo src/my_unix.cmo src/tags.cmo src/display.cmo src/log.cmo src/shell.cmo src/bool.cmo src/glob_ast.cmo src/glob_lexer.cmo src/glob.cmo src/lexers.cmo src/param_tags.cmo src/command.cmo src/ocamlbuild_config.cmo src/ocamlbuild_where.cmo src/slurp.cmo src/options.cmo src/pathname.cmo src/configuration.cmo src/flags.cmo src/hygiene.cmo src/digest_cache.cmo src/resource.cmo src/rule.cmo src/solver.cmo src/report.cmo src/tools.cmo src/fda.cmo src/findlib.cmo src/ocaml_arch.cmo src/ocaml_utils.cmo src/ocaml_dependencies.cmo src/ocaml_compiler.cmo src/ocaml_tools.cmo src/ocaml_specific.cmo src/plugin.cmo src/hooks.cmo src/main.cmo -o tmp/ocamlbuild_pack.cmo - mv tmp/ocamlbuild_pack.cmi src/ocamlbuild_pack.cmi - mv tmp/ocamlbuild_pack.cmo src/ocamlbuild_pack.cmo - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_plugin.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_plugin.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_unix_plugin.ml - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c bin/ocamlbuild.mli - ocamlc.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c bin/ocamlbuild.ml - ocamlc.opt -I +unix -I src -o ocamlbuild.byte -I +unix unix.cma src/ocamlbuild_pack.cmo plugin-lib/ocamlbuild_plugin.cmo plugin-lib/ocamlbuild_unix_plugin.cmo bin/ocamlbuild.cmo - ocamlc.opt -a -o plugin-lib/ocamlbuildlib.cma src/ocamlbuild_pack.cmo plugin-lib/ocamlbuild_plugin.cmo plugin-lib/ocamlbuild_unix_plugin.cmo - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/const.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/loc.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/discard_printf.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/exit_codes.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_std.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_executor.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/my_unix.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tags.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/display.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/log.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/shell.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/bool.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_ast.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob_lexer.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/glob.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/lexers.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/param_tags.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/command.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_config.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocamlbuild_where.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/slurp.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/options.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/pathname.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/configuration.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/flags.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hygiene.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/digest_cache.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/resource.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/rule.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/solver.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/report.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/tools.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/fda.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/findlib.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_arch.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_utils.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_dependencies.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_compiler.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_tools.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/ocaml_specific.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/plugin.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/hooks.ml - ocamlopt.opt -for-pack Ocamlbuild_pack -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c src/main.ml - mkdir -p tmp - ocamlopt.opt -pack src/const.cmx src/loc.cmx src/discard_printf.cmx src/signatures.cmi src/exit_codes.cmx src/my_std.cmx src/ocamlbuild_executor.cmx src/my_unix.cmx src/tags.cmx src/display.cmx src/log.cmx src/shell.cmx src/bool.cmx src/glob_ast.cmx src/glob_lexer.cmx src/glob.cmx src/lexers.cmx src/param_tags.cmx src/command.cmx src/ocamlbuild_config.cmx src/ocamlbuild_where.cmx src/slurp.cmx src/options.cmx src/pathname.cmx src/configuration.cmx src/flags.cmx src/hygiene.cmx src/digest_cache.cmx src/resource.cmx src/rule.cmx src/solver.cmx src/report.cmx src/tools.cmx src/fda.cmx src/findlib.cmx src/ocaml_arch.cmx src/ocaml_utils.cmx src/ocaml_dependencies.cmx src/ocaml_compiler.cmx src/ocaml_tools.cmx src/ocaml_specific.cmx src/plugin.cmx src/hooks.cmx src/main.cmx -o tmp/ocamlbuild_pack.cmx - mv tmp/ocamlbuild_pack.cmx src/ocamlbuild_pack.cmx - mv tmp/ocamlbuild_pack.o src/ocamlbuild_pack.o - ocamlopt.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_plugin.ml - ocamlopt.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c plugin-lib/ocamlbuild_unix_plugin.ml - ocamlopt.opt -w @14@29 -w +L -w +R -w +Z -I src -I plugin-lib -I bin -I +unix -safe-string -bin-annot -strict-sequence -c bin/ocamlbuild.ml - ocamlopt.opt -I +unix -I src -o ocamlbuild.native -I +unix unix.cmxa src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_unix_plugin.cmx bin/ocamlbuild.cmx - ocamlopt.opt -a -o plugin-lib/ocamlbuildlib.cmxa src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_unix_plugin.cmx - ocamlc.opt -I +unix unix.cma src/ocamlbuild_pack.cmo -I src man/options_man.ml -o man/options_man.byte - ./man/options_man.byte > man/ocamlbuild.options.1 - cat man/ocamlbuild.header.1 man/ocamlbuild.options.1 man/ocamlbuild.footer.1 > man/ocamlbuild.1 - make ocamlbuild.install - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - rm -f ocamlbuild.install - touch ocamlbuild.install - make install-bin-opam - make[2]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - echo 'bin: [' >> ocamlbuild.install - echo ' "ocamlbuild.byte" {"ocamlbuild.byte"}' >> ocamlbuild.install - echo ' "ocamlbuild.native" {"ocamlbuild.native"}' >> ocamlbuild.install - echo ' "ocamlbuild.native" {"ocamlbuild"}' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - make install-lib-opam - make[2]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - echo 'lib: [' >> ocamlbuild.install - make install-lib-basics-opam - make[3]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - echo ' "ocamlbuild.opam" {"opam"}' >> ocamlbuild.install - echo ' "META"' >> ocamlbuild.install - for lib in src/signatures.mli src/signatures.cmi src/signatures.cmti; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - make[3]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - make install-lib-byte-opam - make[3]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - for lib in plugin-lib/ocamlbuildlib.cma bin/ocamlbuild.cmo src/ocamlbuild_pack.cmi plugin-lib/ocamlbuild_plugin.cmi plugin-lib/ocamlbuild_unix_plugin.cmi; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - make[3]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - make install-lib-native-opam - make[3]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - for lib in plugin-lib/ocamlbuildlib.cmxa plugin-lib/ocamlbuildlib.a bin/ocamlbuild.cmx bin/ocamlbuild.o src/ocamlbuild_pack.cmx plugin-lib/ocamlbuild_plugin.cmx plugin-lib/ocamlbuild_unix_plugin.cmx plugin-lib/ocamlbuild_plugin.o plugin-lib/ocamlbuild_unix_plugin.o; do \ - echo " \"$lib\" {\"$(basename $lib)\"}" >> ocamlbuild.install; \ - done - make[3]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - make install-man-opam - make[2]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - echo 'man: [' >> ocamlbuild.install - echo ' "man/ocamlbuild.1" {"man1/ocamlbuild.1"}' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - echo >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - make install-doc-opam - make[2]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - echo 'doc: [' >> ocamlbuild.install - echo ' "LICENSE"' >> ocamlbuild.install - echo ' "Changes"' >> ocamlbuild.install - echo ' "Readme.md"' >> ocamlbuild.install - echo ']' >> ocamlbuild.install - make[2]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlbuild.0.15.0+jst' -> compiled ocamlbuild.0.15.0+jst Processing 36/93: [dune: ocaml 255] [ocamlfind: make opt] -> installed ocamlbuild.0.15.0+jst Processing 37/93: [dune: ocaml 255] [ocamlfind: make opt] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "opt" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8) - for p in findlib; do ( cd src/$p; make opt ) || exit; done - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8/src/findlib' - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_compat.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 findlib_config.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_metatoken.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_meta.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_metascanner.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_topo.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_package_base.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c findlib.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_args.ml - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_lint.ml - ocamlopt -I +compiler-libs -g -a -o findlib.cmxa fl_compat.cmx fl_split.cmx findlib_config.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 fl_compat.cmx fl_split.cmx findlib_config.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 385, characters 6-16: - 385 | Sys.signal Sys.sigint Sys.Signal_ignore in - ^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Sys.signal - Use [Sys.Safe.signal]. - - File "frontend.ml", line 428, characters 4-18: - 428 | Sys.set_signal Sys.sigint old_sigint; - ^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Sys.set_signal - Use [Sys.Safe.set_signal]. - 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 - - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Topdirs, and its interface was not compiled with -opaque - - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Toploop, and its interface was not compiled with -opaque - ocamlopt -I +compiler-libs -g -a -o findlib_top.cmxa topfind.cmx - if [ 1 -gt 0 ]; then \ - ocamlopt -I +compiler-libs -g -shared -o findlib_top.cmxs topfind.cmx; \ - fi - ocamlopt -I +compiler-libs -g -opaque -I +unix -I +dynlink -c fl_dynload.ml - ocamlopt -I +compiler-libs -g -a -o findlib_dynload.cmxa fl_dynload.cmx - if [ 1 -gt 0 ]; then \ - ocamlopt -I +compiler-libs -g -shared -o findlib_dynload.cmxs fl_dynload.cmx; \ - fi - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8/src/findlib' -> compiled ocamlfind.1.9.8 Processing 37/93: [dune: ocaml 255] Processing 38/93: [dune: ocaml 255] [ocamlfind: make install] + /home/opam/.opam/opam-init/hooks/sandbox.sh "install" "make" "install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8) - if [ "0" -eq 1 ]; then \ - for x in camlp4 dbm graphics labltk num ocamlbuild; do \ - if [ -f "/home/opam/.opam/5.2.0+flambda2/lib/$x/META" ]; then \ - if ! grep -Fq '[distributed with Ocaml]' "//home/opam/.opam/5.2.0+flambda2/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/5.2.0+flambda2/bin" - install -d "/home/opam/.opam/5.2.0+flambda2/man" - make install-config - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - install -d "`dirname \"/home/opam/.opam/5.2.0+flambda2/lib/findlib.conf\"`" - test -f "/home/opam/.opam/5.2.0+flambda2/lib/findlib.conf" || cp findlib.conf "/home/opam/.opam/5.2.0+flambda2/lib/findlib.conf" - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - for p in findlib; do ( cd src/$p; make install ); done - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8/src/findlib' - install -d "/home/opam/.opam/5.2.0+flambda2/lib/findlib" - install -d "/home/opam/.opam/5.2.0+flambda2/bin" - test 1 -eq 0 || install -d "/home/opam/.opam/5.2.0+flambda2/lib/ocaml" - test 1 -eq 0 || cp topfind "/home/opam/.opam/5.2.0+flambda2/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` && \ - cp $files "/home/opam/.opam/5.2.0+flambda2/lib/findlib/" - f="ocamlfind"; { test -f ocamlfind_opt && f="ocamlfind_opt"; }; \ - install -c $f "/home/opam/.opam/5.2.0+flambda2/bin/ocamlfind" - # the following "if" block is only needed for 4.00beta2 - if [ 1 -eq 0 -a -f "/home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs/topdirs.cmi" ]; then \ - cd "/home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs/"; \ - cp topdirs.cmi toploop.cmi "/home/opam/.opam/5.2.0+flambda2/lib/findlib/"; \ - fi - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8/src/findlib' - make install-meta - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - for x in bytes ; do install -d "/home/opam/.opam/5.2.0+flambda2/lib/$x"; cp site-lib-src/$x/META "/home/opam/.opam/5.2.0+flambda2/lib/$x/META.tmp" && mv "/home/opam/.opam/5.2.0+flambda2/lib/$x/META.tmp" "/home/opam/.opam/5.2.0+flambda2/lib/$x/META"; done - install -d "/home/opam/.opam/5.2.0+flambda2/lib/findlib"; cp Makefile.packages "/home/opam/.opam/5.2.0+flambda2/lib/findlib/Makefile.packages" - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - test ! -f 'site-lib-src/num-top/META' || { cd src/findlib; make install-num-top; } - test ! -f 'site-lib-src/camlp4/META' || install -c tools/safe_camlp4 "/home/opam/.opam/5.2.0+flambda2/bin" - make install-doc - make[1]: Entering directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' - install -d "/home/opam/.opam/5.2.0+flambda2/man/man1" "/home/opam/.opam/5.2.0+flambda2/man/man3" "/home/opam/.opam/5.2.0+flambda2/man/man5" - cp doc/ref-man/ocamlfind.1 "/home/opam/.opam/5.2.0+flambda2/man/man1" - cp: cannot stat 'doc/ref-man/ocamlfind.1': No such file or directory - make[1]: [Makefile:91: install-doc] Error 1 (ignored) - cp doc/ref-man/META.5 doc/ref-man/site-lib.5 doc/ref-man/findlib.conf.5 "/home/opam/.opam/5.2.0+flambda2/man/man5" - cp: cannot stat 'doc/ref-man/META.5': No such file or directory - cp: cannot stat 'doc/ref-man/site-lib.5': No such file or directory - cp: cannot stat 'doc/ref-man/findlib.conf.5': No such file or directory - make[1]: [Makefile:92: install-doc] Error 1 (ignored) - make[1]: Leaving directory '/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocamlfind.1.9.8' -> installed ocamlfind.1.9.8 Processing 38/93: [dune: ocaml 255] [topkg: patch] applying topkg_string.patch Processing 39/93: [dune: ocaml 255] [topkg: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "pkg/pkg.ml" "build" "--pkg-name" "topkg" "--dev-pkg" "false" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/topkg.1.0.8+jst) - + ocamlfind ocamldep -modules src/topkg.ml > src/topkg.ml.depends - + ocamlfind ocamldep -modules src/topkg.mli > src/topkg.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg.cmi src/topkg.mli - + ocamlfind ocamldep -modules src/topkg_build.ml > src/topkg_build.ml.depends - + ocamlfind ocamldep -modules src/topkg_build.mli > src/topkg_build.mli.depends - + ocamlfind ocamldep -modules src/topkg_cmd.mli > src/topkg_cmd.mli.depends - + ocamlfind ocamldep -modules src/topkg_fpath.mli > src/topkg_fpath.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_fpath.cmi src/topkg_fpath.mli - + ocamlfind ocamldep -modules src/topkg_codec.mli > src/topkg_codec.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_cmd.cmi src/topkg_cmd.mli - + ocamlfind ocamldep -modules src/topkg_result.mli > src/topkg_result.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_result.cmi src/topkg_result.mli - + ocamlfind ocamldep -modules src/topkg_conf.mli > src/topkg_conf.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_codec.cmi src/topkg_codec.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_conf.cmi src/topkg_conf.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_build.cmi src/topkg_build.mli - + ocamlfind ocamldep -modules src/topkg_cmd.ml > src/topkg_cmd.ml.depends - + ocamlfind ocamldep -modules src/topkg_fpath.ml > src/topkg_fpath.ml.depends - + ocamlfind ocamldep -modules src/topkg_string.ml > src/topkg_string.ml.depends - + ocamlfind ocamldep -modules src/topkg_string.mli > src/topkg_string.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_string.cmi src/topkg_string.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_string.cmx src/topkg_string.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_fpath.cmx src/topkg_fpath.ml - + ocamlfind ocamldep -modules src/topkg_codec.ml > src/topkg_codec.ml.depends - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_cmd.cmx src/topkg_cmd.ml - + ocamlfind ocamldep -modules src/topkg_os.ml > src/topkg_os.ml.depends - + ocamlfind ocamldep -modules src/topkg_os.mli > src/topkg_os.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_os.cmi src/topkg_os.mli - + ocamlfind ocamldep -modules src/topkg_log.ml > src/topkg_log.ml.depends - + ocamlfind ocamldep -modules src/topkg_log.mli > src/topkg_log.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_log.cmi src/topkg_log.mli - + ocamlfind ocamldep -modules src/topkg_result.ml > src/topkg_result.ml.depends - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_result.cmx src/topkg_result.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_log.cmx src/topkg_log.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_os.cmx src/topkg_os.ml - + ocamlfind ocamldep -modules src/topkg_conf.ml > src/topkg_conf.ml.depends - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_codec.cmx src/topkg_codec.ml - + ocamlfind ocamldep -modules src/topkg_vcs.ml > src/topkg_vcs.ml.depends - + ocamlfind ocamldep -modules src/topkg_vcs.mli > src/topkg_vcs.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_vcs.cmi src/topkg_vcs.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_vcs.cmx src/topkg_vcs.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_conf.cmx src/topkg_conf.ml - + ocamlfind ocamldep -modules src/topkg_distrib.ml > src/topkg_distrib.ml.depends - + ocamlfind ocamldep -modules src/topkg_distrib.mli > src/topkg_distrib.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_distrib.cmi src/topkg_distrib.mli - + ocamlfind ocamldep -modules src/topkg_opam.ml > src/topkg_opam.ml.depends - + ocamlfind ocamldep -modules src/topkg_opam.mli > src/topkg_opam.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_opam.cmi src/topkg_opam.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_opam.cmx src/topkg_opam.ml - + ocamlfind ocamldep -modules src/topkg_fexts.ml > src/topkg_fexts.ml.depends - + ocamlfind ocamldep -modules src/topkg_fexts.mli > src/topkg_fexts.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_fexts.cmi src/topkg_fexts.mli - + ocamlfind ocamldep -modules src/topkg_install.ml > src/topkg_install.ml.depends - + ocamlfind ocamldep -modules src/topkg_install.mli > src/topkg_install.mli.depends - + ocamlfind ocamldep -modules src/topkg_test.mli > src/topkg_test.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_test.cmi src/topkg_test.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_install.cmi src/topkg_install.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_fexts.cmx src/topkg_fexts.ml - + ocamlfind ocamldep -modules src/topkg_test.ml > src/topkg_test.ml.depends - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_test.cmx src/topkg_test.ml - + ocamlfind ocamldep -modules src/topkg_ipc.ml > src/topkg_ipc.ml.depends - + ocamlfind ocamldep -modules src/topkg_ipc.mli > src/topkg_ipc.mli.depends - + ocamlfind ocamldep -modules src/topkg_pkg.mli > src/topkg_pkg.mli.depends - + ocamlfind ocamldep -modules src/topkg_publish.mli > src/topkg_publish.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_publish.cmi src/topkg_publish.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_pkg.cmi src/topkg_pkg.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_ipc.cmi src/topkg_ipc.mli - + ocamlfind ocamldep -modules src/topkg_pkg.ml > src/topkg_pkg.ml.depends - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_build.cmx src/topkg_build.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_distrib.cmx src/topkg_distrib.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_install.cmx src/topkg_install.ml - + ocamlfind ocamldep -modules src/topkg_publish.ml > src/topkg_publish.ml.depends - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_publish.cmx src/topkg_publish.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_pkg.cmx src/topkg_pkg.ml - + ocamlfind ocamldep -modules src/topkg_main.ml > src/topkg_main.ml.depends - + ocamlfind ocamldep -modules src/topkg_main.mli > src/topkg_main.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_main.cmi src/topkg_main.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_ipc.cmx src/topkg_ipc.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_main.cmx src/topkg_main.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg.cmx src/topkg.ml - + ocamlfind ocamlopt -a -I src src/topkg_string.cmx src/topkg_fpath.cmx src/topkg_cmd.cmx src/topkg_result.cmx src/topkg_log.cmx src/topkg_os.cmx src/topkg_codec.cmx src/topkg_vcs.cmx src/topkg_conf.cmx src/topkg_build.cmx src/topkg_opam.cmx src/topkg_distrib.cmx src/topkg_fexts.cmx src/topkg_test.cmx src/topkg_install.cmx src/topkg_publish.cmx src/topkg_pkg.cmx src/topkg_ipc.cmx src/topkg_main.cmx src/topkg.cmx -o src/topkg.cmxa - + ocamlfind ocamlopt -shared -linkall -I src src/topkg.cmxa -o src/topkg.cmxs - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg.cmo src/topkg.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_build.cmo src/topkg_build.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_cmd.cmo src/topkg_cmd.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_codec.cmo src/topkg_codec.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_conf.cmo src/topkg_conf.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_distrib.cmo src/topkg_distrib.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_fexts.cmo src/topkg_fexts.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_fpath.cmo src/topkg_fpath.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_install.cmo src/topkg_install.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_ipc.cmo src/topkg_ipc.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_log.cmo src/topkg_log.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_main.cmo src/topkg_main.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_opam.cmo src/topkg_opam.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_os.cmo src/topkg_os.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_pkg.cmo src/topkg_pkg.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_publish.cmo src/topkg_publish.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_result.cmo src/topkg_result.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_string.cmo src/topkg_string.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_test.cmo src/topkg_test.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I src-bin -I src-care -I test -o src/topkg_vcs.cmo src/topkg_vcs.ml - + ocamlfind ocamlc -a -I src src/topkg_string.cmo src/topkg_fpath.cmo src/topkg_cmd.cmo src/topkg_result.cmo src/topkg_log.cmo src/topkg_os.cmo src/topkg_codec.cmo src/topkg_vcs.cmo src/topkg_conf.cmo src/topkg_build.cmo src/topkg_opam.cmo src/topkg_distrib.cmo src/topkg_fexts.cmo src/topkg_test.cmo src/topkg_install.cmo src/topkg_publish.cmo src/topkg_pkg.cmo src/topkg_ipc.cmo src/topkg_main.cmo src/topkg.cmo -o src/topkg.cma - # Parallel statistics: { count(total): 2(84), max: 20, min: 2, average(total): 11.000(1.238) } -> compiled topkg.1.0.8+jst Processing 39/93: [dune: ocaml 255] -> installed topkg.1.0.8+jst Processing 40/93: [dune: ocaml 255] [uutf: patch] applying uutf-locals.patch Processing 41/93: [dune: ocaml 255] [uutf: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "pkg/pkg.ml" "build" "--dev-pkg" "false" "--with-cmdliner" "true" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/uutf.1.0.3+jst) - + ocamlfind ocamldep -modules src/uutf.ml > src/uutf.ml.depends - + ocamlfind ocamldep -modules src/uutf.mli > src/uutf.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I test -o src/uutf.cmi src/uutf.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I test -o src/uutf.cmx src/uutf.ml - + ocamlfind ocamlopt -a -I src src/uutf.cmx -o src/uutf.cmxa - + ocamlfind ocamlopt -shared -linkall -I src src/uutf.cmxa -o src/uutf.cmxs - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I test -o src/uutf.cmo src/uutf.ml - + ocamlfind ocamlc -a -I src src/uutf.cmo -o src/uutf.cma - + ocamlfind ocamldep -package unix -package cmdliner -modules test/utftrip.ml > test/utftrip.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -package unix -package cmdliner -I test -I src -o test/utftrip.cmo test/utftrip.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -package unix -package cmdliner -I test -I src -o test/utftrip.cmo test/utftrip.ml - File "test/utftrip.ml", line 385, characters 8-12: - 385 | Term.(pure do_cmd $ cmd $ file $ sin $ sout $ use_unix $ usize $ - ^^^^ - Alert deprecated: Cmdliner.Term.pure - Use Term.const instead. - - File "test/utftrip.ml", line 387, characters 2-11: - 387 | Term.info "utftrip" ~version:"v1.0.3" ~doc ~man - ^^^^^^^^^ - Alert deprecated: Cmdliner.Term.info - Use Cmd.info instead. - - File "test/utftrip.ml", line 389, characters 15-24: - 389 | let () = match Term.eval cmd with - ^^^^^^^^^ - Alert deprecated: Cmdliner.Term.eval - Use Cmd.v and one of Cmd.eval* instead. - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -package unix -package cmdliner -I test -I src -o test/utftrip.cmx test/utftrip.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -package unix -package cmdliner -I test -I src -o test/utftrip.cmx test/utftrip.ml - File "test/utftrip.ml", line 385, characters 8-12: - 385 | Term.(pure do_cmd $ cmd $ file $ sin $ sout $ use_unix $ usize $ - ^^^^ - Alert deprecated: Cmdliner.Term.pure - Use Term.const instead. - - File "test/utftrip.ml", line 387, characters 2-11: - 387 | Term.info "utftrip" ~version:"v1.0.3" ~doc ~man - ^^^^^^^^^ - Alert deprecated: Cmdliner.Term.info - Use Cmd.info instead. - - File "test/utftrip.ml", line 389, characters 15-24: - 389 | let () = match Term.eval cmd with - ^^^^^^^^^ - Alert deprecated: Cmdliner.Term.eval - Use Cmd.v and one of Cmd.eval* instead. - + ocamlfind ocamlopt -linkpkg -g -package unix -package cmdliner -I src -I test src/uutf.cmx test/utftrip.cmx -o test/utftrip.native - # No parallelism done -> compiled uutf.1.0.3+jst Processing 41/93: [dune: ocaml 255] -> installed uutf.1.0.3+jst Processing 42/93: [dune: ocaml 255] Processing 43/93: [dune: ocaml 255] [uunf: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "pkg/pkg.ml" "build" "--dev-pkg" "false" "--with-uutf" "true" "--with-cmdliner" "true" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/uunf.16.0.0) - + ocamlfind ocamldep -modules src/uunf_fmt.ml > src/uunf_fmt.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_fmt.cmo src/uunf_fmt.ml - + ocamlfind ocamldep -modules src/uunf_tmap.ml > src/uunf_tmap.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_tmap.cmo src/uunf_tmap.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_fmt.cmx src/uunf_fmt.ml - + ocamlfind ocamldep -modules src/uunf_tmapbool.ml > src/uunf_tmapbool.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_tmapbool.cmo src/uunf_tmapbool.ml - + ocamlfind ocamldep -modules src/uunf_tmapbyte.ml > src/uunf_tmapbyte.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_tmapbyte.cmo src/uunf_tmapbyte.ml - + ocamlfind ocamldep -modules src/uunf_data.ml > src/uunf_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_data.cmo src/uunf_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_tmap.cmx src/uunf_tmap.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_tmapbool.cmx src/uunf_tmapbool.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_tmapbyte.cmx src/uunf_tmapbyte.ml - + ocamlfind ocamldep -modules src/uunf.ml > src/uunf.ml.depends - + ocamlfind ocamldep -modules src/uunf.mli > src/uunf.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf.cmi src/uunf.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_data.cmx src/uunf_data.ml - + ocamlfind ocamldep -modules src/uunf_string.ml > src/uunf_string.ml.depends - + ocamlfind ocamldep -modules src/uunf_string.mli > src/uunf_string.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_string.cmi src/uunf_string.mli - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf.cmx src/uunf.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_string.cmx src/uunf_string.ml - + ocamlfind ocamlopt -a -I src src/uunf_fmt.cmx src/uunf_tmap.cmx src/uunf_tmapbool.cmx src/uunf_tmapbyte.cmx src/uunf_data.cmx src/uunf.cmx src/uunf_string.cmx -o src/uunf.cmxa - + ocamlfind ocamlopt -shared -linkall -I src src/uunf.cmxa -o src/uunf.cmxs - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf.cmo src/uunf.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -I src -I support -I test -o src/uunf_string.cmo src/uunf_string.ml - + ocamlfind ocamlc -a -I src src/uunf_fmt.cmo src/uunf_tmap.cmo src/uunf_tmapbool.cmo src/uunf_tmapbyte.cmo src/uunf_data.cmo src/uunf.cmo src/uunf_string.cmo -o src/uunf.cma - + ocamlfind ocamldep -package uutf -package cmdliner -modules test/unftrip.ml > test/unftrip.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -package uutf -package cmdliner -I test -I src -I support -o test/unftrip.cmo test/unftrip.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -package uutf -package cmdliner -I test -I src -I support -o test/unftrip.cmx test/unftrip.ml - + ocamlfind ocamlopt -linkpkg -g -package uutf -package cmdliner -I src -I test src/uunf_fmt.cmx src/uunf_tmap.cmx src/uunf_tmapbool.cmx src/uunf_tmapbyte.cmx src/uunf_data.cmx src/uunf.cmx test/unftrip.cmx -o test/unftrip.native - # Parallel statistics: { count(total): 1(32), max: 2, min: 2, average(total): 2.000(1.031) } -> compiled uunf.16.0.0 Processing 43/93: [dune: ocaml 255] -> installed uunf.16.0.0 Processing 44/93: [dune: ocaml 255] Processing 45/93: [dune: ocaml 255] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "boot/bootstrap.ml" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune.3.18.2) - ocamlc -output-complete-exe -w -24 -g -o .duneboot.exe -I boot -I +unix unix.cma boot/libs.ml boot/duneboot.ml - ./.duneboot.exe -j 255 - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads ocamlc_loc.mli - File "otherlibs/ocamlc-loc/src/ocamlc_loc.mli", line 1, characters 4-9: - Warning 53 [misplaced-attribute]: the "alert" attribute cannot appear in this context - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads stdune__Code_error.ml - File "otherlibs/stdune/src/code_error.ml", line 29, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads notty_unix.ml - File "vendor/notty/src-unix/notty_unix.ml", line 38, characters 23-29: - Alert unsafe_multidomain: Stdlib.Sys.signal - Use [Sys.Safe.signal]. - - File "vendor/notty/src-unix/notty_unix.ml", line 39, characters 31-45: - Alert unsafe_multidomain: Stdlib.Sys.set_signal - Use [Sys.Safe.set_signal]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads stdune__User_error.ml - File "otherlibs/stdune/src/user_error.ml", line 17, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads opamStd.ml - File "vendor/opam/src/core/opamStd.ml", line 960, characters 10-24: - Alert unsafe_multidomain: Stdlib.Sys.set_signal - Use [Sys.Safe.set_signal]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads opamProcess.ml - File "vendor/opam/src/core/opamProcess.ml", line 674, characters 12-22: - Alert unsafe_multidomain: Stdlib.Sys.signal - Use [Sys.Safe.signal]. - - File "vendor/opam/src/core/opamProcess.ml", line 681, characters 6-20: - Alert unsafe_multidomain: Stdlib.Sys.set_signal - Use [Sys.Safe.set_signal]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_private__Conv.ml - File "otherlibs/dune-rpc/private/conv.ml", line 48, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_private__Where.ml - File "otherlibs/dune-rpc/private/where.ml", line 22, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_private__Types.ml - File "otherlibs/dune-rpc/private/types.ml", line 154, characters 6-31: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_private__Registry.ml - File "otherlibs/dune-rpc/private/registry.ml", line 67, characters 4-29: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads opamSystem.ml - File "vendor/opam/src/core/opamSystem.ml", line 1648, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - - File "vendor/opam/src/core/opamSystem.ml", line 1665, characters 6-20: - Alert unsafe_multidomain: Stdlib.Sys.set_signal - Use [Sys.Safe.set_signal]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_private__Versioned.ml - File "otherlibs/dune-rpc/private/versioned.ml", line 23, characters 4-29: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads memo.ml - File "src/memo/memo.ml", line 414, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_private.ml - File "otherlibs/dune-rpc/private/dune_rpc_private.ml", line 200, characters 6-31: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_action_plugin.mli - File "otherlibs/dune-action-plugin/src/dune_action_plugin.mli", line 1, characters 4-9: - Warning 53 [misplaced-attribute]: the "alert" attribute cannot appear in this context - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_rpc_server.ml - File "src/dune_rpc_server/dune_rpc_server.ml", line 15, characters 2-27: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads opamPp.ml - File "vendor/opam/src/format/opamPp.ml", line 64, characters 9-34: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_engine__Scheduler.ml - File "src/dune_engine/scheduler.ml", line 54, characters 4-29: - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - - File "src/dune_engine/scheduler.ml", line 632, characters 6-20: - Alert unsafe_multidomain: Dune_engine__.Import.Sys.set_signal - Use [Sys.Safe.set_signal]. - cd _boot && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -c -g -no-alias-deps -w -49-6 -alert -unstable -I +unix -I +threads dune_tui.ml - File "src/dune_tui/dune_tui.ml", line 14, characters 7-21: - Alert unsafe_multidomain: Dune_tui__.Import.Sys.set_signal - Use [Sys.Safe.set_signal]. - - File "src/dune_tui/dune_tui.ml", line 22, characters 12-22: - Alert unsafe_multidomain: Dune_tui__.Import.Sys.signal - Use [Sys.Safe.signal]. - Processing 45/93: [dune: ./_boot/dune.exe build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "./_boot/dune.exe" "build" "dune.install" "--release" "--profile" "dune-bootstrap" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune.3.18.2) -> compiled dune.3.18.2 Processing 45/93: [uucp: ocaml build] -> installed dune.3.18.2 Processing 46/93: [uucp: ocaml build] Processing 47/93: [basement: dune build] [uucp: ocaml build] Processing 48/93: [basement: dune build] [cppo: dune build] [uucp: ocaml build] Processing 49/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [uucp: ocaml build] Processing 50/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [uucp: ocaml build] Processing 51/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [uucp: ocaml build] Processing 52/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [uucp: ocaml build] [ocaml-compiler-libs: patch] applying read_cma.patch Processing 53/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [uucp: ocaml build] Processing 54/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [uucp: ocaml build] Processing 55/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [uucp: ocaml build] Processing 56/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [uucp: ocaml build] Processing 57/93: [basement: dune build] [cppo: dune build] [csexp: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "csexp" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/csexp.1.5.2) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/.csexp.objs/byte -intf-suffix .ml -no-alias-deps -o src/.csexp.objs/byte/csexp.cmo -c -impl src/csexp.ml) - File "src/csexp.ml", line 236, characters 7-14: - 236 | [@@inlined always] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "inlined" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/.csexp.objs/byte -I src/.csexp.objs/native -intf-suffix .ml -no-alias-deps -o src/.csexp.objs/native/csexp.cmx -c -impl src/csexp.ml) - File "src/csexp.ml", line 236, characters 7-14: - 236 | [@@inlined always] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "inlined" attribute cannot appear in this context -> compiled csexp.1.5.2 Processing 57/93: [basement: dune build] [cppo: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] -> installed csexp.1.5.2 Processing 58/93: [basement: dune build] [cppo: dune build] [dune-build-info: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] Processing 59/93: [basement: dune build] [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "basement" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/basement.v0.18~preview.130.31+242) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/.basement.objs/byte -no-alias-deps -open Basement__ -o src/.basement.objs/byte/basement.cmo -c -impl src/basement.ml) - File "src/basement.ml", line 9, characters 30-50: - 9 | module Stdlib_shim_upstream = Stdlib_shim_upstream - ^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Stdlib_shim_upstream - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -O3 -flambda2-inline-max-depth 10 -I src/.basement.objs/byte -I src/.basement.objs/native -intf-suffix .ml -no-alias-deps -open Basement__ -o src/.basement.objs/native/basement.cmx -c -impl src/basement.ml) - File "src/basement.ml", line 9, characters 30-50: - 9 | module Stdlib_shim_upstream = Stdlib_shim_upstream - ^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Stdlib_shim_upstream -> compiled basement.v0.18~preview.130.31+242 Processing 59/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] -> installed basement.v0.18~preview.130.31+242 Processing 60/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] Processing 61/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [linenoise: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [sexplib0: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "vendor/csexp" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune-build-info.3.18.2) + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "@install" "-p" "linenoise" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/linenoise.1.5.1) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -warn-error -3 -g -bin-annot -bin-annot-occurrences -I src/.linenoise.objs/byte -intf-suffix .ml -no-alias-deps -o src/.linenoise.objs/byte/lNoise.cmo -c -impl src/lNoise.ml) - File "src/lNoise.ml", line 24, characters 2-19: - 24 | Callback.register "lnoise_completion_cb" f - ^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Callback.register - Use [Callback.Safe.register]. - - File "src/lNoise.ml", line 28, characters 2-19: - 28 | Callback.register "lnoise_hints_cb" f - ^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Callback.register - Use [Callback.Safe.register]. - - File "src/lNoise.ml", line 35, characters 2-29: - 35 | Callback.register_exception "sys_break" Sys.Break; - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Callback.register_exception - Use [Callback.Safe.register_exception]. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -warn-error -3 -g -I src/.linenoise.objs/byte -I src/.linenoise.objs/native -intf-suffix .ml -no-alias-deps -o src/.linenoise.objs/native/lNoise.cmx -c -impl src/lNoise.ml) - File "src/lNoise.ml", line 24, characters 2-19: - 24 | Callback.register "lnoise_completion_cb" f - ^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Callback.register - Use [Callback.Safe.register]. - - File "src/lNoise.ml", line 28, characters 2-19: - 28 | Callback.register "lnoise_hints_cb" f - ^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Callback.register - Use [Callback.Safe.register]. - - File "src/lNoise.ml", line 35, characters 2-29: - 35 | Callback.register_exception "sys_break" Sys.Break; - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Callback.register_exception - Use [Callback.Safe.register_exception]. -> compiled linenoise.1.5.1 Processing 61/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [sexplib0: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] -> installed linenoise.1.5.1 Processing 62/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [ppx_derivers: dune build] [sexplib0: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ppx_derivers" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ppx_derivers.1.2.1) -> compiled ppx_derivers.1.2.1 Processing 62/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] -> installed ppx_derivers.1.2.1 Processing 63/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [stdlib-shims: dune build] [stringext: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "stdlib-shims" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/stdlib-shims.0.3.0) -> compiled stdlib-shims.0.3.0 Processing 63/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [stringext: dune build] [uucp: ocaml build] -> installed stdlib-shims.0.3.0 Processing 64/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [stringext: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "stringext" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/stringext.1.6.0) -> compiled stringext.1.6.0 Processing 64/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] -> installed stringext.1.6.0 Processing 65/93: [cppo: dune build] [dune-build-info: rm] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "vendor/csexp" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune-configurator.3.18.2) + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "vendor/pp" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune-build-info.3.18.2) Processing 65/93: [cppo: dune build] [dune-build-info: dune build] [dune-configurator: rm] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "vendor/pp" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune-configurator.3.18.2) Processing 65/93: [cppo: dune build] [dune-build-info: dune build] [dune-configurator: dune build] [gen: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "@install" "-p" "gen" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/gen.1.1) -> compiled gen.1.1 Processing 65/93: [cppo: dune build] [dune-build-info: dune build] [dune-configurator: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] -> installed gen.1.1 Processing 66/93: [cppo: dune build] [dune-build-info: dune build] [dune-configurator: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "cppo" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/cppo.1.8.0) -> compiled cppo.1.8.0 Processing 66/93: [dune-build-info: dune build] [dune-configurator: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] -> installed cppo.1.8.0 Processing 67/93: [dune-build-info: dune build] [dune-configurator: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] Processing 68/93: [dune-build-info: dune build] [dune-configurator: dune build] [extlib: dune build] [ocaml-compiler-libs: dune build] [ocaml-syntax-shims: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ocaml-syntax-shims" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocaml-syntax-shims.1.0.0) - (cd _build/default/src && /home/opam/.opam/5.2.0+flambda2/bin/ocaml select-impl 5.2.0+jst) > _build/default/src/impl - File "_none_", line 1: - Alert ocaml_deprecated_cli: - Running ocaml where the first argument is an implicit basename with no - extension (e.g. ocaml script-file) is deprecated. Either rename the script - (ocaml script-file.ml) or qualify the basename (ocaml ./script-file) -> compiled ocaml-syntax-shims.1.0.0 Processing 68/93: [dune-build-info: dune build] [dune-configurator: dune build] [extlib: dune build] [ocaml-compiler-libs: dune build] [sexplib0: dune build] [uucp: ocaml build] -> installed ocaml-syntax-shims.1.0.0 Processing 69/93: [dune-build-info: dune build] [dune-configurator: dune build] [extlib: dune build] [ocaml-compiler-libs: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "dune-build-info" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune-build-info.3.18.2) -> compiled dune-build-info.3.18.2 Processing 69/93: [dune-configurator: dune build] [extlib: dune build] [ocaml-compiler-libs: dune build] [sexplib0: dune build] [uucp: ocaml build] -> installed dune-build-info.3.18.2 Processing 70/93: [dune-configurator: dune build] [extlib: dune build] [ocaml-compiler-libs: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ocaml-compiler-libs" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ocaml-compiler-libs.v0.17.0+jst) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -safe-string -g -bin-annot -bin-annot-occurrences -I src/ocaml_toplevel/.ocaml_toplevel.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs -no-alias-deps -o src/ocaml_toplevel/.ocaml_toplevel.objs/byte/ocaml_toplevel.cmo -c -impl src/ocaml_toplevel/ocaml_toplevel.ml) - File "src/ocaml_toplevel/ocaml_toplevel.ml", line 4, characters 21-30: - 4 | module Topcommon = Topcommon - ^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Topcommon - - File "src/ocaml_toplevel/ocaml_toplevel.ml", line 6, characters 21-28: - 6 | module Topeval = Topeval - ^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Topeval - - File "src/ocaml_toplevel/ocaml_toplevel.ml", line 9, characters 21-32: - 9 | module Topprinters = Topprinters - ^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Topprinters - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I src/ocaml_toplevel/.ocaml_toplevel.objs/byte -I src/ocaml_toplevel/.ocaml_toplevel.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs -intf-suffix .ml -no-alias-deps -o src/ocaml_toplevel/.ocaml_toplevel.objs/native/ocaml_toplevel.cmx -c -impl src/ocaml_toplevel/ocaml_toplevel.ml) - File "src/ocaml_toplevel/ocaml_toplevel.ml", line 4, characters 21-30: - 4 | module Topcommon = Topcommon - ^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Topcommon - - File "src/ocaml_toplevel/ocaml_toplevel.ml", line 6, characters 21-28: - 6 | module Topeval = Topeval - ^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Topeval - - File "src/ocaml_toplevel/ocaml_toplevel.ml", line 9, characters 21-32: - 9 | module Topprinters = Topprinters - ^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Topprinters - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -safe-string -g -bin-annot -bin-annot-occurrences -I src/ocaml_optcomp/.ocaml_optcomp.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs -no-alias-deps -o src/ocaml_optcomp/.ocaml_optcomp.objs/byte/ocaml_optcomp.cmo -c -impl src/ocaml_optcomp/ocaml_optcomp.ml) - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 7, characters 68-95: - 7 | module Asm_targets__Asm_directives = Asm_targets__Asm_directives - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_directives - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 8, characters 68-100: - 8 | module Asm_targets__Asm_directives_intf = Asm_targets__Asm_directives_intf - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_directives_intf - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 9, characters 68-90: - 9 | module Asm_targets__Asm_label = Asm_targets__Asm_label - ^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_label - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 10, characters 68-92: - 10 | module Asm_targets__Asm_section = Asm_targets__Asm_section - ^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_section - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 11, characters 68-91: - 11 | module Asm_targets__Asm_symbol = Asm_targets__Asm_symbol - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_symbol - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 411, characters 68-104: - 411 | module Flambda_backend_utils__File_sections = Flambda_backend_utils__File_sections - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Flambda_backend_utils__File_sections - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 412, characters 68-94: - 412 | module Flambda_backend_utils__Lru = Flambda_backend_utils__Lru - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Flambda_backend_utils__Lru - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 460, characters 68-84: - 460 | module Relocation_table = Relocation_table - ^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Relocation_table - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 473, characters 68-80: - 473 | module Symbol_entry = Symbol_entry - ^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Symbol_entry - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I src/ocaml_optcomp/.ocaml_optcomp.objs/byte -I src/ocaml_optcomp/.ocaml_optcomp.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs -intf-suffix .ml -no-alias-deps -o src/ocaml_optcomp/.ocaml_optcomp.objs/native/ocaml_optcomp.cmx -c -impl src/ocaml_optcomp/ocaml_optcomp.ml) - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 7, characters 68-95: - 7 | module Asm_targets__Asm_directives = Asm_targets__Asm_directives - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_directives - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 8, characters 68-100: - 8 | module Asm_targets__Asm_directives_intf = Asm_targets__Asm_directives_intf - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_directives_intf - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 9, characters 68-90: - 9 | module Asm_targets__Asm_label = Asm_targets__Asm_label - ^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_label - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 10, characters 68-92: - 10 | module Asm_targets__Asm_section = Asm_targets__Asm_section - ^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_section - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 11, characters 68-91: - 11 | module Asm_targets__Asm_symbol = Asm_targets__Asm_symbol - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Asm_targets__Asm_symbol - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 411, characters 68-104: - 411 | module Flambda_backend_utils__File_sections = Flambda_backend_utils__File_sections - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Flambda_backend_utils__File_sections - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 412, characters 68-94: - 412 | module Flambda_backend_utils__Lru = Flambda_backend_utils__Lru - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Flambda_backend_utils__Lru - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 460, characters 68-84: - 460 | module Relocation_table = Relocation_table - ^^^^^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Relocation_table - - File "src/ocaml_optcomp/ocaml_optcomp.ml", line 473, characters 68-80: - 473 | module Symbol_entry = Symbol_entry - ^^^^^^^^^^^^ - Warning 49 [no-cmi-file]: no cmi file was found in path for module Symbol_entry -> compiled ocaml-compiler-libs.v0.17.0+jst Processing 70/93: [dune-configurator: dune build] [extlib: dune build] [sexplib0: dune build] [uucp: ocaml build] -> installed ocaml-compiler-libs.v0.17.0+jst Processing 71/93: [dune-configurator: dune build] [extlib: dune build] [sexplib0: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "sexplib0" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/sexplib0.v0.18~preview.130.31+242) -> compiled sexplib0.v0.18~preview.130.31+242 Processing 71/93: [dune-configurator: dune build] [extlib: dune build] [uucp: ocaml build] -> installed sexplib0.v0.18~preview.130.31+242 Processing 72/93: [dune-configurator: dune build] [extlib: dune build] [uucp: ocaml build] [ppxlib_ast: patch] applying ppxlib+ast+ast.ml.patch [ppxlib_ast: patch] applying ppxlib+ast+ast_helper_lite.ml.patch [ppxlib_ast: patch] applying ppxlib+ast+ast_helper_lite.mli.patch [ppxlib_ast: patch] applying ppxlib+ast+location_error.ml.patch [ppxlib_ast: patch] applying ppxlib+ast+location_error.mli.patch [ppxlib_ast: patch] applying ppxlib+ast+supported_version+supported_version.ml.patch [ppxlib_ast: patch] applying ppxlib+ast+versions.ml.patch [ppxlib_ast: patch] applying ppxlib+ast+versions.mli.patch [ppxlib_ast: patch] applying ppxlib+astlib+ast_414.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+ast_500.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+ast_999.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+ast_metadata.mli.patch [ppxlib_ast: patch] applying ppxlib+astlib+astlib.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+cinaps+astlib_cinaps_helpers.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+config+gen.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+migrate_500_999.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+migrate_999_500.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+parse.mli.patch [ppxlib_ast: patch] applying ppxlib+astlib+pprintast.ml.patch [ppxlib_ast: patch] applying ppxlib+astlib+pprintast.mli.patch [ppxlib_ast: patch] applying ppxlib+astlib+stdlib0.ml.patch [ppxlib_ast: patch] applying ppxlib+stdppx+stdppx.ml.patch [ppxlib_ast: patch] applying dune.patch Processing 73/93: [dune-configurator: dune build] [extlib: dune build] [ppxlib_ast: ./cleanup.sh] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "./cleanup.sh" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ppxlib_ast.0.33.0+jst) Processing 73/93: [dune-configurator: dune build] [extlib: dune build] [ppxlib_ast: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "extlib" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/extlib.1.8.0) -> compiled extlib.1.8.0 Processing 73/93: [dune-configurator: dune build] [ppxlib_ast: dune build] [uucp: ocaml build] -> installed extlib.1.8.0 Processing 74/93: [dune-configurator: dune build] [ppxlib_ast: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "dune-configurator" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/dune-configurator.3.18.2) -> compiled dune-configurator.3.18.2 Processing 74/93: [ppxlib_ast: dune build] [uucp: ocaml build] -> installed dune-configurator.3.18.2 Processing 75/93: [ppxlib_ast: dune build] [uucp: ocaml build] Processing 76/93: [bigstringaf: dune build] [ppxlib_ast: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "bigstringaf" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/bigstringaf.0.10.0) -> compiled bigstringaf.0.10.0 Processing 76/93: [ppxlib_ast: dune build] [uucp: ocaml build] -> installed bigstringaf.0.10.0 Processing 77/93: [ppxlib_ast: dune build] [uucp: ocaml build] Processing 78/93: [angstrom: dune build] [ppxlib_ast: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "angstrom" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/angstrom.0.16.1) -> compiled angstrom.0.16.1 Processing 78/93: [ppxlib_ast: dune build] [uucp: ocaml build] -> installed angstrom.0.16.1 Processing 79/93: [ppxlib_ast: dune build] [uucp: ocaml build] Processing 80/93: [ppxlib_ast: dune build] [uri: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "uri" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/uri.4.4.0) -> compiled uri.4.4.0 Processing 80/93: [ppxlib_ast: dune build] [uucp: ocaml build] -> installed uri.4.4.0 Processing 81/93: [ppxlib_ast: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ppxlib_ast" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ppxlib_ast.0.33.0+jst) -> compiled ppxlib_ast.0.33.0+jst Processing 81/93: [uucp: ocaml build] -> installed ppxlib_ast.0.33.0+jst Processing 82/93: [uucp: ocaml build] Processing 83/93: [ppxlib_jane: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ppxlib_jane" "-j" "255" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ppxlib_jane.v0.18~preview.130.31+242) -> compiled ppxlib_jane.v0.18~preview.130.31+242 Processing 83/93: [uucp: ocaml build] -> installed ppxlib_jane.v0.18~preview.130.31+242 Processing 84/93: [uucp: ocaml build] [ppxlib: patch] applying ppxlib+metaquot+ppxlib_metaquot.ml.patch [ppxlib: patch] applying ppxlib+runner_as_ppx+ppxlib_runner_as_ppx.ml.patch [ppxlib: patch] applying ppxlib+src+ast_builder.ml.patch [ppxlib: patch] applying ppxlib+src+ast_builder.mli.patch [ppxlib: patch] applying ppxlib+src+ast_builder_intf.ml.patch [ppxlib: patch] applying ppxlib+src+ast_pattern.ml.patch [ppxlib: patch] applying ppxlib+src+ast_pattern.mli.patch [ppxlib: patch] applying ppxlib+src+ast_traverse.ml.patch [ppxlib: patch] applying ppxlib+src+attribute.ml.patch [ppxlib: patch] applying ppxlib+src+attribute.mli.patch [ppxlib: patch] applying ppxlib+src+cinaps+ppxlib_cinaps_helpers.ml.patch [ppxlib: patch] applying ppxlib+src+code_matcher.ml.patch [ppxlib: patch] applying ppxlib+src+code_matcher.mli.patch [ppxlib: patch] applying ppxlib+src+common.ml.patch [ppxlib: patch] applying ppxlib+src+common.mli.patch [ppxlib: patch] applying ppxlib+src+context_free.ml.patch [ppxlib: patch] applying ppxlib+src+context_free.mli.patch [ppxlib: patch] applying ppxlib+src+deriving.ml.patch [ppxlib: patch] applying ppxlib+src+deriving.mli.patch [ppxlib: patch] applying ppxlib+src+driver.ml.patch [ppxlib: patch] applying ppxlib+src+driver.mli.patch [ppxlib: patch] applying ppxlib+src+gen+gen_ast_builder.ml.patch [ppxlib: patch] applying ppxlib+src+gen+gen_ast_pattern.ml.patch [ppxlib: patch] applying ppxlib+src+gen+import.ml.patch [ppxlib: patch] applying ppxlib+src+ignore_unused_warning.ml.patch [ppxlib: patch] applying ppxlib+src+location.ml.patch [ppxlib: patch] applying ppxlib+src+location.mli.patch [ppxlib: patch] applying ppxlib+src+name.ml.patch [ppxlib: patch] applying ppxlib+src+utils.mli.patch [ppxlib: patch] applying ppxlib+traverse+ppxlib_traverse.ml.patch [ppxlib: patch] applying dune.patch [ppxlib: patch] applying location_check.ml.patch [ppxlib: patch] applying utils.ml.patch Processing 85/93: [ppxlib: rm ast] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "rm" "-rf" "ast" "astlib" "stdppx" "traverse_builtins" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ppxlib.0.33.0+jst) Processing 85/93: [ppxlib: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "ppxlib" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/ppxlib.0.33.0+jst) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I src/gen/.gen_ast_pattern.eobjs/byte -I src/gen/.gen_ast_pattern.eobjs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/astlib -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/stdppx -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_jane -I /home/opam/.opam/5.2.0+flambda2/lib/stdlib-shims -I shims/ast/.ppxlib_ast.objs/byte -I shims/ast/.ppxlib_ast.objs/native -I shims/astlib/.astlib.objs/byte -I shims/astlib/.astlib.objs/native -I shims/stdppx/.stdppx.objs/byte -I shims/stdppx/.stdppx.objs/native -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/native -intf-suffix .ml -no-alias-deps -open Dune__exe -o src/gen/.gen_ast_pattern.eobjs/native/dune__exe__Import.cmx -c -impl src/gen/import.ml) - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Location, and its interface was not compiled with -opaque - - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Longident, and its interface was not compiled with -opaque - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I src/gen/.gen_ast_pattern.eobjs/byte -I src/gen/.gen_ast_pattern.eobjs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/astlib -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/stdppx -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_jane -I /home/opam/.opam/5.2.0+flambda2/lib/stdlib-shims -I shims/ast/.ppxlib_ast.objs/byte -I shims/ast/.ppxlib_ast.objs/native -I shims/astlib/.astlib.objs/byte -I shims/astlib/.astlib.objs/native -I shims/stdppx/.stdppx.objs/byte -I shims/stdppx/.stdppx.objs/native -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/native -intf-suffix .ml -no-alias-deps -open Dune__exe -o src/gen/.gen_ast_pattern.eobjs/native/dune__exe__Gen_ast_builder.cmx -c -impl src/gen/gen_ast_builder.ml) - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Location, and its interface was not compiled with -opaque - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I src/gen/.gen_ast_pattern.eobjs/byte -I src/gen/.gen_ast_pattern.eobjs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/astlib -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/stdppx -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_jane -I /home/opam/.opam/5.2.0+flambda2/lib/stdlib-shims -I shims/ast/.ppxlib_ast.objs/byte -I shims/ast/.ppxlib_ast.objs/native -I shims/astlib/.astlib.objs/byte -I shims/astlib/.astlib.objs/native -I shims/stdppx/.stdppx.objs/byte -I shims/stdppx/.stdppx.objs/native -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/native -intf-suffix .ml -no-alias-deps -open Dune__exe -o src/gen/.gen_ast_pattern.eobjs/native/dune__exe__Gen_ast_pattern.cmx -c -impl src/gen/gen_ast_pattern.ml) - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Location, and its interface was not compiled with -opaque - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -safe-string -open Ocaml_shadow -g -bin-annot -bin-annot-occurrences -I src/.ppxlib.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml-compiler-libs/common -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml-compiler-libs/shadow -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs -I /home/opam/.opam/5.2.0+flambda2/lib/ppx_derivers -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/astlib -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/stdppx -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_jane -I /home/opam/.opam/5.2.0+flambda2/lib/sexplib0 -I /home/opam/.opam/5.2.0+flambda2/lib/stdlib-shims -I print-diff/.ppxlib_print_diff.objs/byte -I shims/ast/.ppxlib_ast.objs/byte -I shims/astlib/.astlib.objs/byte -I shims/stdppx/.stdppx.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -no-alias-deps -open Ppxlib__ -o src/.ppxlib.objs/byte/ppxlib__Ast_pattern_generated.cmo -c -impl src/ast_pattern_generated.ml) - File "src/ast_pattern_generated.ml", line 1574, characters 9-10: - 1574 | | _ -> fail loc "Modality") - ^ - Warning 11 [redundant-case]: this match case is unused. - - File "src/ast_pattern_generated.ml", line 1581, characters 9-10: - 1581 | | _ -> fail loc "Mode") - ^ - Warning 11 [redundant-case]: this match case is unused. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -open Ocaml_shadow -g -I src/.ppxlib.objs/byte -I src/.ppxlib.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml-compiler-libs/common -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml-compiler-libs/shadow -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/compiler-libs -I /home/opam/.opam/5.2.0+flambda2/lib/ppx_derivers -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/astlib -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/stdppx -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_jane -I /home/opam/.opam/5.2.0+flambda2/lib/sexplib0 -I /home/opam/.opam/5.2.0+flambda2/lib/stdlib-shims -I print-diff/.ppxlib_print_diff.objs/byte -I print-diff/.ppxlib_print_diff.objs/native -I shims/ast/.ppxlib_ast.objs/byte -I shims/ast/.ppxlib_ast.objs/native -I shims/astlib/.astlib.objs/byte -I shims/astlib/.astlib.objs/native -I shims/stdppx/.stdppx.objs/byte -I shims/stdppx/.stdppx.objs/native -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/native -intf-suffix .ml -no-alias-deps -open Ppxlib__ -o src/.ppxlib.objs/native/ppxlib__Ast_pattern_generated.cmx -c -impl src/ast_pattern_generated.ml) - File "src/ast_pattern_generated.ml", line 1574, characters 9-10: - 1574 | | _ -> fail loc "Modality") - ^ - Warning 11 [redundant-case]: this match case is unused. - - File "src/ast_pattern_generated.ml", line 1581, characters 9-10: - 1581 | | _ -> fail loc "Mode") - ^ - Warning 11 [redundant-case]: this match case is unused. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I metaquot/.ppxlib_metaquot.objs/byte -I metaquot/.ppxlib_metaquot.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/astlib -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I metaquot_lifters/.ppxlib_metaquot_lifters.objs/byte -I metaquot_lifters/.ppxlib_metaquot_lifters.objs/native -I shims/ast/.ppxlib_ast.objs/byte -I shims/ast/.ppxlib_ast.objs/native -I shims/astlib/.astlib.objs/byte -I shims/astlib/.astlib.objs/native -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/native -I src/.ppxlib.objs/byte -I src/.ppxlib.objs/native -intf-suffix .ml -no-alias-deps -o metaquot/.ppxlib_metaquot.objs/native/ppxlib_metaquot.cmx -c -impl metaquot/ppxlib_metaquot.ml) - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Ppxlib_jane__Shim, and its interface was not compiled with -opaque - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -safe-string -g -I traverse/.ppxlib_traverse.objs/byte -I traverse/.ppxlib_traverse.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/ast -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/stdppx -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_ast/traverse_builtins -I /home/opam/.opam/5.2.0+flambda2/lib/ppxlib_jane -I /home/opam/.opam/5.2.0+flambda2/lib/stdlib-shims -I shims/ast/.ppxlib_ast.objs/byte -I shims/ast/.ppxlib_ast.objs/native -I shims/stdppx/.stdppx.objs/byte -I shims/stdppx/.stdppx.objs/native -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/byte -I shims/traverse_builtins/.ppxlib_traverse_builtins.objs/native -I src/.ppxlib.objs/byte -I src/.ppxlib.objs/native -intf-suffix .ml -no-alias-deps -o traverse/.ppxlib_traverse.objs/native/ppxlib_traverse.cmx -c -impl traverse/ppxlib_traverse.pp.ml) - File "_none_", line 1: - Warning 58 [no-cmx-file]: no cmx file was found in path for module Astlib__Location, and its interface was not compiled with -opaque -> compiled ppxlib.0.33.0+jst Processing 85/93: [uucp: ocaml build] -> installed ppxlib.0.33.0+jst Processing 86/93: [uucp: ocaml build] [sedlex: patch] applying sedlex+syntax+ppx_sedlex.ml.patch Processing 87/93: [sedlex: dune build] [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "sedlex" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/sedlex.3.3+jst) -> compiled sedlex.3.3+jst Processing 87/93: [uucp: ocaml build] -> installed sedlex.3.3+jst Processing 88/93: [uucp: ocaml build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "ocaml" "pkg/pkg.ml" "build" "--dev-pkg" "false" "--with-uunf" "true" "--with-cmdliner" "true" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/uucp.16.0.0) - + ocamlfind ocamldep -modules src/uucp.ml > src/uucp.ml.depends - + ocamlfind ocamldep -modules src/uucp.mli > src/uucp.mli.depends - + ocamlfind ocamldep -modules src/uucp__age.mli > src/uucp__age.mli.depends - + ocamlfind ocamldep -modules src/uucp__alpha.mli > src/uucp__alpha.mli.depends - + ocamlfind ocamldep -modules src/uucp__block.mli > src/uucp__block.mli.depends - + ocamlfind ocamldep -modules src/uucp__break.mli > src/uucp__break.mli.depends - + ocamlfind ocamldep -modules src/uucp__case.mli > src/uucp__case.mli.depends - + ocamlfind ocamldep -modules src/uucp__case_fold.mli > src/uucp__case_fold.mli.depends - + ocamlfind ocamldep -modules src/uucp__case_map.mli > src/uucp__case_map.mli.depends - + ocamlfind ocamldep -modules src/uucp__case_nfkc.mli > src/uucp__case_nfkc.mli.depends - + ocamlfind ocamldep -modules src/uucp__case_nfkc_simple.mli > src/uucp__case_nfkc_simple.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_fold.cmi src/uucp__case_fold.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_map.cmi src/uucp__case_map.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_nfkc.cmi src/uucp__case_nfkc.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_nfkc_simple.cmi src/uucp__case_nfkc_simple.mli - + ocamlfind ocamldep -modules src/uucp__cjk.mli > src/uucp__cjk.mli.depends - + ocamlfind ocamldep -modules src/uucp__emoji.mli > src/uucp__emoji.mli.depends - + ocamlfind ocamldep -modules src/uucp__func.mli > src/uucp__func.mli.depends - + ocamlfind ocamldep -modules src/uucp__gc.mli > src/uucp__gc.mli.depends - + ocamlfind ocamldep -modules src/uucp__gen.mli > src/uucp__gen.mli.depends - + ocamlfind ocamldep -modules src/uucp__hangul.mli > src/uucp__hangul.mli.depends - + ocamlfind ocamldep -modules src/uucp__id.mli > src/uucp__id.mli.depends - + ocamlfind ocamldep -modules src/uucp__name.mli > src/uucp__name.mli.depends - + ocamlfind ocamldep -modules src/uucp__num.mli > src/uucp__num.mli.depends - + ocamlfind ocamldep -modules src/uucp__script.mli > src/uucp__script.mli.depends - + ocamlfind ocamldep -modules src/uucp__white.mli > src/uucp__white.mli.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__age.cmi src/uucp__age.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__alpha.cmi src/uucp__alpha.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__block.cmi src/uucp__block.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__break.cmi src/uucp__break.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case.cmi src/uucp__case.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__cjk.cmi src/uucp__cjk.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__emoji.cmi src/uucp__emoji.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__func.cmi src/uucp__func.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__gc.cmi src/uucp__gc.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__gen.cmi src/uucp__gen.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__hangul.cmi src/uucp__hangul.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__id.cmi src/uucp__id.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__name.cmi src/uucp__name.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__num.cmi src/uucp__num.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__script.cmi src/uucp__script.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__white.cmi src/uucp__white.mli - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp.cmi src/uucp.mli - + ocamlfind ocamldep -modules src/uucp__age.ml > src/uucp__age.ml.depends - + ocamlfind ocamldep -modules src/uucp_age_data.ml > src/uucp_age_data.ml.depends - + ocamlfind ocamldep -modules src/uucp_rmap.ml > src/uucp_rmap.ml.depends - + ocamlfind ocamldep -modules src/uucp_fmt.ml > src/uucp_fmt.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_fmt.cmo src/uucp_fmt.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_rmap.cmo src/uucp_rmap.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_age_data.cmo src/uucp_age_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_fmt.cmx src/uucp_fmt.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_rmap.cmx src/uucp_rmap.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_age_data.cmx src/uucp_age_data.ml - + ocamlfind ocamldep -modules src/uucp__alpha.ml > src/uucp__alpha.ml.depends - + ocamlfind ocamldep -modules src/uucp_alpha_data.ml > src/uucp_alpha_data.ml.depends - + ocamlfind ocamldep -modules src/uucp_tmapbool.ml > src/uucp_tmapbool.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmapbool.cmo src/uucp_tmapbool.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_alpha_data.cmo src/uucp_alpha_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmapbool.cmx src/uucp_tmapbool.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_alpha_data.cmx src/uucp_alpha_data.ml - + ocamlfind ocamldep -modules src/uucp__block.ml > src/uucp__block.ml.depends - + ocamlfind ocamldep -modules src/uucp_block_base.ml > src/uucp_block_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_block_base.cmo src/uucp_block_base.ml - + ocamlfind ocamldep -modules src/uucp_block_data.ml > src/uucp_block_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_block_data.cmo src/uucp_block_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_block_base.cmx src/uucp_block_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_block_data.cmx src/uucp_block_data.ml - + ocamlfind ocamldep -modules src/uucp__break.ml > src/uucp__break.ml.depends - + ocamlfind ocamldep -modules src/uucp__gc.ml > src/uucp__gc.ml.depends - + ocamlfind ocamldep -modules src/uucp_gc_base.ml > src/uucp_gc_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_gc_base.cmo src/uucp_gc_base.ml - + ocamlfind ocamldep -modules src/uucp_gc_data.ml > src/uucp_gc_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_gc_data.cmo src/uucp_gc_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_gc_base.cmx src/uucp_gc_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_gc_data.cmx src/uucp_gc_data.ml - + ocamlfind ocamldep -modules src/uucp_break_base.ml > src/uucp_break_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_break_base.cmo src/uucp_break_base.ml - + ocamlfind ocamldep -modules src/uucp_break_data.ml > src/uucp_break_data.ml.depends - + ocamlfind ocamldep -modules src/uucp_tmapbyte.ml > src/uucp_tmapbyte.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmapbyte.cmo src/uucp_tmapbyte.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_break_data.cmo src/uucp_break_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_break_base.cmx src/uucp_break_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmapbyte.cmx src/uucp_tmapbyte.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__gc.cmx src/uucp__gc.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_break_data.cmx src/uucp_break_data.ml - + ocamlfind ocamldep -modules src/uucp__case.ml > src/uucp__case.ml.depends - + ocamlfind ocamldep -modules src/uucp__case_fold.ml > src/uucp__case_fold.ml.depends - + ocamlfind ocamldep -modules src/uucp_case_fold_data.ml > src/uucp_case_fold_data.ml.depends - + ocamlfind ocamldep -modules src/uucp_tmap.ml > src/uucp_tmap.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmap.cmo src/uucp_tmap.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_fold_data.cmo src/uucp_case_fold_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmap.cmx src/uucp_tmap.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_fold_data.cmx src/uucp_case_fold_data.ml - + ocamlfind ocamldep -modules src/uucp__case_map.ml > src/uucp__case_map.ml.depends - + ocamlfind ocamldep -modules src/uucp_case_map_data.ml > src/uucp_case_map_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_map_data.cmo src/uucp_case_map_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_map_data.cmx src/uucp_case_map_data.ml - + ocamlfind ocamldep -modules src/uucp__case_nfkc.ml > src/uucp__case_nfkc.ml.depends - + ocamlfind ocamldep -modules src/uucp_case_nfkc_data.ml > src/uucp_case_nfkc_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_nfkc_data.cmo src/uucp_case_nfkc_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_nfkc_data.cmx src/uucp_case_nfkc_data.ml - + ocamlfind ocamldep -modules src/uucp__case_nfkc_simple.ml > src/uucp__case_nfkc_simple.ml.depends - + ocamlfind ocamldep -modules src/uucp_case_nfkc_simple_data.ml > src/uucp_case_nfkc_simple_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_nfkc_simple_data.cmo src/uucp_case_nfkc_simple_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_nfkc_simple_data.cmx src/uucp_case_nfkc_simple_data.ml - + ocamlfind ocamldep -modules src/uucp_case_data.ml > src/uucp_case_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_data.cmo src/uucp_case_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_fold.cmx src/uucp__case_fold.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_map.cmx src/uucp__case_map.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_nfkc.cmx src/uucp__case_nfkc.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_nfkc_simple.cmx src/uucp__case_nfkc_simple.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_case_data.cmx src/uucp_case_data.ml - + ocamlfind ocamldep -modules src/uucp__cjk.ml > src/uucp__cjk.ml.depends - + ocamlfind ocamldep -modules src/uucp_cjk_data.ml > src/uucp_cjk_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_cjk_data.cmo src/uucp_cjk_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_cjk_data.cmx src/uucp_cjk_data.ml - + ocamlfind ocamldep -modules src/uucp__emoji.ml > src/uucp__emoji.ml.depends - + ocamlfind ocamldep -modules src/uucp_emoji_data.ml > src/uucp_emoji_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_emoji_data.cmo src/uucp_emoji_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_emoji_data.cmx src/uucp_emoji_data.ml - + ocamlfind ocamldep -modules src/uucp__func.ml > src/uucp__func.ml.depends - + ocamlfind ocamldep -modules src/uucp_func_data.ml > src/uucp_func_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_func_data.cmo src/uucp_func_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_func_data.cmx src/uucp_func_data.ml - + ocamlfind ocamldep -modules src/uucp__gen.ml > src/uucp__gen.ml.depends - + ocamlfind ocamldep -modules src/uucp_gen_data.ml > src/uucp_gen_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_gen_data.cmo src/uucp_gen_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_gen_data.cmx src/uucp_gen_data.ml - + ocamlfind ocamldep -modules src/uucp__hangul.ml > src/uucp__hangul.ml.depends - + ocamlfind ocamldep -modules src/uucp_hangul_base.ml > src/uucp_hangul_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_hangul_base.cmo src/uucp_hangul_base.ml - + ocamlfind ocamldep -modules src/uucp_hangul_data.ml > src/uucp_hangul_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_hangul_data.cmo src/uucp_hangul_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_hangul_base.cmx src/uucp_hangul_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_hangul_data.cmx src/uucp_hangul_data.ml - + ocamlfind ocamldep -modules src/uucp__id.ml > src/uucp__id.ml.depends - + ocamlfind ocamldep -modules src/uucp_id_data.ml > src/uucp_id_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_id_data.cmo src/uucp_id_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_id_data.cmx src/uucp_id_data.ml - + ocamlfind ocamldep -modules src/uucp__name.ml > src/uucp__name.ml.depends - + ocamlfind ocamldep -modules src/uucp_cmap.ml > src/uucp_cmap.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_cmap.cmo src/uucp_cmap.ml - + ocamlfind ocamldep -modules src/uucp_name_base.ml > src/uucp_name_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_name_base.cmo src/uucp_name_base.ml - + ocamlfind ocamldep -modules src/uucp_name_data.ml > src/uucp_name_data.ml.depends - + ocamlfind ocamldep -modules src/uucp_tmap5bytes.ml > src/uucp_tmap5bytes.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmap5bytes.cmo src/uucp_tmap5bytes.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_name_data.cmo src/uucp_name_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_cmap.cmx src/uucp_cmap.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_name_base.cmx src/uucp_name_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_tmap5bytes.cmx src/uucp_tmap5bytes.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_name_data.cmx src/uucp_name_data.ml - + ocamlfind ocamldep -modules src/uucp__num.ml > src/uucp__num.ml.depends - + ocamlfind ocamldep -modules src/uucp_num_base.ml > src/uucp_num_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_num_base.cmo src/uucp_num_base.ml - + ocamlfind ocamldep -modules src/uucp_num_data.ml > src/uucp_num_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_num_data.cmo src/uucp_num_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_num_base.cmx src/uucp_num_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_num_data.cmx src/uucp_num_data.ml - + ocamlfind ocamldep -modules src/uucp__script.ml > src/uucp__script.ml.depends - + ocamlfind ocamldep -modules src/uucp_script_base.ml > src/uucp_script_base.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_script_base.cmo src/uucp_script_base.ml - + ocamlfind ocamldep -modules src/uucp_script_data.ml > src/uucp_script_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_script_data.cmo src/uucp_script_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_script_base.cmx src/uucp_script_base.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_script_data.cmx src/uucp_script_data.ml - + ocamlfind ocamldep -modules src/uucp__white.ml > src/uucp__white.ml.depends - + ocamlfind ocamldep -modules src/uucp_white_data.ml > src/uucp_white_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_white_data.cmo src/uucp_white_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_white_data.cmx src/uucp_white_data.ml - + ocamlfind ocamldep -modules src/uucp_version_data.ml > src/uucp_version_data.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_version_data.cmo src/uucp_version_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__age.cmx src/uucp__age.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__alpha.cmx src/uucp__alpha.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__block.cmx src/uucp__block.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__break.cmx src/uucp__break.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case.cmx src/uucp__case.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__cjk.cmx src/uucp__cjk.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__emoji.cmx src/uucp__emoji.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__func.cmx src/uucp__func.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__gen.cmx src/uucp__gen.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__hangul.cmx src/uucp__hangul.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__id.cmx src/uucp__id.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__name.cmx src/uucp__name.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__num.cmx src/uucp__num.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__script.cmx src/uucp__script.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__white.cmx src/uucp__white.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp_version_data.cmx src/uucp_version_data.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp.cmx src/uucp.ml - + ocamlfind ocamlopt -a -I src src/uucp_fmt.cmx src/uucp_rmap.cmx src/uucp_age_data.cmx src/uucp__age.cmx src/uucp_tmapbool.cmx src/uucp_alpha_data.cmx src/uucp__alpha.cmx src/uucp_block_base.cmx src/uucp_block_data.cmx src/uucp__block.cmx src/uucp_gc_base.cmx src/uucp_gc_data.cmx src/uucp__gc.cmx src/uucp_break_base.cmx src/uucp_tmapbyte.cmx src/uucp_break_data.cmx src/uucp__break.cmx src/uucp_tmap.cmx src/uucp_case_fold_data.cmx src/uucp__case_fold.cmx src/uucp_case_map_data.cmx src/uucp__case_map.cmx src/uucp_case_nfkc_data.cmx src/uucp__case_nfkc.cmx src/uucp_case_nfkc_simple_data.cmx src/uucp__case_nfkc_simple.cmx src/uucp_case_data.cmx src/uucp__case.cmx src/uucp_cjk_data.cmx src/uucp__cjk.cmx src/uucp_emoji_data.cmx src/uucp__emoji.cmx src/uucp_func_data.cmx src/uucp__func.cmx src/uucp_gen_data.cmx src/uucp__gen.cmx src/uucp_hangul_base.cmx src/uucp_hangul_data.cmx src/uucp__hangul.cmx src/uucp_id_data.cmx src/uucp__id.cmx src/uucp_cmap.cmx src/uucp_name_base.cmx src/uucp_tmap5bytes.cmx src/uucp_name_data.cmx src/uucp__name.cmx src/uucp_num_base.cmx src/uucp_num_data.cmx src/uucp__num.cmx src/uucp_script_base.cmx src/uucp_script_data.cmx src/uucp__script.cmx src/uucp_white_data.cmx src/uucp__white.cmx src/uucp_version_data.cmx src/uucp.cmx -o src/uucp.cmxa - + ocamlfind ocamlopt -shared -linkall -I src src/uucp.cmxa -o src/uucp.cmxs - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp.cmo src/uucp.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__age.cmo src/uucp__age.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__alpha.cmo src/uucp__alpha.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__block.cmo src/uucp__block.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__break.cmo src/uucp__break.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case.cmo src/uucp__case.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_fold.cmo src/uucp__case_fold.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_map.cmo src/uucp__case_map.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_nfkc.cmo src/uucp__case_nfkc.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__case_nfkc_simple.cmo src/uucp__case_nfkc_simple.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__cjk.cmo src/uucp__cjk.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__emoji.cmo src/uucp__emoji.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__func.cmo src/uucp__func.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__gc.cmo src/uucp__gc.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__gen.cmo src/uucp__gen.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__hangul.cmo src/uucp__hangul.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__id.cmo src/uucp__id.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__name.cmo src/uucp__name.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__num.cmo src/uucp__num.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__script.cmo src/uucp__script.ml - + ocamlfind ocamlc -c -g -bin-annot -safe-string -no-alias-deps -I src -I support -I test -o src/uucp__white.cmo src/uucp__white.ml - + ocamlfind ocamlc -a -I src src/uucp_fmt.cmo src/uucp_rmap.cmo src/uucp_age_data.cmo src/uucp__age.cmo src/uucp_tmapbool.cmo src/uucp_alpha_data.cmo src/uucp__alpha.cmo src/uucp_block_base.cmo src/uucp_block_data.cmo src/uucp__block.cmo src/uucp_gc_base.cmo src/uucp_gc_data.cmo src/uucp__gc.cmo src/uucp_break_base.cmo src/uucp_tmapbyte.cmo src/uucp_break_data.cmo src/uucp__break.cmo src/uucp_tmap.cmo src/uucp_case_fold_data.cmo src/uucp__case_fold.cmo src/uucp_case_map_data.cmo src/uucp__case_map.cmo src/uucp_case_nfkc_data.cmo src/uucp__case_nfkc.cmo src/uucp_case_nfkc_simple_data.cmo src/uucp__case_nfkc_simple.cmo src/uucp_case_data.cmo src/uucp__case.cmo src/uucp_cjk_data.cmo src/uucp__cjk.cmo src/uucp_emoji_data.cmo src/uucp__emoji.cmo src/uucp_func_data.cmo src/uucp__func.cmo src/uucp_gen_data.cmo src/uucp__gen.cmo src/uucp_hangul_base.cmo src/uucp_hangul_data.cmo src/uucp__hangul.cmo src/uucp_id_data.cmo src/uucp__id.cmo src/uucp_cmap.cmo src/uucp_name_base.cmo src/uucp_tmap5bytes.cmo src/uucp_name_data.cmo src/uucp__name.cmo src/uucp_num_base.cmo src/uucp_num_data.cmo src/uucp__num.cmo src/uucp_script_base.cmo src/uucp_script_data.cmo src/uucp__script.cmo src/uucp_white_data.cmo src/uucp__white.cmo src/uucp_version_data.cmo src/uucp.cmo -o src/uucp.cma - + ocamlfind ocamldep -package 'uunf cmdliner' -modules test/ucharinfo.ml > test/ucharinfo.ml.depends - + ocamlfind ocamlc -c -g -bin-annot -safe-string -package 'uunf cmdliner' -I test -I src -I support -o test/ucharinfo.cmo test/ucharinfo.ml - + ocamlfind ocamlopt -c -g -bin-annot -safe-string -package 'uunf cmdliner' -I test -I src -I support -o test/ucharinfo.cmx test/ucharinfo.ml - + ocamlfind ocamlopt -linkpkg -g -package 'uunf cmdliner' -I src -I test src/uucp_fmt.cmx src/uucp_rmap.cmx src/uucp_age_data.cmx src/uucp__age.cmx src/uucp_tmapbool.cmx src/uucp_alpha_data.cmx src/uucp__alpha.cmx src/uucp_block_base.cmx src/uucp_block_data.cmx src/uucp__block.cmx src/uucp_gc_base.cmx src/uucp_gc_data.cmx src/uucp__gc.cmx src/uucp_break_base.cmx src/uucp_tmapbyte.cmx src/uucp_break_data.cmx src/uucp__break.cmx src/uucp_tmap.cmx src/uucp_case_fold_data.cmx src/uucp__case_fold.cmx src/uucp_case_map_data.cmx src/uucp__case_map.cmx src/uucp_case_nfkc_data.cmx src/uucp__case_nfkc.cmx src/uucp_case_nfkc_simple_data.cmx src/uucp__case_nfkc_simple.cmx src/uucp_case_data.cmx src/uucp__case.cmx src/uucp_cjk_data.cmx src/uucp__cjk.cmx src/uucp_emoji_data.cmx src/uucp__emoji.cmx src/uucp_func_data.cmx src/uucp__func.cmx src/uucp_gen_data.cmx src/uucp__gen.cmx src/uucp_hangul_base.cmx src/uucp_hangul_data.cmx src/uucp__hangul.cmx src/uucp_id_data.cmx src/uucp__id.cmx src/uucp_cmap.cmx src/uucp_name_base.cmx src/uucp_tmap5bytes.cmx src/uucp_name_data.cmx src/uucp__name.cmx src/uucp_num_base.cmx src/uucp_num_data.cmx src/uucp__num.cmx src/uucp_script_base.cmx src/uucp_script_data.cmx src/uucp__script.cmx src/uucp_white_data.cmx src/uucp__white.cmx src/uucp_version_data.cmx src/uucp.cmx test/ucharinfo.cmx -o test/ucharinfo.native - # Parallel statistics: { count(total): 6(160), max: 21, min: 2, average(total): 10.667(1.363) } -> compiled uucp.16.0.0 -> installed uucp.16.0.0 Processing 90/93: [omd: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "omd" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/omd.2.0.0~alpha4) -> compiled omd.2.0.0~alpha4 -> installed omd.2.0.0~alpha4 Processing 92/93: [beluga: dune build] + /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "beluga" "-j" "255" "@install" (CWD=/home/opam/.opam/5.2.0+flambda2/.opam-switch/build/beluga.1.1.2) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/support/.support.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/byte/support__List1.cmo -c -impl src/support/list1.ml) - File "src/support/list1.ml", line 1, characters 33-40: - 1 | type +'a t = T of 'a * 'a list [@unboxed] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/support/.support.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/byte/support__List2.cmo -c -impl src/support/list2.ml) - File "src/support/list2.ml", line 1, characters 37-44: - 1 | type 'a t = T of 'a * 'a * 'a list [@unboxed] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/support/.support.objs/byte -I src/support/.support.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/native/support__List1.cmx -c -impl src/support/list1.ml) - File "src/support/list1.ml", line 1, characters 33-40: - 1 | type +'a t = T of 'a * 'a list [@unboxed] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/support/.support.objs/byte -I src/support/.support.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/native/support__List2.cmx -c -impl src/support/list2.ml) - File "src/support/list2.ml", line 1, characters 37-44: - 1 | type 'a t = T of 'a * 'a * 'a list [@unboxed] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/syntax/syncom/.syncom.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/support/.support.objs/byte -intf-suffix .ml -no-alias-deps -open Syncom__ -o src/syntax/syncom/.syncom.objs/byte/syncom__Error.cmo -c -impl src/syntax/syncom/error.pp.ml) - File "src/syntax/syncom/error.ml", line 519, characters 2-27: - 519 | Printexc.register_printer (fun exn -> - ^^^^^^^^^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - - File "src/syntax/syncom/error.ml", line 526, characters 2-41: - 526 | Printexc.set_uncaught_exception_handler (fun exn backtrace -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Printexc.set_uncaught_exception_handler - Use [Printexc.Safe.set_uncaught_exception_handler]. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/syntax/synint/.synint.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/syntax/syncom/.syncom.objs/byte -no-alias-deps -o src/syntax/synint/.synint.objs/byte/synint.cmo -c -impl src/syntax/synint/synint.ml) - File "src/syntax/synint/synint.ml", lines 629-632, characters 4-60: - 629 | ....function - 630 | | PatNil -> PatNil - 631 | | PatApp (loc, p, pS) -> - 632 | PatApp (loc, strip_pattern p, strip_pattern_spine pS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/support/.support.objs/byte -I src/support/.support.objs/native -intf-suffix .ml -no-alias-deps -open Syncom__ -o src/syntax/syncom/.syncom.objs/native/syncom__Error.cmx -c -impl src/syntax/syncom/error.pp.ml) - File "src/syntax/syncom/error.ml", line 519, characters 2-27: - 519 | Printexc.register_printer (fun exn -> - ^^^^^^^^^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Printexc.register_printer - Use [Printexc.Safe.register_printer]. - - File "src/syntax/syncom/error.ml", line 526, characters 2-41: - 526 | Printexc.set_uncaught_exception_handler (fun exn backtrace -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Alert unsafe_multidomain: Stdlib.Printexc.set_uncaught_exception_handler - Use [Printexc.Safe.set_uncaught_exception_handler]. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/syntax/synext/.synext.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/syntax/syncom/.syncom.objs/byte -intf-suffix .ml -no-alias-deps -open Synext__ -o src/syntax/synext/.synext.objs/byte/synext__Synext_precedence.cmo -c -impl src/syntax/synext/synext_precedence.ml) - File "src/syntax/synext/synext_precedence.ml", line 253, characters 38-45: - 253 | type precedence = Static of Int.t [@unboxed] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -intf-suffix .ml -no-alias-deps -o src/syntax/synint/.synint.objs/native/synint.cmx -c -impl src/syntax/synint/synint.ml) - File "src/syntax/synint/synint.ml", lines 629-632, characters 4-60: - 629 | ....function - 630 | | PatNil -> PatNil - 631 | | PatApp (loc, p, pS) -> - 632 | PatApp (loc, strip_pattern p, strip_pattern_spine pS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Order.cmo -c -impl src/core/order.ml) - File "src/core/order.ml", lines 26-34, characters 2-23: - 26 | ..function - 27 | | I.Arg x -> Some [x] - 28 | | I.Lex xs -> - 29 | let f = - 30 | function - 31 | | I.Arg x -> Some x - 32 | | _ -> None (* We don't support nested lexicographic orders. *) - 33 | in - 34 | List.traverse f xs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Simul _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Erase.cmo -c -impl src/core/erase.ml) - File "src/core/erase.ml", lines 6-19, characters 2-33: - 6 | ..match (tau, n) with - 7 | | (_, 0) -> 0 - 8 | | (TypArr (_, _, tau), n) -> 1 + numeric_order_arg tau (n - 1) - 9 | | (TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, tau), n) -> - 10 | (* We count [Inductive] as 1 instead of throwing an error because - ... - 16 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Explicit; _ }, tau), n) -> - 17 | 1 + numeric_order_arg tau (n - 1) - 18 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Implicit; _ }, tau), n) -> - 19 | numeric_order_arg tau (n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypPiBox (_, DeclOpt _, _), 1) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Subord.cmo -c -impl src/core/subord.ml) - File "src/core/subord.ml", lines 98-101, characters 7-43: - 98 | .......function - 99 | | Atom _ -> [tA] - 100 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> - 101 | extract_neg tA1 @ extract_pos tA2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/subord.ml", lines 103-106, characters 7-43: - 103 | .......function - 104 | | Atom _ -> [] - 105 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> - 106 | extract_pos tA1 @ extract_neg tA2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/subord.ml", lines 85-112, characters 2-47: - 85 | ..match tA with - 86 | | Atom (_, a, _) -> - 87 | Store.Cid.Typ.freeze a; - 88 | if List.exists - 89 | begin fun type_in_basis -> - ... - 109 | If we keep this, then we might not strengthen enough... -bp*) - 110 | List.fold_left (fun l tA -> relevant tA basis @ l) [] (extract_neg tA1) - 111 | @ relevant tA2 basis - 112 | | Sigma typRec -> relevantTypRec typRec basis - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/subord.ml", lines 159-161, characters 9-71: - 159 | .........match psi with - 160 | | CtxOffset _ -> Context.lookupCtxVarSchema cD psi - 161 | | CInst ({ typ = CTyp (Some cid_schema); _ }, _) -> cid_schema - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CInst ({typ=CTyp None; _ }, _) - - File "src/core/subord.ml", lines 155-187, characters 4-10: - 155 | ....match cPsi with - 156 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) - 157 | | CtxVar psi -> - 158 | let schema = - 159 | match psi with - ... - 184 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) - 185 | let thin_s_inv = Substitution.LF.invert thin_s in - 186 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) - 187 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/subord.ml", line 189, characters 8-45: - 189 | inner (match tP with Atom (_, a, _) -> [a]) cPsi - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) - - File "src/core/subord.ml", lines 215-216, characters 16-21: - 215 | ................let (_, Decl { typ = CTyp (Some s_cid); _ }) = Store.FCVar.get psi in - 216 | s_cid - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=CTyp None; _ }) - - File "src/core/subord.ml", lines 205-238, characters 4-10: - 205 | ....match Whnf.cnormDCtx (cPsi, MShift 0) with - 206 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) - 207 | | CtxVar psi -> - 208 | begin - 209 | try - ... - 235 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) - 236 | let thin_s_inv = Substitution.LF.invert thin_s in - 237 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) - 238 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/subord.ml", lines 249-251, characters 11-24: - 249 | ...........let (_, Decl { typ = CTyp _; _ }) = Store.FCVar.get psi in - 250 | p.fmt "[thin'] CtxName psi = %a FOUND" - 251 | Name.pp psi - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=ClTyp (_, _); _ }) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Context.cmo -c -impl src/core/context.ml) - File "src/core/context.ml", lines 90-104, characters 4-24: - 90 | ....function - 91 | | (DDec (_, TypDecl (x, tA')), 1) -> - 92 | TypDecl (x, TClo (tA', Shift k)) - 93 | - 94 | | (DDec (cPsi', TypDecl _), k') -> - ... - 101 | ctxDec' (cPsi', k'-1) - 102 | - 103 | | (CtxVar (CInst ({instantiation = {contents = Some (ICtx cPsi)}; _}, _)), k) -> - 104 | ctxDec' (cPsi, k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxVar - (CInst ({instantiation={contents=Some (INorm _|IHead _|ISub _)}; _ }, _)), - _) - - File "src/core/context.ml", lines 124-134, characters 4-24: - 124 | ....function - 125 | | (DDec (_, TypDecl (x, Sigma tArec)), 1) -> - 126 | TypDecl (x, Sigma (sigmaShift tArec (Shift k))) - 127 | - 128 | | (DDec (cPsi', TypDecl (_, Sigma _)), k') -> - ... - 131 | | (DDec (cPsi', TypDecl _), k') -> - 132 | ctxDec' (cPsi', k' - 1) - 133 | | (CtxVar (CInst ({ instantiation = {contents = Some (ICtx cPhi) }; _ }, _)) , k) -> - 134 | ctxDec' (cPhi, k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (DDec (cPsi', TypDeclOpt _), _) - - File "src/core/context.ml", lines 361-364, characters 2-49: - 361 | ..match (cPsi, k) with - 362 | | (DDec (_, TypDecl (x, _)), 1) -> x - 363 | | (DDec (_, TypDeclOpt x), 1) -> x - 364 | | (DDec (cPsi, _), k) -> getNameDCtx cPsi (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Null|CtxVar _), _) - - File "src/core/context.ml", lines 367-371, characters 2-27: - 367 | ..match (cD, k) with - 368 | | (Dec (_, Decl { name = u; _ }), 1) -> u - 369 | | (Dec (_, DeclOpt { name = u; _ }), 1) -> u - 370 | | (Dec (cD, _), k) -> - 371 | getNameMCtx cD (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Empty, _) - - File "src/core/context.ml", lines 374-377, characters 2-45: - 374 | ..match (cG, k) with - 375 | | (Dec (_, Comp.CTypDecl (x, _ , _)), 1) -> x - 376 | | (Dec (_, Comp.CTypDeclOpt x), 1) -> x - 377 | | (Dec (cG, _), k) -> getNameCtx cG (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Empty, _) - - File "src/core/context.ml", lines 401-403, characters 4-58: - 401 | ....function - 402 | | CtxVar ctx_var -> DDec (CtxVar ctx_var, new_typ_decl) - 403 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Null - - File "src/core/context.ml", lines 409-411, characters 4-58: - 409 | ....function - 410 | | CtxVar ctx_var -> Null - 411 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Null - - File "src/core/context.ml", lines 436-439, characters 2-28: - 436 | ..match (cD, psi_offset) with - 437 | | (Dec (_, Decl { typ = CTyp (Some cid_schema); _ }), 1) -> cid_schema - 438 | | (Dec (cD, _) , i) -> - 439 | lookupSchema cD (i - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Empty, _) - - File "src/core/context.ml", lines 446-453, characters 7-10: - 446 | .......begin match cvar with - 447 | | CtxName phi when Name.(psi = phi) -> (psi, schemaName) - 448 | | CtxName _ -> lookup cD (offset + 1) - 449 | | CtxOffset n -> - 450 | if n - offset = 1 - 451 | then (psi, schemaName) - 452 | else lookup cD (offset + 1) - 453 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CInst _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -intf-suffix .ml -no-alias-deps -open Synext__ -o src/syntax/synext/.synext.objs/native/synext__Synext_precedence.cmx -c -impl src/syntax/synext/synext_precedence.ml) - File "src/syntax/synext/synext_precedence.ml", line 253, characters 38-45: - 253 | type precedence = Static of Int.t [@unboxed] - ^^^^^^^ - Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Ctxsub.cmo -c -impl src/core/ctxsub.ml) - File "src/core/ctxsub.ml", lines 46-65, characters 2-36: - 46 | ..match sA' with - 47 | | (PiTyp ((decl, _, _), tA'), s') -> - 48 | let (tM , sAmv) = - 49 | lowerMVar - 50 | (DDec (cPsi, Substitution.LF.decSub decl s')) - ... - 62 | , Nil - 63 | , Plicity.explicit - 64 | ) , - 65 | ClTyp(MTyp (TClo sA') , cPsi)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _, _) - - File "src/core/ctxsub.ml", lines 88-158, characters 2-89: - 88 | ..function - 89 | | Null -> - 90 | (* Substitution.LF.id --changed 2010-07-26*) - 91 | (cD, ctxShift psi, 0) - 92 | - ... - 155 | - 156 | | DDec (_, TypDecl _) -> - 157 | (* For the moment, assume tA atomic. *) - 158 | Error.raise_not_implemented "[ctxToSub_mclosed] non-atomic cPsi entry not supported" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (_, TypDeclOpt _) - - File "src/core/ctxsub.ml", lines 174-216, characters 2-11: - 174 | ..function - 175 | | Null -> - 176 | (* Substitution.LF.id --changed 2010-07-26*) - 177 | ctxShift cPhi - 178 | - ... - 213 | (* dprint (fun () -> "shifted = " ^ subToString shifted);*) - 214 | let result = Dot (front, s) in - 215 | dprintf (fun p -> p.fmt "result = %a@\n" pp_sub result); - 216 | result - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi', TypDeclOpt _) - - File "src/core/ctxsub.ml", lines 250-255, characters 2-59: - 250 | ..function - 251 | | Empty -> MShift (Context.length cD0) - 252 | | Dec (cD', Decl { name = n; typ = mtyp; plicity; inductivity }) -> - 253 | let t = mctxToMMSub cD0 cD' in - 254 | let mtyp' = Whnf.cnormMTyp (mtyp, t) in - 255 | MDot (mdeclToMMVar cD0 n mtyp' plicity inductivity, t) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt _) - - File "src/core/ctxsub.ml", lines 261-263, characters 2-35: - 261 | ..function - 262 | | t when n <= 0 -> t - 263 | | MDot (_, t') -> drop (n - 1) t' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MShift _ - (However, some guarded clause may match this value.) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Substitution.cmo -c -impl src/core/substitution.ml) - File "src/core/substitution.ml", lines 105-124, characters 4-44: - 105 | ....match (n, s) with - 106 | | (_, Undefs) -> Undef - 107 | | (1, Dot (ft, _s)) -> ft - 108 | | (n, Dot (_ft, s)) -> bvarSub (n - 1) s - 109 | | (n, Shift k) -> Head (BVar (n + k)) - ... - 121 | Free BVar (n + k) ... -bp *) - 122 | Head (HClo (n + k, s, sigma)) - 123 | | (n, MSVar (k, ((s, t), sigma))) -> - 124 | Head (HMClo (n + k, ((s, t), sigma))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (EmptySub|FSVar (_, _))) - - File "src/core/substitution.ml", lines 156-159, characters 12-73: - 156 | ............function - 157 | | (Last u, 1) -> u - 158 | | (Cons (u, _), 1) -> u - 159 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last u, 0) - - File "src/core/substitution.ml", lines 166-169, characters 12-73: - 166 | ............function - 167 | | (Last u, 1) -> u - 168 | | (Cons (u, _), 1) -> u - 169 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last u, 0) - - File "src/core/substitution.ml", lines 147-194, characters 7-10: - 147 | .......begin match bvarSub n s with - 148 | | Head (BVar x) -> - 149 | Head (Proj (BVar x, k)) - 150 | - 151 | | Head (PVar _ as h) -> - ... - 191 | | Head (AnnH _ ) -> failwith "Found head that is AnnH" - 192 | | Head (MMVar _ ) -> failwith "Found head that is MMVar" - 193 | | Head _ -> failwith "Found head that is not a BVar or PVar" - 194 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/substitution.ml", lines 203-206, characters 12-73: - 203 | ............function - 204 | | (Last u, 1) -> (u, s) - 205 | | (Cons (u, _), 1) -> (u, s) - 206 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last u, 0) - - File "src/core/substitution.ml", lines 197-210, characters 7-10: - 197 | .......begin match frontSub (Head h) s with - 198 | | Head h' -> - 199 | Head (Proj (h', k)) - 200 | - 201 | | Obj (Tuple (_, tuple)) -> - ... - 207 | in - 208 | (* Obj (Clo (nth s (tuple, k))) *) - 209 | Obj (Pair.fst (nth s (tuple, k))) - 210 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Obj (Lam (_, _, _)|Root (_, _, _, _)|LFHole (_, _, _)|Clo _) - - File "src/core/substitution.ml", lines 213-214, characters 7-26: - 213 | .......let Head h' = frontSub (Head h) s in - 214 | Head (AnnH (h', a)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undef|Obj _) - - File "src/core/substitution.ml", lines 138-221, characters 4-35: - 138 | ....match ft with - 139 | | Head (HClo (n, s', sigma)) -> Head (HClo (n, s', comp sigma s)) - 140 | | Head (HMClo (n, ((s', theta), sigma))) -> Head (HMClo (n, ((s', theta), comp sigma s))) - 141 | | Head (BVar n) -> bvarSub n s - 142 | | Head (FVar _) -> ft - ... - 218 | | Obj u -> Obj (Clo (u, s)) - 219 | | Undef -> Undef - 220 | | Head (MMVar (n, s')) -> Head (MMVar (n, comp s' s)) - 221 | | Head (FPVar (_n, _s' )) -> ft - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head (MPVar _|FMVar _) - - File "src/core/substitution.ml", line 263, characters 13-30: - 263 | let decSub (TypDecl (x, tA)) s = TypDecl (x, TClo (tA, s)) - ^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/substitution.ml", lines 292-300, characters 6-33: - 292 | ......match s with - 293 | | EmptySub -> None - 294 | | Undefs -> None - 295 | | Shift _ -> None - 296 | | Dot (Undef, s') -> lookup (n + 1) s' p - 297 | | Dot (Head (BVar k), s') -> - 298 | if k = p - 299 | then Some (Head (BVar n)) - 300 | else lookup (n + 1) s' p - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dot - (Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), - _) - - File "src/core/substitution.ml", lines 314-324, characters 6-37: - 314 | ......match s with - 315 | | EmptySub -> - 316 | invert'' maxoffset Undefs - 317 | | Undefs -> - 318 | invert'' maxoffset Undefs - ... - 321 | | Dot (Head (BVar k), s') -> - 322 | invert' (n + 1) s' (max k maxoffset) - 323 | | Dot (_, s') -> (* Is this really necessary? -ac *) - 324 | invert' (n + 1) s' maxoffset - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/substitution.ml", lines 335-350, characters 4-65: - 335 | ....match (s, cPsi) with - 336 | | (Shift _ (* 0 *), Null) -> - 337 | Null - 338 | | (Shift _, CtxVar psi) -> - 339 | CtxVar psi - ... - 347 | | (Dot (Undef, t), DDec (cPsi, _)) -> - 348 | strengthen t cPsi - 349 | | (Shift n, cPsi) -> - 350 | strengthen (Dot (Head (BVar (n + 1)), Shift (n + 1))) cPsi - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dot (Head (BVar _k), t), (Null|CtxVar _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Store.cmo -c -impl src/core/store.ml) - File "src/core/store.ml", lines 212-217, characters 6-45: - 212 | ......function - 213 | | Int.LF.Atom(_, b, _) -> - 214 | List.iter (fun a -> addSubord a b) acc ; [b] - 215 | - 216 | | Int.LF.PiTyp((Int.LF.TypDecl(_, tA1), _, _), tA2) -> - 217 | inspect (acc @ (inspect [] tA1)) tA2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/store.ml", lines 222-226, characters 6-56: - 222 | ......function - 223 | | Int.LF.Typ -> - 224 | List.iter (fun a -> addSubord a cid_tp) acc - 225 | | Int.LF.PiKind((Int.LF.TypDecl(_, tA1), _, _), tK2) -> - 226 | inspectKind cid_tp (acc @ (inspect [] tA1)) tK2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__ConvSigma.cmo -c -impl src/core/convSigma.ml) - File "src/core/convSigma.ml", lines 20-22, characters 2-54: - 20 | ..match (conv_list, k) with - 21 | | (d :: conv_list', 1) -> d - 22 | | (d :: conv_list', _) -> d + map conv_list' (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ([], _) - - File "src/core/convSigma.ml", lines 44-52, characters 2-21: - 44 | ..match tM with - 45 | | LF.Lam (loc, x, tN) -> - 46 | let tN' = strans_norm cD (LF.DDec (cPsi, LF.TypDeclOpt x)) (tN, S.LF.dot1 s) (1 :: conv_list) in - 47 | LF.Lam (loc, x, tN') - 48 | | LF.Root (loc, h, tS, plicity) -> - 49 | let h' = strans_head loc cD cPsi h conv_list in - 50 | let tS' = strans_spine cD cPsi (tS, s) conv_list in - 51 | LF.Root (loc, h', tS', plicity) - 52 | | LF.LFHole _ -> tM - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _|Tuple (_, _)) - - File "src/core/convSigma.ml", lines 55-101, characters 2-8: - 55 | ..match h with - 56 | | LF.BVar x -> LF.BVar (map conv_list x) - 57 | - 58 | | LF.MVar (LF.Offset u, sigma) -> - 59 | LF.MVar (LF.Offset u, strans_sub cD cPsi sigma conv_list) - ... - 98 | LF.BVar x' - 99 | with - 100 | | _ -> LF.Proj (LF.BVar x, j) - 101 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Proj - ((Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - HClo (_, _, _)|HMClo (_, _)), - _) - - File "src/core/convSigma.ml", lines 112-118, characters 2-26: - 112 | ..match mf with - 113 | | LF.ClObj (phat, LF.MObj tM) -> - 114 | LF.ClObj (phat, LF.MObj (strans_norm cD cPsi (tM, S.LF.id) conv_list )) - 115 | | LF.ClObj (phat, LF.PObj h) -> - 116 | LF.ClObj (phat, LF.PObj (strans_head Location.ghost cD cPsi h conv_list)) - 117 | | LF.MV u -> LF.MV u - 118 | | LF.MUndef -> LF.MUndef - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/convSigma.ml", lines 121-123, characters 2-55: - 121 | ..function - 122 | | (0, xs) -> n - 123 | | (k, x :: xs) -> shift_conv_list (n + x) (k - 1, xs) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, []) - - File "src/core/convSigma.ml", lines 163-170, characters 2-59: - 163 | ..match tA with - 164 | | LF.Atom (loc, a, tS ) -> - 165 | LF.Atom (loc, a, strans_spine cD cPsi (tS, s) conv_list ) - 166 | - 167 | | LF.PiTyp ((LF.TypDecl (x, tA), depend, plicity), tB) -> - 168 | let tA' = strans_typ cD cPsi (tA, s) conv_list in - 169 | let tB' = strans_typ cD cPsi (tB, S.LF.dot1 s) (1 :: conv_list) in - 170 | LF.PiTyp ((LF.TypDecl (x, tA'), depend, plicity), tB') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/convSigma.ml", lines 384-432, characters 2-24: - 384 | ..match Whnf.whnfTyp sA with - 385 | | LF.Sigma tRec as tA, s -> - 386 | (* FIXME: this doesn't do any strengthening !! -je *) - 387 | let tH = - 388 | mk_head ((new_mxvar n (cD, cPsi, LF.tclo tA s) plicity Inductivity.not_inductive, Whnf.m_id), s) - ... - 429 | let tN = - 430 | etaExpandStrGeneric new_mxvar mk_head loc cD cPsi' (tB, S.LF.dot1 s) plicity n (x :: names) - 431 | in - 432 | LF.Lam (loc, x, tN) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Prettyint.cmo -c -impl src/core/prettyint.ml) - File "src/core/prettyint.ml", lines 237-294, characters 4-39: - 237 | ....function - 238 | | LF.Atom (_, a, LF.Nil) -> - 239 | fprintf ppf "%s" - 240 | (R.render_cid_typ a) - 241 | - ... - 291 | | LF.TClo (typ, s) -> - 292 | fprintf ppf "TClo(%a,@ %a)" - 293 | (fmt_ppr_lf_typ cD cPsi lvl) typ - 294 | (fmt_ppr_lf_sub cD cPsi lvl) s - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/prettyint.ml", lines 434-545, characters 6-51: - 434 | ......function - 435 | | LF.HClo (h, s, sigma) -> - 436 | fprintf ppf "%s[%a[%a]]" - 437 | (R.render_bvar cPsi h) - 438 | (fmt_ppr_lf_offset cD) s - ... - 542 | (r_paren_if (paren s)) - 543 | - 544 | | LF.Proj (head, k) -> - 545 | fmt_head_with ("." ^ string_of_int k) head - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - AnnH (_, _) - - File "src/core/prettyint.ml", lines 769-771, characters 7-52: - 769 | .......match LF.(v.typ) with - 770 | | LF.ClTyp (_, cPsi) -> - 771 | fmt_ppr_lf_iterm LF.(v.cD) cPsi lvl ppf it - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/prettyint.ml", lines 785-794, characters 7-10: - 785 | .......begin match !g with - 786 | | None -> - 787 | fprintf ppf "?%a[%a]" - 788 | Name.pp LF.(v.name) - 789 | (fmt_ppr_lf_msub cD 0) theta - 790 | - 791 | | Some (LF.ICtx cPsi) -> - 792 | fprintf ppf "%a" - 793 | (fmt_ppr_lf_dctx LF.(v.cD) 0) (Whnf.cnormDCtx (cPsi, theta)) - 794 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/prettyint.ml", lines 878-890, characters 4-38: - 878 | ....function - 879 | | LF.Null -> () - 880 | - 881 | | LF.DDec (LF.Null, LF.TypDecl (x, tA)) -> - 882 | fprintf ppf "%a : %a" (* formerly "., %s : %a" -jd 2010-06-03 *) - ... - 887 | fprintf ppf "%a, %a : %a" - 888 | (ppr_typ_decl_dctx cD) cPsi - 889 | Name.pp x - 890 | (fmt_ppr_lf_typ cD cPsi 0) tA - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/prettyint.ml", lines 974-1006, characters 4-26: - 974 | ....function - 975 | | LF.Typ -> - 976 | fprintf ppf "type" - 977 | - 978 | | LF.PiKind ((LF.TypDecl (x, a), (Depend.Yes | Depend.Maybe), Plicity.Explicit), k) -> - ... - 1003 | (l_paren_if cond) - 1004 | (fmt_ppr_lf_typ LF.Empty cPsi 1) a - 1005 | (fmt_ppr_lf_kind (LF.DDec(cPsi, LF.TypDeclOpt x)) 0) k - 1006 | (r_paren_if cond) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - - File "src/core/prettyint.ml", lines 1097-1109, characters 4-40: - 1097 | ....function - 1098 | | LF.Queued id -> - 1099 | fprintf ppf "@[QUEUED %d@]" id - 1100 | | LF.(Eqn (id, cD, cPsi, INorm tM1, INorm tM2)) -> - 1101 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" - ... - 1106 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" - 1107 | id - 1108 | (fmt_ppr_lf_head cD cPsi l0) h1 - 1109 | (fmt_ppr_lf_head cD cPsi l0) h2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) - - File "src/core/prettyint.ml", lines 1147-1228, characters 4-39: - 1147 | ....function - 1148 | | Comp.TypBase (_, c, mS)-> - 1149 | let cond = lvl > 10 in - 1150 | fprintf ppf "%s@[<2>%s@[%a@]@]%s" - 1151 | (l_paren_if cond) - ... - 1225 | fprintf ppf "@[%a@]*" - 1226 | (fmt_ppr_cmp_typ cD 10) tau - 1227 | else - 1228 | fmt_ppr_cmp_typ cD lvl ppf tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDef (_, _, _) - - File "src/core/prettyint.ml", lines 1236-1241, characters 4-48: - 1236 | ....function - 1237 | | Comp.PatNil -> fprintf ppf "" - 1238 | | Comp.PatApp (_, pat, pat_spine) -> - 1239 | fprintf ppf "@[%a@]@ @[%a@]" - 1240 | (fmt_ppr_cmp_pattern cD cG (lvl + 1)) pat - 1241 | (fmt_ppr_pat_spine cD cG lvl) pat_spine - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - - File "src/core/prettyint.ml", lines 1245-1248, characters 6-65: - 1245 | ......match (ms, n) with - 1246 | | (_, 0) -> ms - 1247 | | (Comp.PatNil, _) -> ms - 1248 | | (Comp.PatApp (_, _, rest), n) -> dropSpineLeft rest (n-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatObs (_, _, _, _), 1) - - File "src/core/prettyint.ml", lines 1507-1550, characters 4-26: - 1507 | ....function - 1508 | | Comp.FunValue _ -> fprintf ppf " fn " - 1509 | | Comp.ThmValue _ -> fprintf ppf " rec " - 1510 | | Comp.MLamValue _ -> fprintf ppf " mlam " - 1511 | | Comp.CtxValue _ -> fprintf ppf " mlam " - ... - 1547 | fprintf ppf "%s%s%a%s" - 1548 | (l_paren_if cond) - 1549 | (R.render_cid_comp_const c) print_spine pat_spine - 1550 | (r_paren_if cond) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - FnValue (_, _, _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Whnf.cmo -c -impl src/core/whnf.ml) - File "src/core/whnf.ml", lines 36-39, characters 2-73: - 36 | ..match cPsi with - 37 | | Null -> tA - 38 | | DDec (cPsi', decl) -> - 39 | raiseType cPsi' (PiTyp ((decl, Depend.maybe, Plicity.implicit), tA)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar _ - - File "src/core/whnf.ml", lines 133-148, characters 2-64: - 133 | ..match sA' with - 134 | | (PiTyp ((decl, _, _), tA'), s') -> - 135 | let (u', tM) = - 136 | lowerMVar' - 137 | (DDec (cPsi, LF.decSub decl s')) - ... - 145 | - 146 | | (Atom (loc, a, tS), s') -> - 147 | let u' = newMVar None (cPsi, Atom (loc, a, SClo (tS, s'))) plicity inductivity in - 148 | (u', Root (Location.ghost, MVar (u', LF.id), Nil, plicity)).................... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _, _) - - File "src/core/whnf.ml", lines 152-162, characters 2-25: - 152 | ..match (u, sA) with - 153 | | ( Inst { instantiation; typ = ClTyp (_, cPsi); plicity; inductivity; _ } - 154 | , (PiTyp _, _) - 155 | ) -> - 156 | let (u', tM) = lowerMVar' cPsi sA plicity inductivity in - ... - 159 | - 160 | | (_, (TClo (tA, s), s')) -> lowerMVar1 u (tA, LF.comp s s') - 161 | - 162 | | (_, (Atom _, _)) -> u - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Inst {typ=ClTyp (_, _); _ }, (Sigma _, _)) - - File "src/core/whnf.ml", lines 319-329, characters 4-31: - 319 | ....match s with - 320 | | MShift _ -> None - 321 | | MDot (MUndef, t') -> lookup (n + 1) t' p - 322 | - 323 | | MDot (MV k, t') - ... - 326 | | MDot (ClObj (_, PObj (PVar (k, Shift 0))), t') -> - 327 | if k = p - 328 | then Some n - 329 | else lookup (n + 1) t' p - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MDot (CObj (CtxVar (CtxName _|CInst _)), _) - - File "src/core/whnf.ml", lines 385-387, characters 7-59: - 385 | .......match normHead (h, sigma) with - 386 | | Head h' -> Root (loc, h', normSpine (tS, sigma), plicity) - 387 | | Obj tM -> reduce (tM, LF.id) (normSpine (tS, sigma)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 404-407, characters 5-8: - 404 | .....begin match normMMVar mmt with - 405 | | ResMM mmt' -> Head (HMClo (k, (mmt', normSub' (s, sigma)))) - 406 | | Result (ISub r) -> normFt' (normFt' (LF.bvarSub k r, s), sigma) - 407 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 409-413, characters 5-8: - 409 | .....begin match normMMVar mmt with - 410 | (* The order in which we normalize mm, n, s, and sigma seems to matter..*) - 411 | | ResMM mmt' -> Head (MMVar (mmt', normSub' (s, sigma))) - 412 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) - 413 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 415-419, characters 5-8: - 415 | .....begin match normMMVar mmt with - 416 | | ResMM mmt' -> Head (MPVar (mmt', normSub' (s, sigma))) - 417 | | Result (IHead h) -> normFt' (normHead (h, s), sigma) - 418 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) - 419 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (ISub _|ICtx _) - - File "src/core/whnf.ml", lines 422-425, characters 5-8: - 422 | .....begin match normMMVar (mm, MShift 0) with - 423 | | ResMM (mm', _) -> Head (MVar (Inst mm', normSub' (s, sigma))) - 424 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) - 425 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 449-451, characters 2-32: - 449 | ..match ft with - 450 | | Head h -> normHead (h, s) - 451 | | Obj tM -> Obj (norm (tM, s)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 454-457, characters 2-37: - 454 | ..match tM with - 455 | | INorm n -> INorm (cnorm (n, mt)) - 456 | | IHead h -> IHead (cnormHead (h, mt)) - 457 | | ISub s -> ISub (cnormSub (s, mt)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ICtx _ - - File "src/core/whnf.ml", lines 463-466, characters 5-8: - 463 | .....begin match normHead (h, s) with - 464 | | Obj tM -> MObj tM - 465 | | Head h' -> PObj h' - 466 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 470-473, characters 2-64: - 470 | ..match normFt' (ft, LF.id) with - 471 | | Head h -> Head (Proj (h, i)) - 472 | | Obj (Tuple (_, tM)) -> Obj (reduceTuple (tM, i)) - 473 | | Obj _ -> Error.raise_violation "[reduceTupleFt] not a tuple" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 476-479, characters 2-50: - 476 | ..function - 477 | | (Last tM, 1) -> tM - 478 | | (Cons (tM, _), 1) -> tM - 479 | | (Cons (_, rest), k) -> reduceTuple (rest, k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last tM, 0) - - File "src/core/whnf.ml", lines 507-521, characters 2-17: - 507 | ..function - 508 | | (LFHole (l, _, _), _) -> - 509 | raise (InvalidLFHole l) - 510 | - 511 | | (Root (loc, h, sp, plicity), spine) -> - ... - 518 | Lam (loc, n, tM') - 519 | - 520 | | (Clo sM, tS) -> - 521 | reduce sM tS - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _), SClo _) - - File "src/core/whnf.ml", lines 524-526, characters 2-54: - 524 | ..function - 525 | | (Nil, s) -> s - 526 | | (App (tN, tS), s) -> App (tN, appendSpine (tS, s)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (SClo _, _) - - File "src/core/whnf.ml", lines 537-543, characters 5-8: - 537 | .....begin match mmvar.instantiation.contents with - 538 | | Some (ISub s) -> - 539 | let s0 = cnormSub (LF.comp (normSub s) (normSub s'), mt) in - 540 | LF.comp (Shift n) s0 - 541 | | None -> - 542 | MSVar (n, ((mmvar, mt), normSub s')) - 543 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 562-573, characters 2-37: - 562 | ..match tA with - 563 | | Atom (loc, a, tS) -> - 564 | Atom (loc, a, normSpine (tS, sigma)) - 565 | - 566 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> - ... - 570 | normTyp (tA, LF.comp s sigma) - 571 | - 572 | | Sigma recA -> - 573 | Sigma (normTypRec (recA, sigma)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/whnf.ml", lines 620-629, characters 5-8: - 620 | .....begin match !u with - 621 | | None -> - 622 | (Some (CInst (mmvar, mcomp theta t)), k) - 623 | | Some (ICtx cPsi) -> - 624 | (* | (Some (CInst ((_, { contents = Some (ICtx cPsi) }, _, _, _, _), theta)), k) -> *) - 625 | begin match Context.dctxToHat (cnormDCtx (cPsi, mcomp theta t)) with - 626 | | (None, i) -> (None, k + i) (* cnorm_psihat (None, k + i) t *) - 627 | | (Some cvar', i) -> (Some cvar', k + i) (* cnorm_psihat (Some cvar', k + i) t *) - 628 | end - 629 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 631-641, characters 5-8: - 631 | .....begin match LF.applyMSub offset t with - 632 | | CObj cPsi -> - 633 | begin match Context.dctxToHat cPsi with - 634 | | (None, i) -> (None, k + i) - 635 | | (Some cvar', i) -> (Some cvar', k + i) - ... - 638 | | ClObj _ -> - 639 | Error.raise_violation - 640 | (Format.asprintf "[cnorm_psihat] ClObj impossible; offset %d" offset) - 641 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MUndef - - File "src/core/whnf.ml", lines 656-659, characters 5-8: - 656 | .....begin match LF.applyMSub k t with - 657 | | MV k' -> Head (MVar (Offset k', s')) - 658 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) - 659 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, (PObj _|SObj _)) - - File "src/core/whnf.ml", lines 662-666, characters 5-8: - 662 | .....begin match LF.applyMSub k t with - 663 | | MV k' -> Head (PVar (k', s')) - 664 | | ClObj (_, PObj h) -> normHead (h, s') - 665 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) - 666 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/whnf.ml", lines 669-672, characters 5-8: - 669 | .....begin match LF.applyMSub sv t with - 670 | | MV sv' -> Head (HClo (k, sv', s')) - 671 | | ClObj (_, SObj r) -> normFt' (LF.bvarSub k r, s') - 672 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, (MObj _|PObj _)) - - File "src/core/whnf.ml", lines 674-677, characters 5-8: - 674 | .....begin match normMMVar mmt with - 675 | | ResMM (mm', mt) -> Head (MMVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) - 676 | | Result (INorm n) -> Obj (cnorm (norm (n, s), t)) - 677 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 679-684, characters 5-8: - 679 | .....begin match normMMVar mmt with - 680 | | ResMM (mm', mt) -> Head (MPVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) - 681 | | Result (IHead h) -> cnormFt' (normHead (h, s), t) - 682 | | Result (INorm n) -> - 683 | Obj (cnorm (norm (n, s), t)) - 684 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (ISub _|ICtx _) - - File "src/core/whnf.ml", lines 686-689, characters 5-8: - 686 | .....begin match normMMVar mmt with - 687 | | ResMM (mm', mt) -> Head (HMClo (k, ((mm', cnormMSub' (mt, t)), cnormSub (s, t)))) - 688 | | Result (ISub r) -> cnormFt' (normFt' (LF.bvarSub k r, s), t) - 689 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 691-694, characters 5-8: - 691 | .....begin match normMMVar (mm, MShift 0) with - 692 | | ResMM (mm', _) -> Head (MVar (Inst mm', cnormSub (s, t))) - 693 | | Result (INorm n) -> Obj (norm (n, s)) - 694 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 698-700, characters 2-38: - 698 | ..function - 699 | | (Head h, t) -> cnormHead' (h, t) - 700 | | (Obj tM, t) -> Obj (cnorm (tM, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undef, _) - - File "src/core/whnf.ml", lines 713-721, characters 5-8: - 713 | .....begin match cnormHead' (head, t) with - 714 | | Head h' -> Root (loc, h', cnormSpine (tS, t), plicity) - 715 | | Obj tM -> - 716 | (* in this ends up evaluating to a Root, we want to keep the - 717 | plicity that we had here *) - 718 | map_plicity - 719 | (fun _ -> plicity) - 720 | (reduce (tM, LF.id) (cnormSpine (tS, t))) - 721 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 728-729, characters 2-17: - 728 | ..match cnormHead' (h, t) with - 729 | | Head h' -> h' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undef|Obj _) - - File "src/core/whnf.ml", lines 752-758, characters 5-8: - 752 | .....begin match LF.applyMSub offset t with - 753 | | MV offset' -> SVar (offset', n, cnormSub (s', t)) - 754 | | ClObj (_, SObj r) -> - 755 | LF.comp (LF.comp (Shift n) r) (cnormSub (s', t)) - 756 | | ClObj _ -> - 757 | Error.raise_violation "[cnormSub] t @ offset must give an MV or ClObj SObj" - 758 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|CObj _) - - File "src/core/whnf.ml", lines 764-775, characters 5-56: - 764 | .....match mmvar.instantiation.contents with - 765 | | Some (ISub s) -> - 766 | dprintf - 767 | begin fun p -> - 768 | p.fmt "[cnormSub] @[<v>MSVar - MSInst for @[%a@]@]" - ... - 772 | let s0' = LF.comp (Shift n) s0 in - 773 | cnormSub (s0', t) - 774 | | None -> - 775 | MSVar (n, ((mmvar, cnormMSub (mcomp mt t)), s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 793-803, characters 2-34: - 793 | ..match tA with - 794 | | Atom (loc, a, tS) -> - 795 | Atom (loc, a, cnormSpine (tS, t)) - 796 | - 797 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> - ... - 800 | | TClo (tA, s) -> normTyp (cnormTyp (tA, t), cnormSub (s, t)) - 801 | - 802 | | Sigma recA -> - 803 | Sigma (cnormTypRec (recA, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/whnf.ml", lines 832-837, characters 5-8: - 832 | .....begin match !u with - 833 | | None -> - 834 | CtxVar (CInst (mmvar, mcomp theta t)) - 835 | | Some (ICtx cPhi) -> - 836 | cnormDCtx (cPhi, mcomp theta t) - 837 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 840-843, characters 5-8: - 840 | .....begin match LF.applyMSub psi t with - 841 | | CObj cPsi' -> normDCtx cPsi' - 842 | | MV k -> CtxVar (CtxOffset k) - 843 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|ClObj (_, _)) - - File "src/core/whnf.ml", lines 886-889, characters 5-8: - 886 | .....begin match mmvar.instantiation.contents with - 887 | | None -> cPsi - 888 | | Some (ICtx cPhi) -> normDCtx (cnormDCtx (cPhi, theta)) - 889 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 960-973, characters 8-11: - 960 | ........begin match h' with - 961 | | BVar i -> - 962 | begin match LF.bvarSub i (LF.comp r sigma) with - 963 | | Obj tM -> whnfRedex ((tM, LF.id), (tS, sigma)) - 964 | | Head (BVar k) -> (Root (loc, BVar k, SClo (tS, sigma), plicity), LF.id) - ... - 970 | let h' = PVar (p, LF.comp (LF.comp s r) sigma) in - 971 | whnf (Root (loc, h', SClo (tS, sigma), plicity), LF.id) - 972 | | MPVar ((q, t'), r') -> whnf (Root (loc, MPVar ((q, t'), LF.comp r' r), SClo (tS, sigma), plicity), LF.id) - 973 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| - HClo (_, _, _)|HMClo (_, _)) - - File "src/core/whnf.ml", lines 956-979, characters 5-8: - 956 | .....begin match u with - 957 | (* MPVar instantiation must be a head *) - 958 | | Some (IHead h) -> - 959 | let h' = cnormHead (h, t) in - 960 | begin match h' with - ... - 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in - 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in - 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) - 979 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 954-979, characters 5-8: - 954 | .....let ClTyp (PTyp tA, cPsi) = mmvar.typ in - 955 | let u = mmvar.instantiation.contents in - 956 | begin match u with - 957 | (* MPVar instantiation must be a head *) - 958 | | Some (IHead h) -> - ... - 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in - 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in - 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) - 979 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 995-1011, characters 8-11: - 995 | ........begin match whnfTyp (tA, LF.id) with - 996 | | (Atom (loc', a, tS'), _ (* id *)) -> - 997 | (* meta-variable is of atomic type; tS = Nil *) - 998 | let u' = { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in - 999 | (Root (loc, MMVar ((u', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) - ... - 1008 | (* let _ = lowerMMVar cD u in - 1009 | whnf (tM, sigma) *) - 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" - 1011 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Sigma _|TClo _), _) - - File "src/core/whnf.ml", lines 985-1012, characters 5-8: - 985 | .....begin match u with - 986 | (* MMVar instantiation must be normal *) - 987 | | Some (INorm tM) -> - 988 | (* constraints associated with u must be in solved form *) - 989 | let tM' = cnorm (tM, t) in - ... - 1009 | whnf (tM, sigma) *) - 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" - 1011 | end - 1012 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 983-1012, characters 5-8: - 983 | .....let ClTyp (MTyp tA, cPsi) = mmvar.typ in - 984 | let u = mmvar.instantiation.contents in - 985 | begin match u with - 986 | (* MMVar instantiation must be normal *) - 987 | | Some (INorm tM) -> - ... - 1009 | whnf (tM, sigma) *) - 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" - 1011 | end - 1012 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 1041-1053, characters 8-11: - 1041 | ........begin match whnfTyp (tA, LF.id) with - 1042 | | (Atom (loc', a, tS'), _ (* id *)) -> - 1043 | (* meta-variable is of atomic type; tS = Nil *) - 1044 | let u' = Inst { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in - 1045 | (Root (loc, MVar (u', LF.comp r' sigma), SClo (tS, sigma), plicity), LF.id) - ... - 1050 | *) - 1051 | ignore (lowerMVar cvar); - 1052 | whnf (tM, sigma) - 1053 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Sigma _|TClo _), _) - - File "src/core/whnf.ml", lines 1036-1053, characters 8-11: - 1036 | ........let ClTyp (MTyp tA, cPsi) = mmvar.typ in - 1037 | (* note: we could split this case based on tA; - 1038 | * this would avoid possibly building closures with id - 1039 | *) - 1040 | let r' = normSub r in - ... - 1050 | *) - 1051 | ignore (lowerMVar cvar); - 1052 | whnf (tM, sigma) - 1053 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 1023-1054, characters 5-8: - 1023 | .....begin match u with - 1024 | | Some (INorm tM) -> - 1025 | (* constraints associated with u must be in solved form *) - 1026 | let r' = normSub r in - 1027 | let tM' = - ... - 1051 | ignore (lowerMVar cvar); - 1052 | whnf (tM, sigma) - 1053 | end - 1054 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 1073-1082, characters 5-8: - 1073 | .....begin match LF.bvarSub i sigma with - 1074 | | Head (BVar j) -> - 1075 | ( Root (loc, Proj (BVar j, k), SClo (tS, sigma), plicity) - 1076 | , LF.id - 1077 | ) - 1078 | | Head (PVar (q, s)) -> - 1079 | ( Root (loc, Proj (PVar (q, s), k), SClo (tS, sigma), plicity) - 1080 | , LF.id - 1081 | ) - 1082 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/whnf.ml", lines 1098-1109, characters 11-14: - 1098 | ...........begin match LF.bvarSub i (LF.comp r sigma) with - 1099 | | Head (BVar x) -> - 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) - 1101 | , LF.id - 1102 | ) - ... - 1106 | ) - 1107 | | Undef -> - 1108 | Error.raise_violation ("[whnf] Undef looked up at " ^ string_of_int i) - 1109 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Obj _ - - File "src/core/whnf.ml", lines 1096-1118, characters 8-11: - 1096 | ........begin match cnormHead (h, t) with - 1097 | | BVar i -> - 1098 | begin match LF.bvarSub i (LF.comp r sigma) with - 1099 | | Head (BVar x) -> - 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) - ... - 1115 | | MPVar ((q, t'), r') -> - 1116 | let h' = Proj (MPVar ((q, t'), LF.comp (LF.comp r' r) sigma), k) in - 1117 | (Root (loc, h', SClo (tS, sigma), plicity), LF.id) - 1118 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| - HClo (_, _, _)|HMClo (_, _)) - - File "src/core/whnf.ml", lines 1120-1127, characters 8-9: - 1120 | ........let ClTyp (PTyp tA, cPsi) = mmvar.typ in - 1121 | (* constraints associated with q must be in solved form *) - 1122 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in - 1123 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in - 1124 | let h' = Proj (MPVar ((p', t), LF.comp r sigma), k) in - 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) - 1126 | , LF.id - 1127 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 1093-1128, characters 5-8: - 1093 | .....begin match mmvar.instantiation.contents with - 1094 | | Some (IHead h) -> - 1095 | (* constraints associated with q must be in solved form *) - 1096 | begin match cnormHead (h, t) with - 1097 | | BVar i -> - ... - 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) - 1126 | , LF.id - 1127 | ) - 1128 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 1143-1157, characters 2-39: - 1143 | ..function - 1144 | | ((LFHole (l, id, name), s1), _) -> raise (InvalidLFHole l) - 1145 | | ((Root _ as root, s1), (Nil, _)) -> whnf (root, s1) - 1146 | - 1147 | | ((Lam (_, _, tM), s1), (App (tN, tS), s2)) -> - ... - 1154 | whnfRedex (sM, (tS, LF.comp s2' s2)) - 1155 | - 1156 | | ((Clo (tM, s), s1), sS) -> - 1157 | whnfRedex ((tM, LF.comp s s1), sS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Root (_, _, _, _), _), (App (_, _), _)) - - File "src/core/whnf.ml", lines 1180-1191, characters 2-15: - 1180 | ..function - 1181 | | [] -> true - 1182 | | ({ contents = Queued _ } :: cnstrs) -> - 1183 | constraints_solved cnstrs - 1184 | | ({ contents = Eqn (_, _, _, INorm tM, INorm tN) } :: cnstrs) -> - ... - 1188 | | ({ contents = Eqn (_, _, _, IHead h1, IHead h2) } :: cnstrs) -> - 1189 | if convHead (h1, LF.id) (h2, LF.id) - 1190 | then constraints_solved cnstrs - 1191 | else false - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - {contents=Eqn (_, _, _, INorm tM, (IHead _|ISub _|ICtx _))}::_ - - File "src/core/whnf.ml", lines 1283-1288, characters 2-71: - 1283 | ..match (spine1, spine2) with - 1284 | | ((Nil, _), (Nil, _)) -> true - 1285 | | ((App (tM1, spine1), s1), (App (tM2, spine2), s2)) -> - 1286 | conv (tM1, s1) (tM2, s2) && convSpine (spine1, s1) (spine2, s2) - 1287 | | (spine1, (SClo (tS, s), s')) -> convSpine spine1 (tS, LF.comp s s') - 1288 | | ((SClo (tS, s), s'), spine2) -> convSpine (tS, LF.comp s s') spine2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Nil, _), (App (_, _), _)) - - File "src/core/whnf.ml", lines 1457-1465, characters 2-32: - 1457 | ..match (cPsi, cPsi') with - 1458 | | (_, Empty) -> true - 1459 | | Dec (cPsi1, TypDecl (_, tA)), Dec (cPsi2, TypDecl (_, tB)) -> - 1460 | if convTyp (tA, LF.id) (tB, LF.id) - 1461 | then convSubsetCtx cPsi1 cPsi2 - 1462 | else - 1463 | (* keep tBs around and check that tA is a subordinate of tB, - 1464 | i.e. anything in tA cannot influence tB *) - 1465 | convSubsetCtx cPsi1 cPsi' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dec (_, TypDecl (_, _)), Dec (cPsi2, TypDeclOpt _)) - - File "src/core/whnf.ml", lines 1591-1593, characters 4-76: - 1591 | ....match mO with - 1592 | | CObj cPsi -> CObj (normDCtx cPsi) - 1593 | | ClObj (phat, n) -> ClObj (cnorm_psihat phat m_id, normMObj (n, LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|MV _) - - File "src/core/whnf.ml", lines 1604-1624, characters 2-49: - 1604 | ..function - 1605 | | Comp.TypBase (loc, c, mS) -> - 1606 | Comp.TypBase (loc, c, normMetaSpine mS) - 1607 | | Comp.TypCobase (loc, c, mS) -> - 1608 | Comp.TypCobase (loc, c, normMetaSpine mS) - ... - 1621 | Comp.TypPiBox - 1622 | (loc, (Decl { d with typ = typ' }), tau') - 1623 | - 1624 | | Comp.TypInd tau -> Comp.TypInd (normCTyp tau) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypPiBox (loc, DeclOpt _, _) - - File "src/core/whnf.ml", lines 1640-1643, characters 2-30: - 1640 | ..match cdecl with - 1641 | | Decl d -> - 1642 | let typ' = cnormMTyp (d.typ, t) in - 1643 | Decl { d with typ = typ' } - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/whnf.ml", lines 1646-1670, characters 2-60: - 1646 | ..function - 1647 | | (Comp.TypBase (loc, a, mS), t) -> - 1648 | let mS' = cnormMetaSpine (mS, t) in - 1649 | Comp.TypBase (loc, a, mS') - 1650 | | (Comp.TypCobase (loc, a, mS), t) -> - ... - 1667 | | (Comp.TypClo (tT, t'), t) -> - 1668 | cnormCTyp (tT, mcomp t' t) - 1669 | - 1670 | | (Comp.TypInd tau, t) -> Comp.TypInd (cnormCTyp (tau, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _), _) - - File "src/core/whnf.ml", lines 1673-1675, characters 2-47: - 1673 | ..match cdecl with - 1674 | | Comp.CTypDecl(n, typ, wf_t) -> - 1675 | Comp.CTypDecl(n, cnormCTyp (typ, t), wf_t) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", lines 1691-1707, characters 2-70: - 1691 | ..function - 1692 | | (Comp.TypBase (loc, c, mS), t) -> - 1693 | let mS' = normMetaSpine (cnormMetaSpine (mS, t)) in - 1694 | (Comp.TypBase (loc, c, mS'), m_id) - 1695 | | (Comp.TypCobase (loc, c, mS), t) -> - ... - 1704 | - 1705 | | (Comp.TypClo (tT, t'), t) -> cwhnfCTyp (tT, mcomp t' t) - 1706 | - 1707 | | (Comp.TypInd tau, t) -> (Comp.TypInd (Comp.TypClo (tau, t)), m_id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _), _) - - File "src/core/whnf.ml", lines 1902-1905, characters 2-74: - 1902 | ..match cG with - 1903 | | Empty -> Empty - 1904 | | Dec (cG, Comp.CTypDecl (x, tau, flag)) -> - 1905 | Dec (cwhnfCtx (cG, t), Comp.CTypDecl (x, Comp.TypClo (tau, t), flag)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/whnf.ml", lines 1928-1930, characters 2-62: - 1928 | ..function - 1929 | | Comp.CTypDecl (x, tau, flag) -> - 1930 | Comp.CTypDecl (x, normCTyp (cnormCTyp (tau, m_id)), flag) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", lines 1957-1962, characters 2-41: - 1957 | ..match cD with - 1958 | | Empty -> Empty - 1959 | | Dec (cD, Decl d) -> - 1960 | let typ' = normMTyp d.typ in - 1961 | let cD' = normMCtx cD in - 1962 | Dec (cD', Decl { d with typ = typ' }) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD, DeclOpt _) - - File "src/core/whnf.ml", lines 1990-1993, characters 2-60: - 1990 | ..match (tM1, tM2) with - 1991 | | (INorm n1, INorm n2) -> conv (n1, LF.id) (n2, LF.id) - 1992 | | (ISub s1, ISub s2) -> convSub s1 s2 - 1993 | | (IHead h1, IHead h2) -> convHead (h1, LF.id) (h2, LF.id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (INorm n1, (IHead _|ISub _|ICtx _)) - - File "src/core/whnf.ml", lines 1998-2004, characters 2-25: - 1998 | ..match (mS, mS') with - 1999 | | (Comp.MetaNil, Comp.MetaNil) -> true - 2000 | | (Comp.MetaApp (mO, mT, mS, p1), Comp.MetaApp (mO', mT', mS', p2)) -> - 2001 | convMetaObj mO mO' - 2002 | && convMetaTyp mT mT' - 2003 | && convMetaSpine mS mS' - 2004 | && Plicity.(p1 = p2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaNil, MetaApp (_, _, _, _)) - - File "src/core/whnf.ml", lines 2071-2075, characters 2-42: - 2071 | ..match (d1, d2) with - 2072 | | (CTypDeclOpt x1, CTypDeclOpt x2) -> Name.(x1 = x2) - 2073 | | (CTypDecl (x1, tau1, w1), CTypDecl (x2, tau2, w2)) -> - 2074 | Name.(x1 = x2) && Stdlib.(=) w1 w2 - 2075 | && convCTyp (tau1, m_id) (tau2, m_id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CTypDeclOpt x1, CTypDecl (_, _, _)) - - File "src/core/whnf.ml", lines 2095-2105, characters 2-8: - 2095 | ..match sA with - 2096 | | (Atom (loc, _, _) as tP, s) -> - 2097 | let u = newMVar (Some n) (cPsi, tclo tP s) plicity inductivity in - 2098 | Root (loc, MVar (u, s'), Nil, plicity) - 2099 | - ... - 2102 | ( Name.location x - 2103 | , x - 2104 | , etaExpandMV (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity - 2105 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/whnf.ml", lines 2120-2130, characters 2-8: - 2120 | ..match sA with - 2121 | | (Atom _ as tP, s) -> - 2122 | let u = newMMVar (Some n) (cD, cPsi, tclo tP s) plicity inductivity in - 2123 | Root (loc, MMVar ((u, m_id), s'), Nil, plicity) - 2124 | - ... - 2127 | ( loc - 2128 | , x - 2129 | , etaExpandMMV loc cD (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity - 2130 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/whnf.ml", lines 2135-2141, characters 2-42: - 2135 | ..match tM with - 2136 | | Lam (_, _, tM) -> closed (tM, LF.dot1 s) - 2137 | | Root (_, h, tS, _) -> - 2138 | closedHead h - 2139 | && closedSpine (tS, s) - 2140 | | LFHole _ -> false - 2141 | | Tuple (_, tup) -> closedTuple (tup, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Clo _ - - File "src/core/whnf.ml", lines 2166-2174, characters 2-28: - 2166 | ..function - 2167 | | EmptySub -> true - 2168 | | Undefs -> true - 2169 | | SVar (_, _, sigma) -> closedSub sigma - 2170 | | Shift _ -> true - 2171 | | Dot (ft, s) -> closedFront ft && closedSub s - 2172 | | MSVar (_, ((v, t), s)) -> - 2173 | (* the case for MMVar doesn't also check the substitution -je *) - 2174 | is_mmvar_instantiated v..................... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - FSVar (_, _) - - File "src/core/whnf.ml", lines 2185-2190, characters 2-40: - 2185 | ..match tA with - 2186 | | Atom (_, _, tS) -> closedSpine (tS, s) - 2187 | | PiTyp ((t_dec, _, _), tA) -> - 2188 | closedDecl (t_dec, s) - 2189 | && closedTyp (tA, LF.dot1 s) - 2190 | | Sigma recA -> closedTypRec (recA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/whnf.ml", lines 2208-2211, characters 5-8: - 2208 | .....begin match mmvar.instantiation.contents with - 2209 | | None -> false - 2210 | | Some (ICtx cPsi) -> closedDCtx (cnormDCtx (cPsi, theta)) - 2211 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 2241-2244, characters 2-56: - 2241 | ..function - 2242 | | CObj cPsi -> closedDCtx cPsi - 2243 | | ClObj (phat, t) -> - 2244 | closedDCtx (Context.hatToDCtx phat) && closedMObj t - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|MV _) - - File "src/core/whnf.ml", lines 2255-2264, characters 2-37: - 2255 | ..function - 2256 | | Comp.TypBase (_, _, mS) -> closedMetaSpine mS - 2257 | | Comp.TypCobase (_, _, mS) -> closedMetaSpine mS - 2258 | | Comp.TypBox (_, cT) -> closedMetaTyp cT - 2259 | | Comp.TypArr (_, cT1, cT2) -> closedCTyp cT1 && closedCTyp cT2 - 2260 | | Comp.TypCross (_, cTs) -> List2.for_all (fun cT -> closedCTyp cT) cTs - 2261 | | Comp.TypPiBox (_, ctyp_decl, cT) -> - 2262 | closedCTyp cT && closedDecl ctyp_decl - 2263 | | Comp.TypClo (cT, t) -> closedCTyp (cnormCTyp (cT, t)) (* to be improved Sun Dec 13 11:45:15 2009 -bp *) - 2264 | | Comp.TypInd tau -> closedCTyp tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDef (_, _, _) - - File "src/core/whnf.ml", line 2406, characters 37-65: - 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", line 2406, characters 8-36: - 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", line 2412, characters 32-55: - 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/whnf.ml", line 2412, characters 8-31: - 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/whnf.ml", lines 2418-2420, characters 2-93: - 2418 | ..function - 2419 | | (Atom _, _) as sA -> (cPsi, whnfTyp sA) - 2420 | | (PiTyp ((decl, _, _), tB), s) -> lowerTyp (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Sigma _|TClo _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Apxnorm.cmo -c -impl src/core/apxnorm.ml) - File "src/core/apxnorm.ml", lines 44-49, characters 2-33: - 44 | ..function - 45 | | Apx.LF.Lam (loc, x, m') -> Apx.LF.Lam(loc, x, shiftApxTerm (k + 1) m') - 46 | | Apx.LF.Root (loc, h , spine) -> - 47 | let h' = shiftApxHead k h in - 48 | let spine' = shiftApxSpine k spine in - 49 | Apx.LF.Root(loc, h', spine') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (LFHole (_, _)|Tuple (_, _)|Ann (_, _, _)) - - File "src/core/apxnorm.ml", lines 70-80, characters 2-35: - 70 | ..function - 71 | | Apx.LF.EmptySub -> Apx.LF.EmptySub - 72 | | Apx.LF.Id -> Apx.LF.Id - 73 | | Apx.LF.Dot (Apx.LF.Head h, s) -> - 74 | let h' = shiftApxHead k h in - ... - 77 | | Apx.LF.Dot (Apx.LF.Obj m, s) -> - 78 | let m' = shiftApxTerm k m in - 79 | let s' = shiftApxSub k s in - 80 | Apx.LF.Dot (Apx.LF.Obj m', s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (SVar (_, _)|FSVar (_, _)) - - File "src/core/apxnorm.ml", lines 126-128, characters 4-49: - 126 | ....match (l_delta, t) with - 127 | | (0, t) -> t - 128 | | (k, Int.LF.MDot(_ , t')) -> drop t' (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, MShift _) - - File "src/core/apxnorm.ml", lines 134-151, characters 6-36: - 134 | ......match Substitution.LF.applyMSub offset t with - 135 | | Int.LF.MV u -> Apx.LF.Offset u - 136 | | Int.LF.ClObj (_, clobj) -> - 137 | let (u, mtyp) = Whnf.mctxLookup cD offset' in - 138 | dprintf - ... - 148 | end; - 149 | let t' = drop t l_delta in - 150 | let mtyp' = Whnf.cnormMTyp (mtyp, t')in - 151 | Apx.LF.MInst (clobj, mtyp') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|CObj _) - - File "src/core/apxnorm.ml", lines 267-276, characters 7-10: - 267 | .......begin match Substitution.LF.applyMSub offset t with - 268 | | Int.LF.CObj (Int.LF.CtxVar (Int.LF.CtxOffset psi0)) -> - 269 | Apx.LF.CtxVar (Apx.LF.CtxOffset psi0) - 270 | | Int.LF.CObj Int.LF.Null -> - 271 | Apx.LF.Null - 272 | | Int.LF.CObj (Int.LF.DDec _) -> - 273 | raise (Error (loc, CtxOverGeneral)) - 274 | (* Apx.LF.CtxVar (Apx.LF.CInst cPsi) *) - 275 | | Int.LF.MV offset' -> Apx.LF.CtxVar (Apx.LF.CtxOffset offset') - 276 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CObj (CtxVar (CtxName _|CInst _)) - - File "src/core/apxnorm.ml", lines 288-355, characters 2-27: - 288 | ..match e with - 289 | | Apx.Comp.Fn (loc, f, e) -> - 290 | Apx.Comp.Fn (loc, f, cnormApxExp cD delta e cDt) - 291 | | Apx.Comp.Fun (loc, fbr) -> - 292 | Apx.Comp.Fun (loc, cnormApxFBranches cD delta fbr cDt) - ... - 352 | - 353 | | Apx.Comp.Var _ - 354 | | Apx.Comp.DataConst _ - 355 | | Apx.Comp.Const _ -> e - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ann (_, _, _) - - File "src/core/apxnorm.ml", lines 388-392, characters 4-63: - 388 | ....function - 389 | | Apx.LF.Empty -> cD'' - 390 | | Apx.LF.Dec (delta2', Apx.LF.Decl (x, _, plicity)) -> - 391 | let cD1'' = append_mctx cD'' delta2' in - 392 | Int.LF.Dec (cD1'', Int.LF.DeclOpt { name = x; plicity }) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (delta2', DeclOpt _) - - File "src/core/apxnorm.ml", lines 421-431, characters 2-27: - 421 | ..function - 422 | | Apx.LF.Lam (_, _, m') -> collectApxTerm fMVs m' - 423 | - 424 | | Apx.LF.Root (_, h, s) -> - 425 | let fMVs' = collectApxHead fMVs h in - ... - 428 | | Apx.LF.Tuple (_, tuple) -> - 429 | collectApxTuple fMVs tuple - 430 | - 431 | | Apx.LF.LFHole _ -> fMVs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ann (_, _, _) - - File "src/core/apxnorm.ml", line 502, characters 27-50: - 502 | and collectApxTypDecl fMVs (Apx.LF.TypDecl (_, a))= - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/apxnorm.ml", lines 530-538, characters 2-44: - 530 | ..function - 531 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp a, c_psi), _) - 532 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp a, c_psi), _) -> - 533 | let fMVs' = collectApxDCtx fMVs c_psi in - 534 | collectApxTyp fMVs' a - 535 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp (_, c_phi), c_psi), _) -> - 536 | let fMVs' = collectApxDCtx fMVs c_psi in - 537 | collectApxDCtx fMVs' c_phi - 538 | | Apx.LF.Decl(_, Apx.LF.CTyp _, _) -> fMVs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt _ - - File "src/core/apxnorm.ml", lines 556-563, characters 2-31: - 556 | ..function - 557 | | Apx.LF.Atom (loc, c, tS) -> - 558 | collectApxSpine fMVd tS - 559 | | Apx.LF.PiTyp ((Apx.LF.TypDecl (x, tA), _, _ ), tB) -> - 560 | let fMVd1 = collectApxTyp fMVd tA in - 561 | collectApxTyp fMVd1 tB - 562 | | Apx.LF.Sigma trec -> - 563 | collectApxTypRec fMVd trec - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/apxnorm.ml", lines 573-581, characters 2-45: - 573 | ..function - 574 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp(_, cPhi), cPsi), _) -> - 575 | let fMVd1 = collectApxDCtx fMVd cPsi in - 576 | collectApxDCtx fMVd1 cPhi - 577 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp tA, cPsi), _) - 578 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp tA, cPsi), _) -> - 579 | let fMVd1 = collectApxDCtx fMVd cPsi in - 580 | collectApxTyp fMVd1 tA - 581 | | Apx.LF.Decl (_, Apx.LF.CTyp _, _) -> fMVd - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt _ - - File "src/core/apxnorm.ml", lines 584-603, characters 2-32: - 584 | ..function - 585 | | Apx.Comp.TypArr (_, tau1, tau2) -> - 586 | let fMVd1 = collectApxCompTyp fMVd tau1 in - 587 | collectApxCompTyp fMVd1 tau2 - 588 | | Apx.Comp.TypCross (_, taus) -> - ... - 600 | let fMVd1 = collectApxDCtx fMVd cPsi in - 601 | collectApxDCtx fMVd1 cPhi - 602 | | Apx.Comp.TypBase (_loc, _c, mS) -> - 603 | collectApxMetaSpine fMVd mS - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypBox (_, (_, CTyp _)) - - File "src/core/apxnorm.ml", lines 606-618, characters 2-32: - 606 | ..function - 607 | | Apx.Comp.PatMetaObj (loc, mO) -> - 608 | collectApxMetaObj fMVd mO - 609 | | Apx.Comp.PatConst (loc, c, pat_spine) -> - 610 | collectApxPatSpine fMVd pat_spine - ... - 615 | |> List.fold_left collectApxPattern fMVd - 616 | | Apx.Comp.PatAnn (loc, pat, tau) -> - 617 | let fMVd1 = collectApxCompTyp fMVd tau in - 618 | collectApxPattern fMVd1 pat - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatFVar (_, _) - - File "src/core/apxnorm.ml", lines 836-886, characters 2-33: - 836 | ..function - 837 | | Apx.Comp.Fn (loc, f, e) -> - 838 | Apx.Comp.Fn (loc, f, fmvApxExp fMVs cD d_param e) - 839 | - 840 | | Apx.Comp.Fun (loc, fbr) -> - ... - 883 | - 884 | | Apx.Comp.Var _ - 885 | | Apx.Comp.DataConst _ - 886 | | Apx.Comp.Const _ as i -> i - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ann (_, _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Abstract.cmo -c -impl src/core/abstract.ml) - File "src/core/abstract.ml", lines 253-257, characters 4-47: - 253 | ....function - 254 | | I.Atom _ -> (k, tS) - 255 | | I.PiTyp (_, tA') -> - 256 | let tN = I.Root (loc, I.BVar k, I.Nil, Plicity.explicit) in - 257 | etaExpSpine (k + 1) (I.App (tN, tS)) tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/abstract.ml", lines 260-263, characters 4-49: - 260 | ....match tA with - 261 | | I.Atom _ -> tM - 262 | | I.PiTyp ((I.TypDecl (x, _), _, _), tA') -> - 263 | I.Lam (loc, x, etaExpPrefix loc (tM, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/abstract.ml", lines 267-269, characters 4-19: - 267 | ....match h with - 268 | | I.BVar x -> I.BVar (x + k - 1) - 269 | | I.FVar _ -> h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/abstract.ml", lines 317-332, characters 2-17: - 317 | ..function - 318 | | I.Empty -> I.Empty - 319 | - 320 | | I.Dec (cQ', FDecl (MMV _, Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), _, _)))) -> - 321 | begin match raiseType cPsi tA with - ... - 329 | I.Dec (ctxToCtx cQ', I.TypDecl (x, tA)) - 330 | - 331 | | I.Dec (cQ', FDecl (_, Impure)) -> - 332 | ctxToCtx cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec - (_, FDecl (MMV _, Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) - - File "src/core/abstract.ml", lines 336-355, characters 2-20: - 336 | ..function - 337 | | I.Empty -> I.Empty - 338 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> - 339 | let plicity' = f plicity in - 340 | let cQ'' = ctxToMCtx f cQ' in - ... - 352 | | I.Dec (cQ', FDecl (FV _, Pure (LFTyp tA)))-> - 353 | Error.raise_violation "Free variables in computation-level reconstruction." - 354 | | I.Dec (cQ', FDecl (_, Impure)) -> - 355 | ctxToMCtx f cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (MMV (_, _), Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 358-365, characters 2-76: - 358 | ..function - 359 | | I.Empty -> I.Empty - 360 | | I.Dec (cQ', I.Decl { name = x; typ = I.CTyp (Option.Some w); plicity; inductivity }) -> - 361 | let cQ'' = mctxToCtx cQ' in - 362 | I.Dec (cQ'', CtxV (x, w, plicity, inductivity)) - 363 | | I.Dec (cQ', I.Decl { name = n; typ = ityp; plicity; inductivity }) -> - 364 | let cQ'' = mctxToCtx cQ' in - 365 | I.Dec (cQ'', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cQ', DeclOpt _) - - File "src/core/abstract.ml", lines 368-384, characters 2-32: - 368 | ..function - 369 | | I.Empty -> I.Empty - 370 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, _, _)))) -> - 371 | let cQ'' = ctxToMCtx_pattern (n :: names) cQ' in - 372 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive }) - ... - 381 | I.Dec (cQ'', I.Decl { name = x; typ =I.CTyp (Some w); plicity; inductivity }) - 382 | - 383 | | I.Dec (cQ', FDecl (_, Impure)) -> - 384 | ctxToMCtx_pattern names cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (FV _, Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 409-421, characters 2-35: - 409 | ..function - 410 | | (I.Lam (loc, x, tM), s) -> - 411 | let (cQ', tM') = collectTerm p cQ (cvar, offset + 1) (tM, LF.dot1 s) in - 412 | (cQ', I.Lam (loc, x, tM')) - 413 | | (I.Tuple (loc, tuple), s) -> - ... - 418 | let (cQ'', tS') = collectSpine p cQ' phat (tS, s) in - 419 | (cQ'', I.Root (loc, h', tS', plicity)) - 420 | | (I.LFHole (loc, id, name), s) -> - 421 | (cQ, I.LFHole (loc, id, name)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _, _) - - File "src/core/abstract.ml", lines 481-485, characters 7-49: - 481 | .......let (cD_d, I.Decl { typ = mtyp; plicity; inductivity; _ }) = Store.FCVar.get name in - 482 | let mtyp' = Whnf.cnormMTyp (mtyp, Int.LF.MShift (p - Context.length cD_d)) in - 483 | if !pat_flag - 484 | then MetaTyp (mtyp', Plicity.explicit, Inductivity.not_inductive) - 485 | else MetaTyp (mtyp', plicity, inductivity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, DeclOpt { _ }) - - File "src/core/abstract.ml", lines 512-517, characters 10-11: - 512 | ..........let (cQ', MetaTyp (typ, plicity, inductivity)) = - 513 | addVar loc p cQ (MMV (name, instantiation)) (MetaTyp (typ, plicity, inductivity)) - 514 | in - 515 | ( cQ' - 516 | , I.{ v with typ; plicity; inductivity } - 517 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cQ', LFTyp _) - - File "src/core/abstract.ml", lines 615-652, characters 2-26: - 615 | ..function - 616 | | (I.BVar _ as head, _) - 617 | | (I.Const _ as head, _) -> (cQ, head) - 618 | - 619 | | (I.FVar name, _) -> - ... - 649 | - 650 | | (I.Proj (head, j), s) -> - 651 | let (cQ', h') = collectHead k cQ phat loc (head, s) in - 652 | (cQ', I.Proj (h', j)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)), _) - - File "src/core/abstract.ml", lines 656-671, characters 2-27: - 656 | ..function - 657 | | (I.Atom (loc, a, tS), s) -> - 658 | let (cQ', tS') = collectSpine p cQ phat (tS, s) in - 659 | (cQ', I.Atom (loc, a, tS')) - 660 | - ... - 668 | - 669 | | (I.Sigma typRec, s) -> - 670 | let (cQ', typRec') = collectTypRec p cQ phat (typRec, s) in - 671 | (cQ', I.Sigma typRec') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 686-691, characters 2-66: - 686 | ..function - 687 | | (I.Typ, _) -> (cQ, I.Typ) - 688 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> - 689 | let (cQ', tA') = collectTyp p cQ phat (tA, s) in - 690 | let (cQ'', tK') = collectKind p cQ' (cvar, offset + 1) (tK, LF.dot1 s) in - 691 | (cQ'', I.PiKind ((I.TypDecl (x, tA'), depend, plicity), tK')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", line 759, characters 22-32: - 759 | let collectCDecl p cQ (I.Decl d) = - ^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/abstract.ml", lines 784-790, characters 2-8: - 784 | ..function - 785 | | (I.Typ, _) -> I.Typ - 786 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> - 787 | I.PiKind - 788 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) - 789 | , abstractKind cQ (offset + 1) (tK, LF.dot1 s) - 790 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 795-803, characters 2-8: - 795 | ..function - 796 | | (I.Atom (loc, a, tS), s (* id *)) -> - 797 | I.Atom (loc, a, abstractSpine cQ offset (tS, s)) - 798 | - 799 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> - 800 | I.PiTyp - 801 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) - 802 | , abstractTyp cQ (offset + 1) (tB, LF.dot1 s) - 803 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 818-843, characters 2-8: - 818 | ..function - 819 | | (I.Lam (loc, x, tM), s) -> - 820 | I.Lam (loc, x, abstractTerm cQ (offset + 1) (tM, LF.dot1 s)) - 821 | - 822 | | ( I.(Root - ... - 840 | , abstractHead cQ offset tH - 841 | , abstractSpine cQ offset (tS, s) - 842 | , plicity - 843 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((LFHole (_, _, _)|Clo _|Tuple (_, _)), _) - - File "src/core/abstract.ml", lines 846-851, characters 2-59: - 846 | ..function - 847 | | I.BVar _ as tH -> tH - 848 | | I.Const _ as tH -> tH - 849 | | I.FVar n -> I.BVar (index_of cQ (FV n) + offset) - 850 | | I.AnnH _ -> - 851 | Error.raise_not_implemented "[abstractHead] AnnH case" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MMVar _|MPVar _|MVar _|PVar _|Proj (_, _)|FMVar _|FPVar _|HClo (_, _, _)| - HMClo (_, _)) - - File "src/core/abstract.ml", lines 855-869, characters 2-85: - 855 | ..match (s, cPsi) with - 856 | | (I.Shift _, I.Null) -> tS - 857 | | (I.Shift k, I.DDec _) -> - 858 | subToSpine cQ offset (I.Dot (I.Head (I.BVar (k + 1)), I.Shift (k + 1)), cPsi) tS - 859 | - ... - 866 | (* subToSpine cQ offset s (I.App (I.Root (I.BVar k, I.Nil), tS)) *) - 867 | - 868 | | (I.Dot (I.Obj tM, s), I.DDec (cPsi', _)) -> - 869 | subToSpine cQ offset (s, cPsi') (I.App (abstractTerm cQ offset (tM, LF.id), tS)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Shift _, CtxVar _) - - File "src/core/abstract.ml", lines 880-894, characters 2-48: - 880 | ..function - 881 | | I.Empty -> I.Empty - 882 | | I.Dec (cQ, FDecl (_, Impure)) -> abstractCtx cQ - 883 | | I.Dec (cQ, FDecl (MMV (n, r), Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), plicity, inductivity)))) -> - 884 | let cQ' = abstractCtx cQ in - ... - 891 | | I.Dec (cQ, FDecl (FV f, Pure (LFTyp tA))) -> - 892 | let cQ' = abstractCtx cQ in - 893 | let tA' = abstractTyp cQ 0 (tA, LF.id) in - 894 | I.Dec (cQ', FDecl (FV f, Pure (LFTyp tA'))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec - (_, - FDecl (MMV (_, _), Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) - - File "src/core/abstract.ml", lines 900-906, characters 2-39: - 900 | ..match cPsi with - 901 | | I.Null -> I.Null - 902 | | I.CtxVar psi -> cPsi - 903 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> - 904 | let cPsi' = abstractDctx cQ cPsi (l - 1) in - 905 | let tA' = abstractTyp cQ (l - 1) (tA, LF.id) in - 906 | I.DDec (cPsi', I.TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/abstract.ml", lines 930-940, characters 2-20: - 930 | ..function - 931 | | (I.Atom (loc, a, tS), s (* id *)) -> - 932 | I.Atom (loc, a, abstractMVarSpine cQ offset (tS, s)) - 933 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> - 934 | I.PiTyp - ... - 937 | ) - 938 | | (I.Sigma typRec, s) -> - 939 | let typRec' = abstractMVarTypRec cQ offset (typRec, s) in - 940 | I.Sigma typRec' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 954-962, characters 2-29: - 954 | ..function - 955 | | (I.Lam (loc, x, tM), s) -> - 956 | I.Lam (loc, x, abstractMVarTerm cQ offset (tM, LF.dot1 s)) - 957 | | (I.Tuple (loc, tuple), s) -> - 958 | I.Tuple (loc, abstractMVarTuple cQ offset (tuple, s)) - 959 | | (I.Root (loc, tH, tS, plicity), s (* LF.id *)) -> - 960 | I.Root (loc, abstractMVarHead cQ offset tH, abstractMVarSpine cQ offset (tS, s), plicity) - 961 | | (I.LFHole (loc, id, name), s) -> - 962 | I.LFHole (loc, id, name) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _, _) - - File "src/core/abstract.ml", lines 1000-1036, characters 2-46: - 1000 | ..function - 1001 | | I.BVar _ as mH -> mH - 1002 | | I.Const _ as mH -> mH - 1003 | - 1004 | | I.FPVar ns -> I.PVar (abstractFVarSub cQ loff ns) - ... - 1033 | Error.raise_not_implemented "[abstractMVarHead] AnnH case" - 1034 | - 1035 | | I.Proj (head, k) -> - 1036 | I.Proj (abstractMVarHead cQ loff head, k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (FVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/abstract.ml", lines 1091-1097, characters 2-39: - 1091 | ..function - 1092 | | I.Null -> I.Null - 1093 | | I.CtxVar cv -> I.CtxVar (abstractCtxVar cQ loff cv) - 1094 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> - 1095 | let cPsi' = abstractMVarDctx cQ loff cPsi in - 1096 | let tA' = abstractMVarTyp cQ loff (tA, LF.id) in - 1097 | I.DDec (cPsi', I.TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/abstract.ml", line 1110, characters 30-40: - 1110 | and abstractMVarCdecl cQ loff (I.Decl d) = - ^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/abstract.ml", lines 1121-1138, characters 2-58: - 1121 | ..match cQ with - 1122 | | I.Empty -> I.Empty - 1123 | | I.Dec (cQ, FDecl (v, Pure (MetaTyp (ityp, plicity, inductivity)))) -> - 1124 | let cQ' = abstractMVarCtx cQ (l - 1) in - 1125 | I.Dec (cQ', FDecl (v, Pure (MetaTyp (abstractMVarMTyp cQ ityp (l, 0), plicity, inductivity)))) - ... - 1135 | * is it ever hit on correct code? -jd 2009-02-12 - 1136 | * No. This case should not occur in correct code - bp - 1137 | *) - 1138 | raise (Error (Name.location name, UnknownIdentifier)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (MMV _, Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 1150-1154, characters 2-20: - 1150 | ..function - 1151 | | I.ClObj (phat, tM) -> - 1152 | I.ClObj (abstractMVarHat cQ off phat, abstrClObj cQ off tM) - 1153 | | I.CObj cPsi -> I.CObj (abstractMVarDctx cQ off cPsi) - 1154 | | I.MV k -> I.MV k - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MUndef - - File "src/core/abstract.ml", lines 1167-1179, characters 4-21: - 1167 | ....function - 1168 | | I.Empty -> I.Empty - 1169 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> - 1170 | let cQ'' = ctxToMCtx' cQ' in - 1171 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity; inductivity }) - ... - 1176 | let cQ'' = ctxToMCtx' cQ' in - 1177 | I.Dec (cQ'', I.Decl { name = x; typ = I.CTyp (Option.some w); plicity; inductivity }) - 1178 | | I.Dec (cQ', FDecl (_, Impure)) -> - 1179 | ctxToMCtx' cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (FV _, Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 1208-1217, characters 2-8: - 1208 | ..match cQ with - 1209 | | Int.LF.Empty -> (tA', 0) - 1210 | | Int.LF.Dec (_, FDecl (s, _)) -> - 1211 | let cQ' = abstractCtx cQ in - 1212 | let tA2 = abstractTyp cQ' 0 (tA', LF.id) in - 1213 | let cPsi = ctxToCtx cQ' in - 1214 | begin match raiseType' cPsi tA2 with - 1215 | | (None, tA3) -> (tA3, length' cPsi) - 1216 | | _ -> raise (Error (Location.ghost, LeftoverVars)) - 1217 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, CtxV _) - - File "src/core/abstract.ml", lines 1246-1287, characters 2-28: - 1246 | ..function - 1247 | | Comp.TypBase (loc, a, ms) -> - 1248 | let (cQ', ms') = collect_meta_spine p cQ ms in - 1249 | (cQ', Comp.TypBase (loc, a, ms')) - 1250 | | Comp.TypCobase (loc, a, ms) -> - ... - 1284 | - 1285 | | Comp.TypInd tau -> - 1286 | let (cQ', tau') = collectCompTyp p cQ tau in - 1287 | (cQ', Comp.TypInd tau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDef (_, _, _) - - File "src/core/abstract.ml", lines 1291-1296, characters 2-54: - 1291 | ..function - 1292 | | I.Empty -> (cQ, I.Empty) - 1293 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> - 1294 | let (cQ1, cG') = collectGctx cQ cG in - 1295 | let (cQ2, tau') = collectCompTyp 0 cQ1 tau in - 1296 | (cQ2, I.Dec (cG', Comp.CTypDecl (x, tau', flag))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/abstract.ml", lines 1463-1489, characters 2-52: - 1463 | ..function - 1464 | | Comp.TypBase (loc, a, cS) -> - 1465 | let cS' = abstractMVarMetaSpine cQ offset cS in - 1466 | Comp.TypBase (loc, a, cS') - 1467 | | Comp.TypCobase (loc, a, cS) -> - ... - 1486 | ) - 1487 | - 1488 | | Comp.TypInd tau -> - 1489 | Comp.TypInd (abstractMVarCompTyp cQ offset tau) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _)|TypClo (_, _)) - - File "src/core/abstract.ml", lines 1492-1497, characters 2-47: - 1492 | ..function - 1493 | | I.Empty -> I.Empty - 1494 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> - 1495 | let cG' = abstractMVarGctx cQ offset cG in - 1496 | let tau' = abstractMVarCompTyp cQ offset tau in - 1497 | I.Dec (cG', Comp.CTypDecl (x, tau', flag)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/abstract.ml", lines 1698-1700, characters 4-48: - 1698 | ....match (p, cD) with - 1699 | | (0, _) -> cD - 1700 | | (_, I.Dec (cD', decl)) -> drop (p - 1) cD' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, Empty) - - File "src/core/abstract.ml", lines 1722-1724, characters 8-24: - 1722 | ........let I.Dec (cD1', decl) = cD1 in - 1723 | let cD = subtract cD1' cD2 in - 1724 | I.Dec (cD, decl) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/abstract.ml", lines 1785-1789, characters 2-24: - 1785 | ..function - 1786 | | I.Null -> cPsi1 - 1787 | | I.DDec (cPsi2', dec) -> - 1788 | let cPsi1' = appDCtx cPsi1 cPsi2' in - 1789 | I.Dec (cPsi1', dec) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Unify.cmo -c -impl src/core/unify.ml) - File "src/core/unify.ml", line 163, characters 30-55: - 163 | let genMMVarstr loc cD cPsi (Atom (_, a, _) as tP, s) = - ^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _) - - File "src/core/unify.ml", lines 575-585, characters 6-9: - 575 | ......begin match applyMSub k ms with - 576 | | MUndef -> - 577 | (* Psi1, x:tA |- s' <= Psi2 *) - 578 | (Whnf.mcomp mt' (MShift 1), cD2) - 579 | - ... - 582 | A = [mt']([mt']^-1 A) and cPsi = [mt']([mt']^-1 cPsi *) - 583 | let mtt' = Whnf.m_invert (Whnf.cnormMSub mt') in - 584 | (Whnf.mvar_dot1 mt', Dec (cD2, Decl { name = n; typ = Whnf.cnormMTyp (ctyp, mtt'); plicity; inductivity })) - 585 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 566-590, characters 4-38: - 566 | ....match (t, cD1) with - 567 | | (MShift _, Empty) -> (Whnf.m_id, Empty) - 568 | - 569 | | (MShift k, Dec _) -> - 570 | pruneMCtx' cD (MDot (MV (k + 1), MShift (k + 1)), cD1) ms - ... - 587 | | (MDot (MUndef, mt), Dec (cD1, _)) -> - 588 | let (mt', cD2) = pruneMCtx' cD (mt, cD1) ms in - 589 | (* cD1 |- mt' <= cD2 *) - 590 | (Whnf.mcomp mt' (MShift 1), cD2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MDot (MV k, mt), Dec (cD1, DeclOpt _)) - - File "src/core/unify.ml", lines 810-819, characters 7-10: - 810 | .......begin match applyMSub u ms with - 811 | | MV v -> - 812 | Root - 813 | ( loc - 814 | , MVar (Offset v, invSub cD0 phat (t', cPsi1) ss rOccur) - 815 | , Nil - 816 | , plicity - 817 | ) - 818 | | MUndef -> raise NotInvertible - 819 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 822-830, characters 7-46: - 822 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in - 823 | let d = Context.length cD0 - Context.length cD_d in - 824 | let cPsi1 = - 825 | if d = 0 - 826 | then cPsi1 - 827 | else Whnf.cnormDCtx (cPsi1, MShift d) - 828 | in - 829 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in - 830 | Root (loc, FMVar (u, s'), Nil, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=CTyp _; _ }) - - File "src/core/unify.ml", lines 833-841, characters 7-46: - 833 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get p in - 834 | let d = Context.length cD0 - Context.length cD_d in - 835 | let cPsi1 = - 836 | if d = 0 - 837 | then cPsi1 - 838 | else Whnf.cnormDCtx (cPsi1, MShift d) - 839 | in - 840 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in - 841 | Root (loc, FPVar (p, s'), Nil, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=CTyp _; _ }) - - File "src/core/unify.ml", lines 846-850, characters 7-10: - 846 | .......begin match applyMSub p ms with - 847 | | MV q -> - 848 | Root (loc, PVar (q, invSub cD0 phat (t', cPsi1) ss rOccur), Nil, plicity) - 849 | | MUndef -> raise NotInvertible - 850 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 747-862, characters 4-62: - 747 | ....match sM with - 748 | | (Lam (loc, x, tM), s) -> - 749 | Lam (loc, x, invNorm cD0 ((cvar, offset + 1), (tM, dot1 s), (ms, dot1 ssubst), rOccur)) - 750 | - 751 | | (Root (loc, MVar (Inst u, t), tS, plicity), s) -> - ... - 859 | ) - 860 | - 861 | | (Tuple (loc, trec), s) -> - 862 | Tuple (loc, invTuple cD0 (phat, (trec, s), ss, rOccur)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((LFHole (_, _, _)|Clo _), _) - - File "src/core/unify.ml", lines 888-891, characters 7-10: - 888 | .......begin match bvarSub k ssubst with - 889 | | Undef -> raise NotInvertible - 890 | | Head (BVar k') -> BVar k' - 891 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 894-897, characters 7-10: - 894 | .......begin match bvarSub k ssubst with - 895 | | Head (BVar _ as head) -> head - 896 | | Undef -> raise NotInvertible - 897 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 932-936, characters 7-10: - 932 | .......begin match applyMSub u ms with - 933 | | MV v -> - 934 | MVar (Offset v, invSub cD0 phat (t, cPsi1) ss rOccur) - 935 | | MUndef -> raise NotInvertible - 936 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 940-944, characters 7-10: - 940 | .......begin match applyMSub p ms with - 941 | | MV q -> - 942 | PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur) - 943 | | MUndef -> raise NotInvertible - 944 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 948-952, characters 7-10: - 948 | .......begin match applyMSub p ms with - 949 | | MV q -> - 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) - 951 | | MUndef -> raise NotInvertible - 952 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 886-952, characters 4-10: - 886 | ....match head with - 887 | | BVar k -> - 888 | begin match bvarSub k ssubst with - 889 | | Undef -> raise NotInvertible - 890 | | Head (BVar k') -> BVar k' - ... - 949 | | MV q -> - 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) - 951 | | MUndef -> raise NotInvertible - 952 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Proj - ((Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)), - _) - - File "src/core/unify.ml", lines 956-959, characters 4-46: - 956 | ....function - 957 | | Undefs -> raise (Failure "Variable dependency") - 958 | | Shift k -> Shift (n + k) - 959 | | Dot (ft, ss') -> shiftInvSub (n - 1) ss' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/unify.ml", lines 981-985, characters 9-40: - 981 | .........match applyMSub s ms with - 982 | | MV v -> - 983 | let (_, cPhi, _, cPsi') = Whnf.mctxSDec cD0 v in - 984 | (v, cPhi, cPsi') - 985 | | MUndef -> raise NotInvertible - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1024-1030, characters 7-10: - 1024 | .......begin match applyMSub s ms with - 1025 | | MV v -> - 1026 | let (_, cPhi, _, cPsi1) = Whnf.mctxSDec cD0 v in - 1027 | (* applyMSub to ctx_offset ? *) - 1028 | SVar (v, n, invSub cD0 phat (t, cPsi1) ss rOccur) - 1029 | | MUndef -> raise NotInvertible - 1030 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1033-1034, characters 7-64: - 1033 | .......let (_, Decl { typ = ClTyp (STyp (LF.Subst, _), cPsi'); _ }) = Store.FCVar.get s_name in - 1034 | FSVar (n, (s_name, invSub cD0 phat (t, cPsi') ss rOccur)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=ClTyp (STyp (Ren, _), _); _ }) - - File "src/core/unify.ml", lines 1063-1069, characters 4-74: - 1063 | ....match (mt, cD1) with - 1064 | | (MShift n, _) -> checkDefined (Whnf.mcomp (MShift n) ms) - 1065 | | (MDot (ClObj (phat, SObj sigma), mt'), Dec (cD', Decl { typ = ClTyp (STyp (_, cPhi), _); _ })) -> - 1066 | let sigma' = invSub cD0 phat (sigma, cPhi) (ms, id) rOccur in - 1067 | MDot (ClObj (phat, SObj sigma'), invMSub cD0 (mt', cD') ms rOccur) - 1068 | | (MDot (mobj, mt'), Dec (cD', _)) -> - 1069 | MDot (invMObj cD0 mobj ms rOccur, invMSub cD0 (mt', cD') ms rOccur) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MDot (mobj, mt'), Empty) - - File "src/core/unify.ml", lines 1072-1080, characters 4-90: - 1072 | ....match mobj with - 1073 | | MV n -> - 1074 | begin match applyMSub n ms with - 1075 | | MUndef -> raise NotInvertible - 1076 | | ft -> ft - 1077 | end - 1078 | | ClObj (phat, MObj tM) -> ClObj (phat, MObj (invNorm cD0 (phat, (tM, id), (ms, id), rOccur))) - 1079 | | CObj cPsi -> Error.raise_violation "Not implemented" - 1080 | | ClObj (phat, PObj h) -> ClObj (phat, PObj (invHead cD0 (phat, h, (ms, id), rOccur))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/unify.ml", lines 1152-1154, characters 7-80: - 1152 | .......let Shift 0 = s in (* Assert s is supposed to be the identity *) - 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in - 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Shift 1 - - File "src/core/unify.ml", lines 1124-1154, characters 4-80: - 1124 | ....match sM with - 1125 | | (LFHole _ as n, _) -> n - 1126 | | (Lam (loc, x, tM), s) -> - 1127 | dprintf - 1128 | begin fun p -> - ... - 1151 | | (Root (loc, head, tS, plicity), s) -> - 1152 | let Shift 0 = s in (* Assert s is supposed to be the identity *) - 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in - 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _, _) - - File "src/core/unify.ml", lines 1173-1184, characters 4-9: - 1173 | ....let ClTyp (tp, cPsi1) = mmvar.typ in - 1174 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur - 1175 | then raise (Failure "Variable occurrence") - 1176 | else - 1177 | begin - ... - 1181 | instantiateMMVarWithMMVar mmvar.instantiation loc (v, id2) tP' mmvar.constraints.contents; - 1182 | let (mr, r) = comp2 (comp2 id2 mtt) ss in - 1183 | ((v, mr), r) - 1184 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1187-1199, characters 4-37: - 1187 | ....let ClTyp (MTyp tP, cPsi1) = mmvar.typ in - 1188 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur - 1189 | then raise (Failure "Variable occurrence") - 1190 | else - 1191 | let (idsub, cPsi2) = pruneSub cD0 cPsi' (Context.dctxToHat cPsi') (t, cPsi1) ss rOccur in - ... - 1196 | , Root (loc, MVar (v, idsub), Nil, Plicity.explicit) - 1197 | , mmvar.constraints.contents - 1198 | ); - 1199 | (v, comp (comp idsub t) ssubst) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 1202-1211, characters 3-10: - 1202 | ...let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in - 1203 | let d = Context.length cD0 - Context.length cD_d in - 1204 | let cPsi1 = - 1205 | if d = 0 - 1206 | then cPsi1 - 1207 | else Whnf.cnormDCtx (cPsi1, MShift d) - 1208 | in - 1209 | let t' = simplifySub cD0 cPsi t in - 1210 | let s' = invSub cD0 (Context.dctxToHat cPsi) (t', cPsi1) ss rOccur in - 1211 | (u, s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=CTyp _; _ }) - - File "src/core/unify.ml", lines 1216-1219, characters 7-14: - 1216 | .......let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in - 1217 | let t' = simplifySub cD0 cPsi t in - 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in - 1219 | (v, s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, CTyp _) - - File "src/core/unify.ml", lines 1214-1220, characters 4-63: - 1214 | ....match applyMSub u ms with - 1215 | | MV v -> - 1216 | let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in - 1217 | let t' = simplifySub cD0 cPsi t in - 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in - 1219 | (v, s') - 1220 | | MUndef -> raise (Failure "[Prune] Bound MVar dependency") - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1246-1254, characters 7-10: - 1246 | .......begin match bvarSub k ssubst with - 1247 | | Undef -> - 1248 | let s = - 1249 | Format.asprintf "[Prune] Bound variable dependency : head = %a" - 1250 | (P.fmt_ppr_lf_head cD0 cPsi' P.l0) head - 1251 | in - 1252 | raise (Failure s) - 1253 | | Head (BVar _ as h') -> h' - 1254 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1223-1258, characters 4-11: - 1223 | ....match head with - 1224 | | MMVar ((i, mt), t) -> - 1225 | MMVar (pruneMMVarInst cD0 cPsi' loc i (mt, t) ss rOccur) - 1226 | | MVar (Inst i, t) -> - 1227 | MVar (pruneMVarInst cD0 cPsi' loc i (Whnf.normSub t) ss rOccur) - ... - 1255 | - 1256 | | Const _ - 1257 | | FVar _ -> - 1258 | head - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1293-1317, characters 4-57: - 1293 | ....match (s, cPsi1) with - 1294 | | (EmptySub, Null) -> EmptySub - 1295 | | (Undefs, Null) -> EmptySub - 1296 | | (Shift n, DDec _) -> - 1297 | pruneSubst cD cPsi (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur - ... - 1314 | - 1315 | | (Dot _, _) - 1316 | | (EmptySub, _) - 1317 | -> Error.raise_violation "Badly typed substitution" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undefs, (CtxVar _|DDec (_, _))) - - File "src/core/unify.ml", lines 1321-1323, characters 4-70: - 1321 | ....match ft with - 1322 | | Obj tM -> Obj (prune cD cPsi (Context.dctxToHat cPsi) (tM, id) ss rOccur) - 1323 | | Head h -> Head (pruneHead cD cPsi (Location.ghost, h) ss rOccur) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/unify.ml", lines 1354-1357, characters 9-59: - 1354 | .........function - 1355 | | Undefs -> (EmptySub, Null) - 1356 | | Shift k -> (id, CtxVar psi) - 1357 | | Dot (ft, ssubst') -> shiftInvSub (n - 1) ssubst' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/unify.ml", lines 1370-1374, characters 9-40: - 1370 | .........match applyMSub s mt with - 1371 | | MV v -> - 1372 | let (_, _, _, cPsi') = Whnf.mctxSDec cD0 v in - 1373 | cPsi' - 1374 | | MUndef -> raise NotInvertible - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1387-1390, characters 7-18: - 1387 | .......let ClTyp (STyp (_, cPhi2), cPhi1) = mmvar.typ in - 1388 | let cPhi1' = Whnf.cnormDCtx (cPhi1, Whnf.m_id) in - 1389 | ignore (invSub cD0 phat (sigma, cPhi1') ss rOccur); - 1390 | (id, cPsi1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|PTyp _), _) - - File "src/core/unify.ml", lines 1398-1400, characters 7-18: - 1398 | .......let (_, Decl { typ = ClTyp (STyp _, cPsi'); _ }) = Store.FCVar.get s in - 1399 | ignore (invSub cD0 phat (sigma, cPsi') ss rOccur); - 1400 | (id, cPsi1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) - - File "src/core/unify.ml", lines 1407-1426, characters 7-10: - 1407 | .......begin match bvarSub n ssubst with - 1408 | | Undef -> - 1409 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in - 1410 | (comp s1' shift, cPsi1') - 1411 | - ... - 1423 | in - 1424 | (* cPsi1' |- s1_i <= cPsi' *) - 1425 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) - 1426 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1431-1448, characters 7-10: - 1431 | .......begin match bvarSub n ssubst with - 1432 | | Undef -> - 1433 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in - 1434 | (comp s1' shift, cPsi1') - 1435 | - ... - 1445 | in - 1446 | (* cPsi1' |- s1_i <= cPsi' *) - 1447 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) - 1448 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1343-1471, characters 4-31: - 1343 | ....match (s, cPsi1) with - 1344 | | (Shift n, DDec _) -> - 1345 | pruneSub' cD0 cPsi phat (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur - 1346 | | (Shift _, Null) - 1347 | | (EmptySub, Null) - ... - 1468 | - 1469 | | (Dot (Undef, t), DDec (cPsi1, _)) -> - 1470 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (t, cPsi1) ss rOccur in - 1471 | (comp s1' shift, cPsi1') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub, (CtxVar _|DDec (_, _))) - - File "src/core/unify.ml", lines 1474-1487, characters 4-21: - 1474 | ....match sA with - 1475 | | (Atom (loc, a, tS), s) -> Atom (loc, a, pruneSpine cD0 cPsi phat (tS, s) (mss, ss) rOccur) - 1476 | | (PiTyp ((TypDecl (x, tA), depend, plicity), tB), s) -> - 1477 | let tA' = pruneTyp cD0 cPsi phat (tA, s) (mss, ss) rOccur in - 1478 | let tB' = pruneTyp cD0 cPsi phat (tB, dot1 s) (mss, dot1 ss) rOccur in - ... - 1484 | - 1485 | | (Sigma typ_rec, s) -> - 1486 | let typ_rec' = pruneTypRec cD0 cPsi phat (typ_rec, s) (mss, ss) rOccur in - 1487 | Sigma typ_rec' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TClo _, _) - - File "src/core/unify.ml", lines 1504-1507, characters 7-10: - 1504 | .......begin match applyMSub psi ms with - 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' - 1506 | | MV k -> CtxVar (CtxOffset k) - 1507 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|ClObj (_, _)) - - File "src/core/unify.ml", lines 1510-1514, characters 7-10: - 1510 | .......begin match mmvar.instantiation.contents with - 1511 | | None -> cPsi - 1512 | | Some (ICtx cPhi) -> - 1513 | pruneDCtx cD cPhi (Whnf.mcomp theta ms) rOccur - 1514 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/unify.ml", lines 1501-1529, characters 4-37: - 1501 | ....match cPsi with - 1502 | | Null -> Null - 1503 | | CtxVar (CtxOffset psi) -> - 1504 | begin match applyMSub psi ms with - 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' - ... - 1526 | (ms, Substitution.LF.id) - 1527 | rOccur - 1528 | in - 1529 | DDec (cPsi', TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/unify.ml", lines 1574-1583, characters 7-10: - 1574 | .......begin match bvarSub k ssubst with - 1575 | | Undef -> - 1576 | (* Psi1, x:tA |- s' <= Psi2 *) - 1577 | (comp s' shift, cPsi2) - 1578 | - 1579 | | Head (BVar _) -> - 1580 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since - 1581 | A = [s']([s']^-1 A) *) - 1582 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) - 1583 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1590-1599, characters 7-10: - 1590 | .......begin match bvarSub k ssubst with - 1591 | | Undef -> - 1592 | (* Psi1, x:tA |- s' <= Psi2 *) - 1593 | (comp s' shift, cPsi2) - 1594 | - 1595 | | Head (BVar _) -> - 1596 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since - 1597 | A = [s']([s']^-1 A) *) - 1598 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) - 1599 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1551-1604, characters 4-29: - 1551 | ....match (t, cPsi1) with - 1552 | | (EmptySub, Null) - 1553 | | (Undefs, Null) - 1554 | | (Shift _, Null) -> - 1555 | (id, Null) - ... - 1601 | | (Dot (Undef, t), DDec (cPsi1, _)) -> - 1602 | let (s', cPsi2) = pruneCtx' phat (t, cPsi1) ss in - 1603 | (* sP1 |- s' <= cPsi2 *) - 1604 | (comp s' shift, cPsi2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub, (CtxVar _|DDec (_, _))) - - File "src/core/unify.ml", lines 1646-1651, characters 4-56: - 1646 | ....match (sTup1, sTup2) with - 1647 | | ((Last tM, s1), (Last tN, s2)) -> - 1648 | unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2) - 1649 | | ((Cons (tM, tup1), s1), (Cons (tN, tup2), s2)) -> - 1650 | (unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2); - 1651 | unifyTuple mflag cD0 cPsi (tup1, s1) (tup2, s2)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Last tM, s1), (Cons (_, _), _)) - - File "src/core/unify.ml", lines 1654-1680, characters 4-9: - 1654 | ....let ClTyp (_, cPsi1) = mmvar.typ in - 1655 | if isId t1' - 1656 | then instantiateMVar (mmvar.instantiation, sM2, mmvar.constraints.contents) - 1657 | else - 1658 | begin - ... - 1677 | (* This might actually need to add a constraint, in which case - 1678 | "NotInvertible" seems the wrong kind of exception... *) - 1679 | Error.raise_violation "Unification violation" - 1680 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1694-1705, characters 9-35: - 1694 | .........match Whnf.whnfTyp sA with - 1695 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> - 1696 | (* cPsi' |- Pi x:A.B <= typ - 1697 | cPsi |- s <= cPsi' - 1698 | cPsi |- tN <= [s]tA - ... - 1702 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in - 1703 | LF.App (tN, tS) - 1704 | - 1705 | | (LF.Atom _, _) -> LF.Nil - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/unify.ml", lines 1683-1710, characters 4-15: - 1683 | ....let ClTyp (_, cPsi1) = mmvar.typ in - 1684 | match sM2 with - 1685 | | Root (loc, Const c, _, plicity) -> - 1686 | let tA = (Store.Cid.Term.get c).Store.Cid.Term.Entry.typ in - 1687 | dprintf - ... - 1707 | let tM1 = Root (loc, Const c, genSpine mmvar.cD cPsi1 (tA, id), plicity) in - 1708 | instantiateMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); - 1709 | Some tM1 - 1710 | | _ -> None - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1716-1729, characters 6-32: - 1716 | ......match Whnf.whnfTyp sA with - 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> - 1718 | (* cPsi' |- Pi x:A.B <= typ - 1719 | cPsi |- s <= cPsi' - 1720 | cPsi |- tN <= [s]tA - ... - 1726 | in - 1727 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in - 1728 | LF.App (tN, tS) - 1729 | | (LF.Atom _, _) -> LF.Nil - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/unify.ml", lines 1714-1762, characters 4-15: - 1714 | ....let ClTyp (MTyp tB, cPsi1) = mmvar.typ in - 1715 | let rec genSpine cD1 cPsi1 sA = - 1716 | match Whnf.whnfTyp sA with - 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> - 1718 | (* cPsi' |- Pi x:A.B <= typ - ... - 1759 | instantiateMMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); - 1760 | Some tM1 - 1761 | - 1762 | | _ -> None - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 1766-1769, characters 4-79: - 1766 | ....match tm with - 1767 | | (INorm n, _) -> INorm (prune cD cPsi hat (n, id) ss rOccur) - 1768 | | (IHead h, _) -> IHead (pruneHead cD cPsi (Location.ghost, h) ss rOccur) - 1769 | | (ISub s, STyp (_, cPhi)) -> ISub (pruneSubst cD cPsi (s, cPhi) ss rOccur) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ISub s, (MTyp _|PTyp _)) - - File "src/core/unify.ml", lines 1772-1796, characters 4-9: - 1772 | ....let ClTyp (tp, cPsi1) = mmvar.typ in - 1773 | if isId t1' && isMId mt1 - 1774 | then - 1775 | begin - 1776 | dprint (fun () -> "[unifyMMVarTerm] 200 - id/m_id"); - ... - 1793 | (* with | NotInvertible -> Error.raise_violation "Unification violation" *) - 1794 | (* This might actually need to add a constraint, in which case "NotInvertible" seems - 1795 | the wrong kind of exception... *) - 1796 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1810-1882, characters 4-76: - 1810 | ....let ClTyp (_, cPsi1) = mmvar.typ in - 1811 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub mt1) in - 1812 | (* cD |- mtt1 : cD0 and cD ; cPsi |- t1' : cPsi1 *) - 1813 | let (flat_cPsi, conv_list) = ConvSigma.flattenDCtx cD0 cPsi in - 1814 | let s_tup = ConvSigma.gen_tup_sub conv_list in (* flat_cPsi |- s_tup : cPsi *) - ... - 1879 | p.fmt "[unifyMMVarTermProj]: tM2 (after pruning) = %a" - 1880 | (P.fmt_ppr_lf_normal cD0 flat_cPsi P.l0) tM2' - 1881 | end; - 1882 | instantiateMMVar (mmvar.instantiation, sM2', mmvar.constraints.contents) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1885-1918, characters 4-102: - 1885 | ....let ClTyp (tp1, cPsi1) = mmvar1.typ in - 1886 | let (s', cPsi') = intersection (Context.dctxToHat cPsi) (Whnf.normSub t1') (Whnf.normSub t2') cPsi1 in - 1887 | (* if cD ; cPsi |- t1' <= cPsi1 and cD ; cPsi |- t2' <= cPsi1 - 1888 | then cD ; cPsi1 |- s' <= cPsi' *) - 1889 | let (mt', cD') = m_intersection (Whnf.cnormMSub mt1) (Whnf.cnormMSub mt2) mmvar1.cD in - ... - 1915 | [|w[s']/u|](u[t1]) = [t1](w[s']) - 1916 | [|w[s']/u|](u[t2]) = [t2](w[s']) - 1917 | *) - 1918 | instantiateMMVarWithMMVar mmvar1.instantiation loc (w, (mt', s')) tp1' mmvar1.constraints.contents - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1934-1975, characters 7-12: - 1934 | .......let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in - 1935 | dprnt "(000) MVar-MVar"; - 1936 | (* by invariant of whnf: - 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id - 1938 | r1 and r2 are uninstantiated (None) - ... - 1972 | begin - 1973 | let id = next_constraint_id () in - 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) - 1975 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 1933-1975, characters 7-12: - 1933 | .......let ClTyp (MTyp tP1, cPsi1) = mmvar1.typ in - 1934 | let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in - 1935 | dprnt "(000) MVar-MVar"; - 1936 | (* by invariant of whnf: - 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id - ... - 1972 | begin - 1973 | let id = next_constraint_id () in - 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) - 1975 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 2439-2452, characters 4-52: - 2439 | ....match (spine1, spine2) with - 2440 | | ((Nil, _), (Nil, _)) -> () - 2441 | - 2442 | | ((SClo (tS1, s1'), s1), sS) -> - 2443 | unifySpine mflag cD0 cPsi (tS1, comp s1' s1) sS - ... - 2449 | (* dprint (fun () -> "[unifySpine] " ^ P.normalToString cD0 cPsi (tM1, s1) ^ - 2450 | " == " ^ P.normalToString cD0 cPsi (tM2, s2));*) - 2451 | unifyTerm mflag cD0 cPsi (tM1, s1) (tM2, s2); - 2452 | unifySpine mflag cD0 cPsi (tS1, s1) (tS2, s2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Nil, _), (App (_, _), _)) - - File "src/core/unify.ml", lines 2659-2710, characters 7-61: - 2659 | .......let CTyp schema1, CTyp schema2 = mmvar1.typ, mmvar2.typ in - 2660 | if mmvar1.instantiation == mmvar2.instantiation - 2661 | then - 2662 | if Option.equal Id.cid_schema_equal schema1 schema2 - 2663 | then - ... - 2707 | Error.raise_violation - 2708 | "Case where both meta-substitutions associated with \ - 2709 | context variables are not pattern substitutions \ - 2710 | should not happen and is not implemented for now" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CTyp schema1, ClTyp (_, _)) - - File "src/core/unify.ml", lines 2714-2747, characters 7-61: - 2714 | .......let CTyp s_cid = mmvar.typ in - 2715 | if isPatMSub theta - 2716 | then - 2717 | begin - 2718 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub theta) in - ... - 2744 | Error.raise_violation - 2745 | "Case where both meta-substitutions associated with \ - 2746 | context variables are not pattern substitutions \ - 2747 | should not happen and is not implemented for now" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (_, _) - - File "src/core/unify.ml", lines 2785-2786, characters 4-43: - 2785 | ....let Decl { typ = cT; _ } = cdecl in - 2786 | unifyMObj cD (mO, t) (mO', t') (cT, mt) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/unify.ml", lines 2820-2832, characters 7-53: - 2820 | .......let Comp.PiKind (_, cdecl, cK') = cK in - 2821 | let mOt = Whnf.cnormMetaObj (mO, t) in - 2822 | (* let mOt' = Whnf.cnormMetaObj (mO', t') in *) - 2823 | unifyMetaObj cD (mO, t) (mO', t') (cdecl, mt); - 2824 | let mt' = MDot (Comp.metaObjToMFront mOt, mt) in - ... - 2829 | P.(fmt_ppr_cmp_meta_typ cD) (Whnf.cnormMTyp (mT', t')) - 2830 | end; - 2831 | unifyMetaTyp cD (mT, t) (mT', t'); - 2832 | unifyMetaSpine cD (mS, t) (mS', t') (cK', mt') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ctype _ - - File "src/core/unify.ml", lines 2837-2840, characters 4-81: - 2837 | ....function - 2838 | | (MTyp tA1, MTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) - 2839 | | (PTyp tA1, PTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) - 2840 | | (STyp (_, cPhi1), STyp (_, cPhi2)) -> unifyDCtx1 Unification cD cPhi1 cPhi2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MTyp tA1, (PTyp _|STyp (_, _))) - - File "src/core/unify.ml", line 2836, characters 17-28: - 2836 | and unifyClTyp Unification cD cPsi = - ^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Matching - - File "src/core/unify.ml", line 2842, characters 18-29: - 2842 | and unifyCLFTyp Unification cD ctyp1 ctyp2 = - ^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Matching - - File "src/core/unify.ml", lines 2938-2941, characters 4-62: - 2938 | ....match (itM1, itM2) with - 2939 | | (INorm tM1, INorm tM2) -> unifyTerm Unification cD cPsi (tM1, id) (tM2, id) - 2940 | | (IHead tH1, IHead tH2) -> unifyHead Unification cD cPsi tH1 tH2 - 2941 | | (ISub s1, ISub s2) -> unifySub Unification cD cPsi s1 s2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (INorm tM1, (IHead _|ISub _|ICtx _)) - - File "src/core/unify.ml", lines 2950-2962, characters 7-10: - 2950 | .......begin match !cnstr with - 2951 | | Queued id -> - 2952 | forceCnstr mflag (nextCnstr ()) - 2953 | | Eqn (c_id, cD, cPsi, INorm tM1, INorm tM2) -> - 2954 | solveConstraint cnstr; - ... - 2959 | solveConstraint cnstr; - 2960 | unifyHead mflag cD cPsi h1 h2; - 2961 | forceCnstr mflag (nextCnstr ()) - 2962 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) - - File "src/core/unify.ml", lines 2994-3029, characters 7-100: - 2994 | .......let Eqn (_, cD, cPsi, itM1, itM2) as c' = !c in - 2995 | solveConstraint c; - 2996 | dprintf - 2997 | begin fun p -> - 2998 | p.fmt "[forceGlobalCnstr'] @[<v>processing nontrivial constraint\ - ... - 3026 | *) - 3027 | if solvedCnstrs (!globalCnstrs) - 3028 | then (resetGlobalCnstrs (); forceGlobalCnstr' cnstrs) - 3029 | else raise (GlobalCnstrFailure (Location.ghost, "[forceGlobalCnstr'] Constraints generated")) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Queued _ - - File "src/core/unify.ml", lines 3202-3204, characters 8-68: - 3202 | ........match (m1, m2) with - 3203 | | (MObj tM1, MObj tM2) -> unify Empty cPsi (tM1, id) (tM2,id) - 3204 | | (PObj h, PObj h') -> unifyHead Unification Empty cPsi h h' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MObj tM1, (PObj _|SObj _)) - - File "src/core/unify.ml", lines 3208-3217, characters 4-49: - 3208 | ....match (m1, m2) with - 3209 | | (CObj cPsi, CObj cPhi) -> - 3210 | unifyDCtx1 - 3211 | Unification - 3212 | Empty - 3213 | (Whnf.cnormDCtx (cPsi, Whnf.m_id)) - 3214 | (Whnf.cnormDCtx (cPhi, Whnf.m_id)) - 3215 | | (ClObj (phat1, m1), ClObj (phat2, m2)) -> - 3216 | (* unify_phat phat1 phat2; *) - 3217 | unifyClObj (Context.hatToDCtx phat1) m1 m2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CObj cPsi, (MUndef|ClObj (_, _)|MV _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Opsem.cmo -c -impl src/core/opsem.ml) - File "src/core/opsem.ml", lines 80-83, characters 2-30: - 80 | ..match cM' with - 81 | | LF.ClObj (phat, LF.MObj tM) -> (loc, cM') - 82 | | LF.ClObj (phat, LF.PObj h) -> (loc, cM') - 83 | | LF.CObj cPsi -> (loc, cM') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/opsem.ml", lines 121-137, characters 7-17: - 121 | .......function - 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch - 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) - 124 | when Id.cid_comp_dest_equal cid cid' -> - 125 | Value (eval_exp e (theta, eta)) (* should we append theta' and eta'? *) - ... - 134 | | Value v -> Value v - 135 | end - 136 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, ps), e, _, _), br) -> - 137 | trim br - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ConsValBranch (((PatNil|PatApp (_, _, _)), _, _, _), _) - - File "src/core/opsem.ml", lines 119-142, characters 5-8: - 119 | .....let Comp.FunValue fbr = eval_exp e (theta, eta) in - 120 | let rec trim = - 121 | function - 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch - 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) - ... - 139 | begin match trim fbr with - 140 | | FunBranch fr -> Comp.FunValue fr - 141 | | Value v -> v - 142 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (FnValue (_, _, _, _)|ThmValue (_, _, _, _)|MLamValue (_, _, _, _)| - CtxValue (_, _, _, _)|BoxValue (_, _)|ConstValue _|DataValue (_, _)| - TupleValue (T (_, _, _))) - - File "src/core/opsem.ml", lines 91-290, characters 2-50: - 91 | ..match i with - 92 | | Comp.Const (_, cid) -> - 93 | dprint (fun () -> "[eval_exp] Const " ^ R.render_cid_prog cid); - 94 | begin match (Store.Cid.Comp.get cid).Store.Cid.Comp.Entry.prog with - 95 | | Some (Comp.ThmValue (cid, Comp.Program e', theta', eta')) -> - ... - 287 | eval_branches loc vscrut branches (theta, eta) - 288 | - 289 | | Comp.Hole (_) -> - 290 | Error.raise_violation "Source contains holes" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MApp (_, _, (_, ClObj (_, SObj _)), _, _) - - File "src/core/opsem.ml", lines 321-325, characters 2-36: - 321 | ..match (cObj, cObj') with - 322 | | (LF.MObj tM, LF.MObj tM') -> - 323 | Unify.unify LF.Empty cPsi' (tM, Substitution.LF.id) (tM', Substitution.LF.id) - 324 | | (LF.PObj h, LF.PObj h') -> - 325 | Unify.unifyH LF.Empty phat h h' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MObj tM, (PObj _|SObj _)) - - File "src/core/opsem.ml", lines 437-458, characters 4-10: - 437 | ....function - 438 | | Comp.NilValBranch -> FunBranch (Comp.NilValBranch) - 439 | | Comp.ConsValBranch ((Comp.PatApp (_, p, Comp.PatNil), e, theta, eta), brs) -> - 440 | begin try - 441 | let eta' = match_pattern (v, eta) (p, theta) in - ... - 455 | eval_branch brs - 456 | | Unify.Failure msg -> (dprint (fun () -> "Branch failed : " ^ msg); - 457 | eval_branch brs) - 458 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ConsValBranch (((PatNil|PatObs (_, _, _, _)), _, _, _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Interactive.cmo -c -impl src/core/interactive.ml) - File "src/core/interactive.ml", lines 202-213, characters 10-26: - 202 | ..........let Cover.CovGoal (cPsi', tR, sA') = cg in - 203 | let ms' = LF.MDot (LF.ClObj (Context.dctxToHat cPsi', LF.MObj tR), ms) in - 204 | let k = List.length cD_tail in - 205 | let (cD'', ms0) = Coverage.addToMCtx cDg' (cD_tail, ms') in - 206 | let cg' = - ... - 210 | , (Whnf.cnormTyp (Whnf.normTyp sA', LF.MShift k), S.LF.id) - 211 | ) - 212 | in - 213 | (cD'', cg', ms0) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/interactive.ml", line 183, characters 18-73: - 183 | let genCGoals cD' (LF.Decl { name =n; typ = mtyp; plicity; inductivity }) cD_tail = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Lfcheck.cmo -c -impl src/core/lfcheck.ml) - File "src/core/lfcheck.ml", lines 225-230, characters 2-19: - 225 | ..function - 226 | | Null -> Ctxsub.ctxShift cPhi (* S.LF.id *) - 227 | | DDec (cPsi', TypDecl (n, tA)) -> - 228 | let s = (ctxToSub' cPhi cPsi' : sub) in - 229 | let u = Whnf.etaExpandMV cPhi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in - 230 | Dot (Obj u, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi', TypDeclOpt _) - - File "src/core/lfcheck.ml", lines 246-330, characters 2-55: - 246 | ..match (sM, sA) with - 247 | | ((Lam (loc, name, tM), s1), (PiTyp ((TypDecl _ as tX, _, _), tB), s2)) -> (* Offset by 1 *) - 248 | check cD - 249 | (DDec (cPsi, S.LF.decSub tX s2)) - 250 | (tM, S.LF.dot1 s1) - ... - 327 | raise (Error (loc, (CheckError (cD, cPsi, sM, sA)))) - 328 | end - 329 | | ((Root (loc, _, _, _), _ (* id *)), _ ) -> - 330 | raise (Error (loc, CheckError (cD, cPsi, sM, sA))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Clo _, _), _) - - File "src/core/lfcheck.ml", lines 361-370, characters 4-23: - 361 | ....match (tS, sA) with - 362 | | ((Nil, _), sP) -> sP - 363 | - 364 | | ((SClo (tS, s'), s), sA) -> - 365 | syn (tS, S.LF.comp s' s) sA - 366 | - 367 | | ((App (tM, tS), s1), (PiTyp ((TypDecl (_, tA1), _, _), tB2), s2)) -> - 368 | check cD cPsi (tM, s1) (tA1, s2); - 369 | let tB2 = Whnf.whnfTyp (tB2, Dot (Obj (Clo (tM, s1)), s2)) in - 370 | syn (tS, s1) tB2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((App (tM, tS), s1), (PiTyp ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfcheck.ml", line 346, characters 16-50: - 346 | and syn cD cPsi (Root (loc, h, tS, _), s (* id *)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)), _) - - File "src/core/lfcheck.ml", lines 393-394, characters 5-7: - 393 | .....let TypDecl (_, tA) = ctxDec cPsi k' in - 394 | tA - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfcheck.ml", lines 400-409, characters 10-25: - 400 | ..........let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in - 401 | dprintf - 402 | begin fun p -> - 403 | p.fmt "[InferHead] @[<v>%a |- %a@,where %a has type %a@]" - 404 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi - 405 | (P.fmt_ppr_lf_head cD cPsi P.l0) head - 406 | (P.fmt_ppr_lf_head cD cPsi P.l0) tuple_head - 407 | (P.fmt_ppr_lf_typ_rec cD cPsi P.l0) recA - 408 | end; - 409 | (recA, S.LF.id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfcheck.ml", lines 411-413, characters 10-19: - 411 | ..........let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in - 412 | checkSub loc cD cPsi s Subst cPsi'; - 413 | (recA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _) - - File "src/core/lfcheck.ml", lines 398-414, characters 7-64: - 398 | .......match tuple_head with - 399 | | BVar k' -> - 400 | let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in - 401 | dprintf - 402 | begin fun p -> - ... - 411 | let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in - 412 | checkSub loc cD cPsi s Subst cPsi'; - 413 | (recA, s) - 414 | | FPVar (name, _) -> raise (Error (loc, LeftoverFV name)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfcheck.ml", lines 446-457, characters 5-17: - 446 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in - 447 | dprintf - 448 | begin fun p -> - 449 | let f = P.fmt_ppr_lf_dctx cD P.l0 in - 450 | p.fmt "[inferHead] @[<v>%a@,%a |- %a <= %a@]" - ... - 454 | f cPsi' - 455 | end; - 456 | checkSub loc cD cPsi s Subst cPsi' ; - 457 | TClo (tA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/lfcheck.ml", lines 461-474, characters 5-37: - 461 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in - 462 | dprintf - 463 | begin fun p -> - 464 | let f = P.fmt_ppr_lf_mctx P.l0 in - 465 | p.fmt "[inferHead] @[<v>MMVar %a@,cD = %a@,t' = %a@,cD' = %a@]" - ... - 471 | checkMSub loc cD t' mmvar.cD; - 472 | dprint (fun () -> "[inferHead] MMVar - msub done \n"); - 473 | checkSub loc cD cPsi r Subst (Whnf.cnormDCtx (cPsi', t')) ; - 474 | TClo (Whnf.cnormTyp (tA, t'), r) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/lfcheck.ml", lines 391-506, characters 2-41: - 391 | ..match (head, cl) with - 392 | | (BVar k', _) -> - 393 | let TypDecl (_, tA) = ctxDec cPsi k' in - 394 | tA - 395 | - ... - 503 | TClo (tA, s) - 504 | - 505 | | (FVar name, _) | (FMVar (name, _), _) | (FPVar (name, _), _) -> - 506 | raise (Error (loc, LeftoverFV name)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MVar (Inst _, _), Subst) - (However, some guarded clause may match this value.) - - File "src/core/lfcheck.ml", lines 509-528, characters 2-13: - 509 | ..match cPsi with - 510 | | Null -> true (* we need to succeed because coverage should detect that - 511 | it is not inhabited *) - 512 | - 513 | | CtxVar ctx_var -> - ... - 525 | - 526 | | DDec (rest, TypDecl _) -> - 527 | canAppear cD rest head sA loc - 528 | || false........................................... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (rest, TypDeclOpt _) - - File "src/core/lfcheck.ml", lines 643-655, characters 2-23: - 643 | ..match sS1, sK with - 644 | | (Nil, _), sK -> - 645 | sK - 646 | - 647 | | (SClo (tS, s'), s), sK -> - ... - 652 | synKSpine cD cPsi (tS, s1) (kK, Dot (Obj (Clo (tM, s1)), s2)) - 653 | - 654 | | (App _, _), (Typ, _) -> - 655 | raise SpineMismatch - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((App (_, _), _), (PiKind ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfcheck.ml", lines 664-681, characters 2-47: - 664 | ..match tA with - 665 | | Atom (loc, a, tS) -> - 666 | let tK = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in - 667 | begin - 668 | try - ... - 678 | checkTyp cD cPsi (tA, s); - 679 | checkTyp cD (DDec (cPsi, TypDecl (x, TClo (tA, s)))) (tB, S.LF.dot1 s) - 680 | - 681 | | Sigma arec -> checkTypRec cD cPsi (arec, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfcheck.ml", lines 710-714, characters 2-53: - 710 | ..function - 711 | | Typ -> () - 712 | | PiKind ((TypDecl (x, tA), _, _), kind) -> - 713 | checkTyp cD cPsi (tA, S.LF.id); - 714 | checkKind cD (DDec (cPsi, TypDecl (x, tA))) kind - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - - File "src/core/lfcheck.ml", lines 724-725, characters 2-47: - 724 | ..match decl with - 725 | | TypDecl (_, tA) -> checkTyp cD cPsi (tA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfcheck.ml", lines 734-754, characters 2-7: - 734 | ..match cPsi with - 735 | | Null -> () - 736 | | DDec (cPsi, tX) -> - 737 | checkDCtx cD cPsi; - 738 | checkDec cD cPsi (tX, S.LF.id) - ... - 751 | (P.fmt_ppr_lf_mctx P.l0) cD - 752 | end; - 753 | ignore (Whnf.mctxLookup cD k); - 754 | () - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/lfcheck.ml", lines 962-963, characters 5-47: - 962 | .....let Some (ICtx cPhi) = mmvar.instantiation.contents in - 963 | checkSchema loc cD cPhi schema_name schema - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/lfcheck.ml", lines 1019-1027, characters 2-57: - 1019 | ..match (sArec, sBrec) with - 1020 | | ((SigmaLast _, _), (SigmaLast _, _)) -> - 1021 | None - 1022 | - 1023 | | ((SigmaElem (_, _, recA), s), (SigmaLast _, _)) -> - 1024 | Some (recA, s) - 1025 | - 1026 | | ((SigmaElem (_, _, recA), s), (SigmaElem (_, _, recB), s')) -> - 1027 | elemPostfix (recA, S.LF.dot1 s) (recB, S.LF.dot1 s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((SigmaLast (_, _), _), (SigmaElem (_, _, _), _)) - - File "src/core/lfcheck.ml", lines 1075-1101, characters 2-69: - 1075 | ..match (cM, cTt) with - 1076 | | (CObj cPsi, (CTyp (Some w), _)) -> - 1077 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get w in - 1078 | checkSchema loc cD cPsi name schema - 1079 | - ... - 1098 | let mtyp1 = Whnf.cnormMTyp (mtyp1, t) in - 1099 | let (_, mtyp2) = Whnf.mctxLookup cD u in - 1100 | if Bool.not (Whnf.convMTyp mtyp1 mtyp2) - 1101 | then Error.raise_violation ("Contextual substitution ill-typed") - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CObj cPsi, (CTyp None, _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Total.cmo -c -impl src/core/total.ml) - File "src/core/total.ml", lines 31-45, characters 6-9: - 31 | ......begin match (x, args) with - 32 | | (_, []) -> - 33 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n Report as a bug." - 34 | | (Comp.M (cM, _ ), (Comp.M (cM', _ ) :: _)) -> - 35 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \nBeluga cannot establish that the given recursive call is a size-preserving variant of it.\nArgument found: %a@\nArgument expected: %a@" - ... - 42 | - 43 | | (Comp.V _, _) -> - 44 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n\n Found computation-level variable while generated recursive call expected a meta-object.\n\nCheck specified totality declaration." - 45 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (M (_, _), (E|DC)::_) - - File "src/core/total.ml", lines 138-141, characters 2-56: - 138 | ..function - 139 | | LF.Empty -> LF.Empty - 140 | | LF.Dec (cG, Comp.CTypDecl (x, tau, _)) -> - 141 | LF.Dec (mark_gctx cG, Comp.CTypDecl (x, tau, true)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/total.ml", lines 155-157, characters 2-40: - 155 | ..function - 156 | | None -> " _ " - 157 | | Some (Comp.Arg x) -> string_of_int x - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (Lex _|Simul _) - - File "src/core/total.ml", line 249, characters 30-37: - 249 | let xs = List.map (fun (Arg x) -> x) xs in - ^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lex _|Simul _) - - File "src/core/total.ml", lines 245-258, characters 4-41: - 245 | ....match dec.order with - 246 | | `inductive (Arg x) -> - 247 | (dec.name, Some [x], (tau, Whnf.m_id)) - 248 | | `inductive (Lex xs) -> - 249 | let xs = List.map (fun (Arg x) -> x) xs in - ... - 255 | | `not_recursive - 256 | | `trust - 257 | | `partial -> - 258 | (dec.name, None, (tau, Whnf.m_id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - `inductive (Simul _) - - File "src/core/total.ml", line 331, characters 19-54: - 331 | let gen_var loc cD (LF.Decl { name = x; typ = cU; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/total.ml", lines 404-413, characters 2-31: - 404 | ..function - 405 | | [] -> [] - 406 | | Comp.M (cM, cU) :: args -> - 407 | if uninstantiated_arg cM - 408 | then Comp.DC :: generalize args - 409 | else Comp.M (cM, cU) :: generalize args - 410 | | Comp.V x :: args -> - 411 | Comp.V x :: generalize args - 412 | | Comp.DC :: args -> - 413 | Comp.DC :: generalize args - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - E::_ - - File "src/core/total.ml", line 445, characters 19-25: - 445 | let existsElem b (1, n) (LF.SchElem (some_part, block_part)) = - ^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (0, _) - - File "src/core/total.ml", lines 509-511, characters 6-47: - 509 | ......let LF.ClTyp (LF.MTyp tA, cPsi) = cU in - 510 | (Unify.unifyMetaTyp cD (cU , Whnf.m_id) (cU0, Whnf.m_id); - 511 | gen_meta_obj (k, Substitution.LF.id) cU) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/total.ml", lines 544-592, characters 2-30: - 544 | ..function - 545 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) - 546 | | (1, (Comp.TypPiBox (_, LF.Decl { typ = cU'; _ }, tau), theta)) -> - 547 | let cU0 = Whnf.cnormMTyp (cU', theta) in - 548 | begin - ... - 589 | - 590 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> - 591 | let (spine, tau_r) = rec_spine cD (k, cU) (n - 1, (tau2, theta)) in - 592 | (Comp.DC :: spine, tau_r) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (2, - ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| - TypCross (_, _)|TypClo (_, _)|TypInd _), - _)) - - File "src/core/total.ml", lines 595-619, characters 2-30: - 595 | ..function - 596 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) - 597 | - 598 | | (1, (Comp.TypPiBox _, _)) -> - 599 | raise Not_compatible (* Error *) - ... - 616 | - 617 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> - 618 | let (spine, tau_r) = rec_spine' cD (x, ttau0) (n - 1, (tau2, theta)) in - 619 | (Comp.DC :: spine, tau_r) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, - ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| - TypCross (_, _)|TypClo (_, _)|TypInd _), - _)) - - File "src/core/total.ml", lines 622-713, characters 2-43: - 622 | ..match cD' with - 623 | | LF.Empty -> cIH - 624 | - 625 | | LF.Dec (cD', LF.Decl { name = u; typ = cU; inductivity = Inductivity.Not_inductive; _ }) -> - 626 | dprintf - ... - 710 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d@\n" j); - 711 | let cIH' = mk_all (cIH, j) mf_list in - 712 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d" (j + 1)); - 713 | gen_rec_calls cD cIH' (cD', j + 1) mfs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt _) - - File "src/core/total.ml", lines 725-791, characters 2-47: - 725 | ..match cG0 with - 726 | | LF.Empty -> cIH - 727 | | LF.Dec (cG', Comp.CTypDecl (x, tau0, false)) -> - 728 | gen_rec_calls' cD cG cIH (cG', j + 1) mfs - 729 | - ... - 788 | mk_all cIH' mf_list - 789 | in - 790 | let cIH' = mk_all cIH mf_list in - 791 | gen_rec_calls' cD cG cIH' (cG', j + 1) mfs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, CTypDeclOpt _) - - File "src/core/total.ml", lines 860-868, characters 2-69: - 860 | ..match cPsi with - 861 | (* cPsi |- tA *) - 862 | | LF.Null -> None - 863 | | LF.CtxVar _ -> None - 864 | | LF.DDec (cPsi, LF.TypDecl (_, tB)) -> - 865 | if Whnf.convTyp (tA, Substitution.LF.invShift) (tB, Substitution.LF.id) - 866 | then Some k - 867 | else - 868 | pos cPsi (Whnf.normTyp (tA, Substitution.LF.invShift)) (k + 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/total.ml", lines 1087-1111, characters 5-8: - 1087 | .....begin - 1088 | match prefixDCtx cD cPsi cPsi0 (* cPsi0 = cPsi, cPsi1 *) , - 1089 | prefix_hat - 1090 | (Whnf.cnorm_psihat phat Whnf.m_id) - 1091 | (Whnf.cnorm_psihat phat' Whnf.m_id) - ... - 1108 | end ; - 1109 | (l, LF.ClObj (Context.extend_hatctx k phat0, LF.MObj (Whnf.norm (tM, dot_k s_proj k)))) , LF.ClTyp (Whnf.normClTyp (tA , dot_k s_proj k), padctx cPsi' k) - 1110 | end - 1111 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Some k', None) - - File "src/core/total.ml", lines 1121-1124, characters 5-87: - 1121 | .....let LF.Root (_, tH', _, _) = - 1122 | Whnf.norm (LF.Root (l, tH, LF.Nil, Plicity.explicit), s_proj) - 1123 | in - 1124 | (l, LF.ClObj (phat0, LF.PObj tH')) , LF.ClTyp (Whnf.normClTyp (tA, s_proj), cPsi') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/total.ml", lines 1134-1140, characters 2-65: - 1134 | ..match args with - 1135 | | [] -> [] - 1136 | | Comp.DC :: args -> Comp.DC :: shiftArgs cD args (cPsi', s_proj, cPsi) - 1137 | | Comp.V x :: args -> Comp.V x :: shiftArgs cD args (cPsi', s_proj, cPsi) - 1138 | | Comp.M (cM, cU ) :: args -> - 1139 | let cM' , cU'= shiftMetaObj cD (cM , cU) (cPsi', s_proj, cPsi) in - 1140 | Comp.M (cM', cU') :: shiftArgs cD args (cPsi', s_proj, cPsi) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - E::_ - - File "src/core/total.ml", lines 1316-1337, characters 2-40: - 1316 | ..function - 1317 | | Comp.TypBase (loc, c, _) -> - 1318 | Bool.not (Id.cid_comp_typ_equal a c) - 1319 | && begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with - 1320 | | Sgn.Positivity -> true - ... - 1334 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && no_occurs a tau2 - 1335 | | Comp.TypCross (_, taus) -> List2.for_all (no_occurs a) taus - 1336 | | Comp.TypPiBox (_, _, tau') -> no_occurs a tau' - 1337 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1340-1360, characters 2-40: - 1340 | ..function - 1341 | | Comp.TypBase (loc, c, _) -> - 1342 | Id.cid_comp_typ_equal a c - 1343 | || begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with - 1344 | | Sgn.Positivity -> true - ... - 1357 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && check_positive a tau2 - 1358 | | Comp.TypCross (_, taus) -> List2.for_all (check_positive a) taus - 1359 | | Comp.TypPiBox (_, _, tau') -> check_positive a tau' - 1360 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1364-1372, characters 2-40: - 1364 | ..function - 1365 | | Comp.TypBase _ -> true - 1366 | | Comp.TypCobase _ -> true - 1367 | | Comp.TypDef _ -> raise Unimplemented - 1368 | | Comp.TypBox _ -> true - 1369 | | Comp.TypArr (_, tau1, tau2) -> check_positive a tau1 && positive a tau2 - 1370 | | Comp.TypCross (_, taus) -> List2.for_all (positive a) taus - 1371 | | Comp.TypPiBox (_, _, tau') -> positive a tau' - 1372 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1492-1531, characters 2-27: - 1492 | ..match tau1 with - 1493 | | Comp.TypBase (loc, c, mS1) -> - 1494 | if Id.cid_comp_typ_equal a c - 1495 | then - 1496 | begin - ... - 1528 | | Comp.TypBox _ - 1529 | | Comp.TypClo _ - 1530 | | Comp.TypCobase _ - 1531 | | Comp.TypDef _ -> true - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1555-1580, characters 8-48: - 1555 | ........function - 1556 | | Comp.TypBase _ - 1557 | | Comp.TypCobase _ - 1558 | | Comp.TypBox _ -> true - 1559 | - ... - 1577 | | Comp.TypPiBox (_, dec, tau') -> strat (LF.Dec (cD0, dec)) tau' - 1578 | - 1579 | | Comp.TypDef _ - 1580 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Lfrecon.cmo -c -impl src/core/lfrecon.ml) - File "src/core/lfrecon.ml", lines 253-262, characters 2-29: - 253 | ..function - 254 | | Apx.LF.BVar _ -> "BVar" - 255 | | Apx.LF.Const _ -> "Const" - 256 | | Apx.LF.MVar _ -> "MVar" - 257 | | Apx.LF.PVar (Apx.LF.Offset _, _) -> "PVar Offset " - 258 | | Apx.LF.PVar (Apx.LF.MInst _, _) -> "PVar PInst " - 259 | | Apx.LF.Proj (head, _) -> "Proj " ^ what_head head - 260 | | Apx.LF.FVar _ -> "FVar" - 261 | | Apx.LF.FMVar _ -> "FMVar" - 262 | | Apx.LF.FPVar _ -> "FPVar" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Hole - - File "src/core/lfrecon.ml", lines 275-276, characters 5-19: - 275 | .....let (None, d) = Context.dctxToHat cPsi in - 276 | Int.LF.Shift d - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Some _, _) - - File "src/core/lfrecon.ml", lines 311-333, characters 8-80: - 311 | ........let CTyp s_cid = mmvar1.typ in - 312 | if d = d' - 313 | then - 314 | begin - 315 | begin match c_var with - ... - 330 | true - 331 | end - 332 | else - 333 | Error.raise_not_implemented "[unify_phat] ctx_var with a full context" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (_, _) - - File "src/core/lfrecon.ml", lines 358-359, characters 9-42: - 358 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid); _ }) = Store.FCVar.get n in - 359 | Store.Cid.Schema.get_schema s_cid - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=CTyp None; _ }) - - File "src/core/lfrecon.ml", lines 352-366, characters 2-92: - 352 | ..match ctxvar with - 353 | | Some (Int.LF.CtxOffset _ as phi) -> - 354 | Store.Cid.Schema.get_schema (Context.lookupCtxVarSchema cD phi) - 355 | | Some (Int.LF.CtxName n) -> - 356 | begin - ... - 363 | - 364 | | Some Int.LF.(CInst ({ typ = CTyp (Some s_cid); _ }, _)) -> - 365 | Store.Cid.Schema.get_schema s_cid - 366 | | None -> Error.raise_violation "No context variable for which we could retrieve a schema" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (CInst ({typ=CTyp None; _ }, _)) - - File "src/core/lfrecon.ml", lines 372-376, characters 2-44: - 372 | ..function - 373 | | Int.LF.Atom _ -> m - 374 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA) -> - 375 | dprint (fun () -> "eta FMV - add Lam "); - 376 | Apx.LF.Lam (loc, x, addPrefix loc m tA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 385-389, characters 4-62: - 385 | ....function - 386 | | Int.LF.Atom _ -> (k, s) - 387 | | Int.LF.PiTyp (_, tA) -> - 388 | let (k', s') = go (k + 1) s tA in - 389 | (k' - 1, Apx.LF.Dot (Apx.LF.Head (Apx.LF.BVar k'), s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/lfrecon.ml", lines 391-395, characters 2-18: - 391 | ..match tA, s with - 392 | | Int.LF.Atom _, _ -> (k, s) - 393 | | Int.LF.PiTyp _, None -> - 394 | let (k', s') = go k Apx.LF.Id tA in - 395 | (k', Some s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp (_, _), Some _) - - File "src/core/lfrecon.ml", line 399, characters 20-40: - 399 | let etaExpandMV loc (Apx.LF.MVar (x, s)) tA = - ^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Hole|BVar _|Const _|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| - FPVar (_, _)) - - File "src/core/lfrecon.ml", lines 406-410, characters 4-52: - 406 | ....function - 407 | | Int.LF.Atom _ -> (k, tS) - 408 | | Int.LF.PiTyp (_, tA') -> - 409 | let tN = Int.LF.Root (loc, Int.LF.BVar k, Int.LF.Nil, Plicity.explicit) in - 410 | etaExpSpine (k + 1) (Int.LF.App (tN, tS)) tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/lfrecon.ml", lines 414-417, characters 4-54: - 414 | ....match tA with - 415 | | Int.LF.Atom _ -> tM - 416 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> - 417 | Int.LF.Lam (loc, x, etaExpPrefix loc (tM, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 422-424, characters 4-24: - 422 | ....match h with - 423 | | Int.LF.BVar x -> Int.LF.BVar (x + k - 1) - 424 | | Int.LF.FVar _ -> h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 457-461, characters 4-55: - 457 | ....function - 458 | | Int.LF.Atom _ -> (k, tS) - 459 | | Int.LF.PiTyp (_, tA') -> - 460 | let tN = Apx.LF.Root (loc, Apx.LF.BVar k, Apx.LF.Nil) in - 461 | etaExpApxSpine (k + 1) (Apx.LF.App (tN, tS)) tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/lfrecon.ml", lines 464-468, characters 4-57: - 464 | ....match tA with - 465 | | Int.LF.Atom _ -> tM - 466 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> - 467 | dprint (fun () -> "eta - add Lam "); - 468 | Apx.LF.Lam (loc, x, etaExpApxPrefix loc (tM, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 613-614, characters 2-33: - 613 | ..let Int.LF.TypDecl (_, Int.LF.Sigma recA) = tp in - 614 | getProjIndex loc cD cPsi recA k - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 617-630, characters 2-19: - 617 | ..match h with - 618 | | Apx.LF.BVar k -> Apx.LF.BVar (ConvSigma.map conv_list k) - 619 | - 620 | | Apx.LF.Proj (Apx.LF.BVar k, p) -> - 621 | let tp = - ... - 627 | let j = getProjIndexFromType loc cD cPsi tp p in - 628 | dprintf (fun p -> p.fmt "flattenProjPat Proj Case: k = %d j = %d@\n" k j); - 629 | let k' = ConvSigma.map conv_list k - j + 1 in - 630 | Apx.LF.BVar k' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Proj - ((Hole|Const _|MVar (_, _)|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| - FPVar (_, _)), - _) - - File "src/core/lfrecon.ml", lines 637-643, characters 7-41: - 637 | .......function - 638 | | Apx.LF.Id -> Apx.LF.Id - 639 | | Apx.LF.EmptySub -> Apx.LF.EmptySub - 640 | | Apx.LF.Dot (Apx.LF.Head h, s) -> - 641 | let s' = go s in - 642 | let h' = flattenProjPatHead loc cD h conv_list cPsi in - 643 | Apx.LF.Dot (Apx.LF.Head h', s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dot (Obj _, _) - - File "src/core/lfrecon.ml", lines 679-691, characters 2-38: - 679 | ..match s with - 680 | | Apx.LF.Id -> s - 681 | - 682 | | Apx.LF.EmptySub -> s - 683 | - ... - 688 | Apx.LF.Dot (Apx.LF.Head h, flattenSub s) - 689 | - 690 | | Apx.LF.Dot (Apx.LF.Obj (Apx.LF.Tuple (_, tM)), s) -> - 691 | flattenVarTuple tM (flattenSub s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dot (Obj (Lam (_, _, _)|Root (_, _, _)|LFHole (_, _)|Ann (_, _, _)), _) - - File "src/core/lfrecon.ml", lines 697-698, characters 2-77: - 697 | ..function - 698 | | Apx.LF.Root (_, Apx.LF.BVar k, Apx.LF.Nil) -> Apx.LF.Head (Apx.LF.BVar k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Root (_, BVar k, App (_, _)) - - File "src/core/lfrecon.ml", lines 827-829, characters 5-60: - 827 | .....let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in - 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in - 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (x, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 822-829, characters 2-60: - 822 | ..function - 823 | | Apx.LF.BVar k -> Context.ctxDec cPsi k, Int.LF.BVar k - 824 | | Apx.LF.Proj (h, nj) -> - 825 | let (tp, h') = synHead cD loc cPsi h in - 826 | let j = getProjIndexFromType loc cD cPsi tp nj in - 827 | let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in - 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in - 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Hole|Const _|MVar (_, _)|PVar (_, _)|FVar _|FMVar (_, _)|FPVar (_, _)) - - File "src/core/lfrecon.ml", lines 858-867, characters 5-8: - 858 | .....begin match synHead cD loc cPsi h with - 859 | | (Int.LF.TypDecl (x, tA), h') -> - 860 | let tA' = - 861 | pruningTyp loc cD cPsi (Context.dctxToHat cPsi) - 862 | (tA, S.LF.id) (Int.LF.MShift 0, ss) - 863 | in - 864 | ( Int.LF.DDec (cPhi, Int.LF.TypDecl (x, tA')) - 865 | , Int.LF.Dot (Int.LF.Head h', s') - 866 | ) - 867 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDeclOpt _, _) - - File "src/core/lfrecon.ml", lines 884-890, characters 2-66: - 884 | ..function - 885 | | Apx.LF.Typ -> Int.LF.Typ - 886 | | Apx.LF.PiKind ((Apx.LF.TypDecl (x, a), depend, plicity), k) -> - 887 | let tA = elTyp Pi (*cD=*)Int.LF.Empty cPsi a in - 888 | let cPsi' = Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) in - 889 | let tK = elKind cD cPsi' k in - 890 | Int.LF.PiKind ((Int.LF.TypDecl (x, tA), depend, plicity), tK) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 909-925, characters 2-25: - 909 | ..function - 910 | | Apx.LF.Atom (loc, a, s) -> - 911 | let { Store.Cid.Typ.Entry.kind = tK; implicit_arguments = i; _ } = Store.Cid.Typ.get a in - 912 | let s' = mkShift recT cPsi in - 913 | (* let s' = S.LF.id in *) - ... - 922 | - 923 | | Apx.LF.Sigma typRec -> - 924 | let typRec' = elTypRec recT cD cPsi typRec in - 925 | Int.LF.Sigma typRec' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 977-1023, characters 2-34: - 977 | ..match (m, sA) with - 978 | | (Apx.LF.Lam (loc, x, m), (Int.LF.PiTyp ((Int.LF.TypDecl _ as decl, _, _), tB), s)) -> - 979 | (* cPsi' = cPsi, x:tA *) - 980 | let cPsi' = Int.LF.DDec (cPsi, S.LF.decSub decl s) in - 981 | let tM = elTerm recT cD cPsi' m (tB, S.LF.dot1 s) in - ... - 1020 | | (Apx.LF.LFHole (loc, m_name), tA) -> - 1021 | let id = Holes.allocate () in - 1022 | let name = HoleId.name_of_option m_name in - 1023 | Int.LF.LFHole (loc, id, name) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _), (PiTyp ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfrecon.ml", lines 1081-1091, characters 9-12: - 1081 | .........let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in - 1082 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in - 1083 | begin - 1084 | try - 1085 | Unify.unifyTyp cD cPsi sQ sP; - ... - 1088 | | Unify.Failure msg -> - 1089 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1090 | | _ -> throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1091 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 1213-1280, characters 9-12: - 1213 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.MTyp tQ, cPhi); _ }) = Store.FCVar.get u in - 1214 | dprintf - 1215 | begin fun p -> - 1216 | p.fmt "[elTerm'] @[<v>FMV %a of type %a[%a]@,in cD_d = %a@,and cD = %a@]" - 1217 | Name.pp u - ... - 1277 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) - 1278 | |_ -> - 1279 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) - 1280 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 1476-1500, characters 9-12: - 1476 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp tA, cPhi); _ }) = Store.FCVar.get p in - 1477 | let d = Context.length cD - Context.length cD_d in - 1478 | let (tA, cPhi) = - 1479 | if d = 0 - 1480 | then (tA, cPhi) - ... - 1497 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) - 1498 | | _ -> - 1499 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) - 1500 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 1571-1607, characters 9-12: - 1571 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp ((Int.LF.Sigma typRec) as tA), cPhi); _ }) = - 1572 | Store.FCVar.get p - 1573 | in - 1574 | let d = Context.length cD - Context.length cD_d in - 1575 | let (tA, cPhi) = - ... - 1604 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1605 | | _ -> - 1606 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1607 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, - Decl - {typ=ClTyp (PTyp (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 1808-1813, characters 10-13: - 1808 | ..........begin match S.LF.bvarSub k s'' with - 1809 | | Int.LF.Head (Int.LF.BVar j) -> - 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) - 1811 | | Int.LF.Head (Int.LF.PVar (p, r')) -> - 1812 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r' s''), tS, Plicity.explicit) - 1813 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1806-1817, characters 7-10: - 1806 | .......begin match h with - 1807 | | Int.LF.BVar k -> - 1808 | begin match S.LF.bvarSub k s'' with - 1809 | | Int.LF.Head (Int.LF.BVar j) -> - 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) - ... - 1814 | | Int.LF.PVar (p, r) -> - 1815 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r s''), tS, Plicity.explicit) - 1816 | (* | Int.LF.Proj (Int.LF.PVar (p, r), i) -> Int.LF.Root (loc, Int.LF) *) - 1817 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1857-1879, characters 5-8: - 1857 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = - 1858 | try - 1859 | Context.ctxSigmaDec cPsi x - 1860 | with - 1861 | | _ -> - ... - 1876 | with - 1877 | | Unify.Failure msg -> - 1878 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1879 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 1882-1910, characters 5-8: - 1882 | .....begin - 1883 | match Whnf.mctxPDec cD p with - 1884 | | (_, Int.LF.Sigma recA, cPsi') -> - 1885 | let t' = elSub loc recT cD cPsi t Int.LF.Subst cPsi' in - 1886 | let k = getProjIndex loc cD cPsi recA proj in - ... - 1907 | end - 1908 | | (_, Int.LF.PiTyp _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantPi)) - 1909 | | (_, Int.LF.Atom _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantAtom)) - 1910 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, TClo _, _) - - File "src/core/lfrecon.ml", lines 1941-1951, characters 12-15: - 1941 | ............begin match S.LF.bvarSub y s'' with - 1942 | | Int.LF.Head (Int.LF.BVar x) -> - 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) - 1944 | | Int.LF.Head (Int.LF.PVar (p, r')) -> - 1945 | Int.LF.Root - ... - 1948 | , tS - 1949 | , Plicity.explicit - 1950 | ) - 1951 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1939-1959, characters 9-12: - 1939 | .........begin match h with - 1940 | | Int.LF.BVar y -> - 1941 | begin match S.LF.bvarSub y s'' with - 1942 | | Int.LF.Head (Int.LF.BVar x) -> - 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) - ... - 1956 | , tS - 1957 | , Plicity.explicit - 1958 | ) - 1959 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1044-1980, characters 2-25: - 1044 | ..match r with - 1045 | | Apx.LF.Ann (_loc, m, a) -> - 1046 | elTerm' recT cD cPsi m sP - 1047 | - 1048 | | Apx.LF.LFHole (location, m_name) -> - ... - 1977 | - 1978 | | Apx.LF.Root (loc, h, _) -> - 1979 | dprintf (fun p -> p.fmt "[elTerm' **] h = %s@\n" (what_head h)); - 1980 | throw loc CompTypAnn - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|Tuple (_, _)) - - File "src/core/lfrecon.ml", lines 2102-2104, characters 5-65: - 2102 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in - 2103 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in - 2104 | (Int.LF.Root (loc, Int.LF.BVar x, tS, Plicity.explicit), sQ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 2159-2169, characters 5-82: - 2159 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = Context.ctxSigmaDec cPsi x in - 2160 | let k = getProjIndex loc cD cPsi recA proj in - 2161 | let sA = - 2162 | try - 2163 | Int.LF.getType (Int.LF.BVar x) (recA, S.LF.id) k - ... - 2166 | throw loc (ProjNotValid (cD, cPsi, k, (Int.LF.Sigma recA, S.LF.id))) - 2167 | in - 2168 | let (tS, sQ) = elSpine loc recT cD cPsi spine sA in - 2169 | (Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit), sQ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 2276-2310, characters 11-14: - 2276 | ...........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.STyp (cl0, cPhi0), cPsi0); _ }) = - 2277 | Store.FCVar.get s_name - 2278 | in - 2279 | svar_le (cl0, cl); - 2280 | let d = Context.length cD - Context.length cD_d in - ... - 2307 | with - 2308 | | Unify.Failure msg -> - 2309 | throw loc (IllTypedSubVar (cD, cPsi, cPhi)) - 2310 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) - - File "src/core/lfrecon.ml", lines 2514-2516, characters 9-40: - 2514 | .........let Int.LF.TypDecl (_, tA') = Context.ctxDec (Whnf.cnormDCtx (cPsi, Whnf.m_id)) x in - 2515 | dprint (fun () -> "[elHead] done"); - 2516 | (Int.LF.BVar x, (tA', S.LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 2574-2576, characters 9-59: - 2574 | .........let (offset, Int.LF.ClTyp (Int.LF.MTyp tP, cPhi)) = Whnf.mctxMVarPos cD u in - 2575 | let s' = elSub loc recT cD cPsi s Int.LF.Subst cPhi in - 2576 | (Int.LF.MVar (Int.LF.Offset offset, s'), (tP, s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (offset, ClTyp ((PTyp _|STyp (_, _)), _)) - - File "src/core/lfrecon.ml", lines 2583-2585, characters 5-41: - 2583 | .....let (offset, Int.LF.ClTyp (Int.LF.PTyp tA, cPhi)) = Whnf.mctxMVarPos cD p in - 2584 | let s' = elSub loc recT cD cPsi s cl cPhi in - 2585 | (Int.LF.PVar (offset, s'), (tA, s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (offset, ClTyp ((MTyp _|STyp (_, _)), _)) - - File "src/core/lfrecon.ml", lines 2643-2674, characters 4-36: - 2643 | ....match (sA, recT) with - 2644 | | ((Int.LF.PiTyp ((Int.LF.TypDecl (n, tA), _, _), tB), s), Pi) -> - 2645 | (* cPsi' |- tA <= typ - 2646 | * cPsi |- s <= cPsi' cPsi |- tN <= [s]A - 2647 | * - ... - 2671 | in - 2672 | - 2673 | let (spine', sP) = elSpineI loc recT cD cPsi spine (i - 1) (tB, Int.LF.Dot (Int.LF.Obj tN, s)) in - 2674 | (Int.LF.App (tN, spine'), sP) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((PiTyp ((TypDeclOpt _, _, _), _), _), _) - - File "src/core/lfrecon.ml", lines 2705-2708, characters 4-25: - 2705 | ....function - 2706 | | Int.LF.Atom _ -> 0 - 2707 | | Int.LF.PiTyp (_, tB2) -> 1 + typLength tB2 - 2708 | | Int.LF.Sigma _ -> 0........................................................ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/lfrecon.ml", lines 2725-2732, characters 4-32: - 2725 | ....match (spine, Whnf.whnfTyp sA) with - 2726 | | (Apx.LF.Nil, sP) -> - 2727 | (Int.LF.Nil, sP) (* errors are postponed to reconstruction phase *) - 2728 | - 2729 | | (Apx.LF.App (m, spine), (Int.LF.PiTyp ((Int.LF.TypDecl (_, tA), _, _), tB), s)) -> - 2730 | let tM = elTerm recT cD cPsi m (tA, s) in - 2731 | let (tS, sP) = elSpine loc recT cD cPsi spine (tB, Int.LF.Dot (Int.LF.Obj tM, s)) in - 2732 | (Int.LF.App (tM, tS), sP) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (App (m, spine), (PiTyp ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfrecon.ml", lines 2741-2760, characters 4-30: - 2741 | ....match (sK, recT) with - 2742 | | ((Int.LF.PiKind ((Int.LF.TypDecl (n, tA), _, _), tK), s), Pi) -> - 2743 | (* let sshift = mkShift recT cPsi in *) - 2744 | (* let tN = Whnf.etaExpandMV Int.LF.Null (tA, s) sshift in *) - 2745 | let tN = Whnf.etaExpandMV cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in - ... - 2757 | Whnf.etaExpandMMV Location.ghost cD cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive - 2758 | in - 2759 | let spine' = elKSpineI loc recT cD cPsi spine (i - 1) (tK, Int.LF.Dot (Int.LF.Obj tN, s)) in - 2760 | Int.LF.App (tN, spine') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((PiKind ((TypDeclOpt _, _, _), _), _), _) - - File "src/core/lfrecon.ml", lines 2834-2863, characters 5-32: - 2834 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in - 2835 | (* cPsi |- tA : type - 2836 | * cPsi |- s' : cPsi' - 2837 | *) - 2838 | let ss = S.LF.invert s' in - ... - 2860 | in - 2861 | - 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in - 2863 | (Int.LF.App (tN', tS), tB') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 2824-2863, characters 2-32: - 2824 | ..match (spine, sP) with - 2825 | | (Apx.LF.Nil, _) -> - 2826 | let ss = S.LF.invert s' in - 2827 | let tQ = pruningTyp Location.ghost cD cPsi (Context.dctxToHat cPsi) sP (Int.LF.MShift 0, ss) in - 2828 | (* PROBLEM: [s'][ss] [s]P is not really P; in fact [ss][s]P may not exist; - ... - 2860 | in - 2861 | - 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in - 2863 | (Int.LF.App (tN', tS), tB') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (App (Root (loc, BVar x, App (_, _)), _), _) - - File "src/core/lfrecon.ml", lines 2943-2998, characters 5-8: - 2943 | .....begin match instantiation.contents with - 2944 | | None -> - 2945 | begin - 2946 | try - 2947 | let tA = Store.FVar.get x in - ... - 2995 | | _ -> - 2996 | throw loc (UnboundName x) - 2997 | end - 2998 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (IHead _|ISub _|ICtx _) - - File "src/core/lfrecon.ml", lines 2939-2998, characters 2-8: - 2939 | ..function - 2940 | | [] -> () - 2941 | | ((_, Apx.LF.(Root (loc, FVar x, spine)), - 2942 | Int.LF.(Inst {instantiation; typ = ClTyp (MTyp tP, cPsi); _})) :: cnstrs) -> - 2943 | begin match instantiation.contents with - ... - 2995 | | _ -> - 2996 | throw loc (UnboundName x) - 2997 | end - 2998 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Root (loc, FVar x, spine), - Inst {instantiation=instantiation; typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }):: - _ - - File "src/core/lfrecon.ml", lines 3020-3025, characters 7-99: - 3020 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = - 3021 | lookup_fcvar loc u - 3022 | in - 3023 | let cPhi = weakenAppropriately cD_d cPhi in - 3024 | let s'' = elSub loc cPsi s cPhi in - 3025 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FMVar (u, s''), Nil, Plicity.explicit)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 3027-3033, characters 7-98: - 3027 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (PTyp tA, cPhi); _ })) = - 3028 | lookup_fcvar loc x - 3029 | in - 3030 | let cPhi = weakenAppropriately cD_d cPhi in - 3031 | let s'' = elSub loc cPsi s cPhi in - 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in - 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 3017-3033, characters 4-98: - 3017 | ....match tM, Int.LF.(v.typ) with - 3018 | | Apx.LF.(Root (loc, FMVar (u, s), _nil_spine)), Int.LF.(ClTyp (MTyp _, cPsi)) -> - 3019 | assert (match _nil_spine with Apx.LF.Nil -> true | _ -> false); - 3020 | let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = - 3021 | lookup_fcvar loc u - ... - 3030 | let cPhi = weakenAppropriately cD_d cPhi in - 3031 | let s'' = elSub loc cPsi s cPhi in - 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in - 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Root (_, FMVar (u, s), _nil_spine), ClTyp ((PTyp _|STyp (_, _)), _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Check.cmo -c -impl src/core/check.ml) - File "src/core/check.ml", lines 471-475, characters 4-46: - 471 | ....function - 472 | | I.Root (_, h, tS, _) -> fmv_spine (fmv_head cD h) tS - 473 | | I.Lam (_, _, tM) -> fmv_normal cD tM - 474 | | I.LFHole _ -> cD - 475 | | I.Tuple (_, tuple) -> fmv_tuple cD tuple - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Clo _ - - File "src/core/check.ml", lines 490-492, characters 4-55: - 490 | ....function - 491 | | I.Nil -> cD - 492 | | I.App (tM, tS) -> fmv_spine (fmv_normal cD tM) tS - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - SClo _ - - File "src/core/check.ml", lines 500-503, characters 4-61: - 500 | ....function - 501 | | I.Null -> cD - 502 | | I.CtxVar (I.CtxOffset k) -> mark_ind cD k - 503 | | I.DDec (cPsi, decl) -> fmv_decl (fmv_dctx cD cPsi) decl - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/check.ml", lines 511-514, characters 4-38: - 511 | ....function - 512 | | I.Atom (_, _, tS) -> fmv_spine cD tS - 513 | | I.PiTyp ((decl, _, _), tA) -> fmv_typ (fmv_decl cD decl) tA - 514 | | I.Sigma trec -> fmv_trec cD trec - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/check.ml", lines 534-538, characters 4-68: - 534 | ....function - 535 | | (_, I.CObj (cPsi)) -> fmv_dctx cD cPsi - 536 | | (_, I.ClObj (phat, I.MObj tM)) -> fmv_normal cD tM - 537 | | (_, I.ClObj (phat, I.PObj h)) -> fmv_head (fmv_hat cD phat) h - 538 | | (_, I.ClObj (phat, I.SObj s)) -> fmv_subst (fmv_hat cD phat) s - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (MUndef|MV _)) - - File "src/core/check.ml", lines 553-556, characters 4-43: - 553 | ....function - 554 | | PatNil -> cD - 555 | | PatApp (_, pat, pat_spine) -> - 556 | fmv_pat_spine (fmv cD pat) pat_spine - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - - File "src/core/check.ml", lines 561-595, characters 4-10: - 561 | ....match (t, cD) with - 562 | | (I.MShift k, I.Empty) -> cD1' - 563 | | (I.MShift k, cD) - 564 | when k < 0 -> - 565 | Error.raise_violation "Contextual substitution ill-formed" - ... - 592 | else - 593 | id_map_ind cD1' ms cD - 594 | | _ -> id_map_ind cD1' ms cD - 595 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MDot (_, _), Dec (cD, DeclOpt _)) - - File "src/core/check.ml", line 618, characters 11-38: - 618 | |> fun (CTypDecl (u, tau, wf_tag)) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/check.ml", lines 747-771, characters 6-12: - 747 | ......match cPsi0 with - 748 | | Int.LF.Null -> () (* raise (Error (Location.ghost, IllegalParamTyp (cD, cPsi, tA))) *) - 749 | | Int.LF.CtxVar psi -> - 750 | (* tA is an instance of a schema block *) - 751 | let { Store.Cid.Schema.Entry.name; schema = Int.LF.Schema elems } = - ... - 768 | Unify.unifyTyp cD cPsi (tA, Substitution.LF.id) (tB0, Substitution.LF.id) - 769 | with - 770 | | _ -> checkParamTypeValid' (cPsi0', n + 1) - 771 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi0', TypDeclOpt _) - - File "src/core/check.ml", lines 776-796, characters 4-68: - 776 | ....match (mS, cKt) with - 777 | | (MetaNil, (Ctype _, _)) -> () - 778 | | (MetaApp (mO, mT, mS, plicity_app), (PiKind (_, I.Decl { typ = ctyp; plicity = plicity_pi; inductivity; _ }, cK), t)) -> - 779 | if Plicity.(plicity_app <> plicity_pi) - 780 | then Error.raise_violation "[checkMetaSpine] plicity mismatch"; - ... - 793 | Location.print_short loc - 794 | ) - 795 | end; - 796 | checkMetaSpine loc cD mS (cK, I.MDot (metaObjToMFront mO, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaNil, (PiKind (_, _, _), _)) - - File "src/core/check.ml", line 822, characters 20-56: - 822 | let checkCDecl cD (I.Decl { name = x; typ = ctyp; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/check.ml", lines 834-868, characters 4-35: - 834 | ....function - 835 | | TypBase (loc, c, mS) -> - 836 | let { Store.Cid.CompTyp.Entry.kind = cK; _ } = Store.Cid.CompTyp.get c in - 837 | checkMetaSpine loc cD mS (cK, C.m_id) - 838 | - ... - 865 | end; - 866 | checkTyp (I.Dec (cD, cdecl)) tau' - 867 | - 868 | | TypInd tau -> checkTyp cD tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _)|TypClo (_, _)) - - File "src/core/check.ml", line 880, characters 21-39: - 880 | let extend_mctx cD (x, (I.Decl d), t) = - ^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (x, DeclOpt { _ }, _) - - File "src/core/check.ml", lines 899-916, characters 12-15: - 899 | ............begin match e2 with - 900 | | Box (_, cM, cU) | AnnBox (_, cM, cU) -> - 901 | dprintf - 902 | begin fun p -> - 903 | p.fmt "[useIH] @[<v>check whether compatible IH exists@,\ - ... - 913 | | Option.None -> Total.filter cD cG cIH (loc, E) - 914 | end - 915 | | Hole _ -> Total.drop_arg cIH - 916 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, _)|LetTuple (_, _, _)| - Let (_, _, _)|Case (_, _, _, _)|Impossible (_, _)) - - File "src/core/check.ml", lines 1114-1276, characters 4-45: - 1114 | ....function - 1115 | | Var (loc, x) as e -> - 1116 | let (f,tau', _) = lookup cG x in - 1117 | Typeinfo.Comp.add loc (Typeinfo.Comp.mk_entry cD (tau', C.m_id)) - 1118 | (Format.asprintf "Var %a" (P.fmt_ppr_cmp_exp cD cG P.l0) e); - ... - 1273 | - 1274 | | AnnBox (_, cM, cT) -> - 1275 | checkMetaObj cD cM cT C.m_id; - 1276 | (None, TypBox (getLoc cM, cT), C.m_id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|LetTuple (_, _, _)|Let (_, _, _)| - Box (_, _, _)|Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)) - - File "src/core/check.ml", lines 1350-1357, characters 7-10: - 1350 | .......begin match (tau, theta) with - 1351 | | (TypArr (_, tau1, tau2), theta) -> - 1352 | checkPattern cD cG pat (tau1, theta); - 1353 | synPatSpine cD cG pat_spine (tau2, theta) - 1354 | | (TypPiBox (_, cdecl, tau), theta) -> - 1355 | let theta' = checkPatAgainstCDecl cD pat (cdecl, theta) in - 1356 | synPatSpine cD cG pat_spine (tau, theta') - 1357 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| - TypCross (_, _)|TypClo (_, _)|TypInd _), - _) - - File "src/core/check.ml", line 1373, characters 53-86: - 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (DeclOpt { _ }, _) - - File "src/core/check.ml", line 1373, characters 30-52: - 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = - ^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/check.ml", lines 1665-1667, characters 4-42: - 1665 | ....let { cD = cD'; cG = cG'; cIH = I.Empty } = h in - 1666 | let (cD, cG) = validate_contexts loc (cD, cD') (cG, cG') in - 1667 | proof mcid cD cG cIH total_decs p ttau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} - - File "src/core/check.ml", lines 1678-1743, characters 4-13: - 1678 | ....match d with - 1679 | | Intros hyp -> - 1680 | let tau = Whnf.cnormCTyp ttau in - 1681 | let (cD', cG', cIH', tau', t) = unroll cD cG cIH tau in - 1682 | dprintf - ... - 1740 | end; - 1741 | proof mcid cD cG cIH total_decs p (tau, Whnf.m_id) - 1742 | end - 1743 | args - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ImpossibleSplit _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Load.cmo -c -impl src/core/load.ml) - File "src/core/load.ml", line 63, characters 33-47: - 63 | Parser.Parsing.(only signature_file) - ^^^^^^^^^^^^^^ - Error: This expression has type - "Synprs.signature_file Parser.Parsing.t" = - "Parser.Parsing.state -> - Parser.Parsing.state * (Synprs.signature_file, exn) result" - but an expression was expected of type - "Parser.Parsing.state -> Parser.Parsing.state * ('a, exn) result" - The layout of Synprs.signature_file is any - because the .cmi file for Synprs.signature_file is missing. - But the layout of Synprs.signature_file must be a sublayout of value. - No .cmi file found containing Synprs.signature_file. - Hint: Adding "synprs" to your dependencies might help. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Translate.cmo -c -impl src/harpoon/translate.ml) - File "src/harpoon/translate.ml", lines 25-26, characters 5-58: - 25 | .....let LF.Dec (cG', Comp.CTypDecl (x, _, _)) = cG' in - 26 | (cD', cG', fun e -> Comp.Fn (Location.ghost, x, f e)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG', CTypDeclOpt _) - - File "src/harpoon/translate.ml", lines 29-33, characters 5-6: - 29 | .....let LF.Dec (cD', LF.Decl { name = x; plicity; _ }) = cD' in - 30 | ( cD' - 31 | , cG' - 32 | , fun e -> Comp.MLam (Location.ghost, x, f e, plicity) - 33 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt { _ }) - - File "src/harpoon/translate.ml", lines 56-68, characters 10-40: - 56 | ..........match cU with - 57 | | (ClTyp ( (MTyp _ | PTyp _), cPsi )) -> - 58 | let tM = - 59 | Root - 60 | ( Location.ghost - ... - 65 | in - 66 | ClObj (Context.dctxToHat (Whnf.cnormDCtx (cPsi, t)), MObj tM) - 67 | | CTyp _ -> - 68 | CObj (CtxVar (CtxOffset 1)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/harpoon/translate.ml", lines 131-149, characters 5-8: - 131 | .....let (cD', cG', LF.Empty, tau', t) = - 132 | Check.Comp.unroll cD cG LF.Empty tau - 133 | in - 134 | (* cD' |- t : cD - 135 | is a weakening meta-substitution *) - ... - 146 | P.(fmt_ppr_cmp_gctx cD_orig l0) cG_orig - 147 | end; - 148 | assert (Whnf.convMCtx cD_orig cD && Whnf.convGCtx (cG_orig, Whnf.m_id) (cG, t)); - 149 | f e - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', cG', Dec (_, WfRec (_, _, _)), _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Session.cmo -c -impl src/harpoon/session.ml) - File "src/harpoon/session.ml", line 276, characters 17-43: - 276 | (alt trust_totality_declaration numeric_totality_declaration))) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - Error: This expression has type - "Synprs.signature_totality_declaration Beluga_parser.Parser.Parsing.t" - = - "Beluga_parser.Parser.Parsing.state -> - Beluga_parser.Parser.Parsing.state * - (Synprs.signature_totality_declaration, exn) result" - but an expression was expected of type - "Beluga_parser.Parser.Parsing.state -> - Beluga_parser.Parser.Parsing.state * ('a, exn) result" - The layout of Synprs.signature_totality_declaration is any - because the .cmi file for Synprs.signature_totality_declaration is missing. - But the layout of Synprs.signature_totality_declaration must be a sublayout of value. - No .cmi file found containing Synprs.signature_totality_declaration. - Hint: Adding "synprs" to your dependencies might help. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Command.cmo -c -impl src/core/command.ml) - File "src/core/command.ml", line 240, characters 52-67: - 240 | let comp_expression_parser = Parser.Parsing.(only comp_expression) - ^^^^^^^^^^^^^^^ - Error: This expression has type - "Parser.Parsing.state -> - Parser.Parsing.state * (Synprs.comp_expression_object, exn) result" - but an expression was expected of type - "Parser.Parsing.state -> Parser.Parsing.state * ('a, exn) result" - The layout of Synprs.comp_expression_object is any - because the .cmi file for Synprs.comp_expression_object is missing. - But the layout of Synprs.comp_expression_object must be a sublayout of value. - No .cmi file found containing Synprs.comp_expression_object. - Hint: Adding "synprs" to your dependencies might help. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Coverage.cmo -c -impl src/core/coverage.ml) - File "src/core/coverage.ml", line 76, characters 26-46: - 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) - ^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/coverage.ml", lines 75-78, characters 2-5: - 75 | ..let Some (CTypDecl (_, tau, _)) = - 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) - 77 | in - 78 | tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (CTypDeclOpt _) - - File "src/core/coverage.ml", line 195, characters 20-45: - 195 | let gen_str cD cPsi (LF.Atom (_, a, _) as tP) = - ^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) - - File "src/core/coverage.ml", lines 214-218, characters 4-74: - 214 | ....match tA with - 215 | | LF.Atom _ -> LF.Root (Location.ghost, tH, tS, Plicity.explicit) - 216 | | LF.PiTyp ((LF.TypDecl (x, tB0), _, _), tB) -> - 217 | let tM = eta (tB0, s) LF.Nil in - 218 | LF.Lam (Location.ghost, x, eta (tB, S.LF.dot1 s) (LF.App (tM, tS))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/coverage.ml", lines 271-281, characters 4-58: - 271 | ....function - 272 | | MetaSub (cPsi, s, LF.STyp (_, cPhi)) -> - 273 | fprintf ppf "%a |- %a : %a" - 274 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi - 275 | (P.fmt_ppr_lf_sub cD cPsi P.l0) s - ... - 278 | fprintf ppf "%a |- %a : %a" - 279 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi - 280 | (P.fmt_ppr_lf_normal cD cPsi P.l0) tR - 281 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp sA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MetaSub (cPsi, s, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 304-308, characters 4-73: - 304 | ....function - 305 | | CovCtx cPsi -> fmt_ppr_covctx cD ppf cPsi - 306 | | CovSub (cPsi, s, LF.STyp (_, cPhi)) -> fmt_ppr_covsub cD ppf (cPsi, s, cPhi) - 307 | | CovGoal (cPsi, tR, sA) -> fmt_ppr_covgoal cD ppf (cPsi, tR, sA) - 308 | | CovPatt (cG, patt, ttau) -> fmt_ppr_covpatt cD ppf (cG, patt, ttau) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CovSub (cPsi, s, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 483-484, characters 7-73: - 483 | .......let Comp.TypBox (_, mT) = tau_sc in - 484 | check_meta_obj cD_p mO (Whnf.cnormMTyp (mT, t)) && is_id cD_p t cD - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| - TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) - - File "src/core/coverage.ml", lines 545-546, characters 9-44: - 545 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 543-547, characters 7-10: - 543 | .......begin - 544 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in - 545 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - 547 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 580-619, characters 5-8: - 580 | .....let LF.MPVar (_, s') as tH' = Whnf.cnormHead (tH', t) in - 581 | dprintf - 582 | begin fun p -> - 583 | p.fmt "[pre_match_head] @[<v>pvar - case\ - 584 | @,pattern: @[@[%a@]@ |- @[%a@]@]\ - ... - 616 | end; - 617 | SplitCand - 618 | (* CtxSplitCand (pre_match_dctx cD cD_p cPsi cPsi_p [] []) *) - 619 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (BVar _|Const _|MMVar (({instantiation={ _ }; constraints={ _ }; _ }, _), _)| - MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)|FVar _|FMVar (_, _)| - FPVar (_, _)|HClo (_, _, _)| - HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))) - - File "src/core/coverage.ml", lines 638-639, characters 9-44: - 638 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 636-640, characters 7-10: - 636 | .......begin - 637 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in - 638 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - 640 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 695-708, characters 5-59: - 695 | .....let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in - 696 | let covGoal' = - 697 | CovGoal - 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) - 699 | , tM, (tB, S.LF.dot1 s) - ... - 705 | , tN, (tB', S.LF.dot1 s') - 706 | ) - 707 | in - 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) - - File "src/core/coverage.ml", lines 694-708, characters 5-59: - 694 | .....let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in - 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in - 696 | let covGoal' = - 697 | CovGoal - 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) - ... - 705 | , tN, (tB', S.LF.dot1 s') - 706 | ) - 707 | in - 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) - - File "src/core/coverage.ml", lines 692-737, characters 2-8: - 692 | ..match (tM, tN) with - 693 | | (LF.Lam (_, x, tM), LF.Lam (_, _, tN)) -> - 694 | let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in - 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in - 696 | let covGoal' = - ... - 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) - 735 | - 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) - 737 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, x, tM), (Root (_, _, _, _)|LFHole (_, _, _)|Clo _|Tuple (_, _))) - - File "src/core/coverage.ml", lines 684-737, characters 2-8: - 684 | ..let MetaPatt (cPhi, tN, sA') = patt in - 685 | dprintf - 686 | begin fun p -> - 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ - 688 | @,pattern: @[%a@]@]" - ... - 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) - 735 | - 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) - 737 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaSub (_, _, _)|GenPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 683-737, characters 2-8: - 683 | ..let CovGoal (cPsi, tM, sA) = covGoal in - 684 | let MetaPatt (cPhi, tN, sA') = patt in - 685 | dprintf - 686 | begin fun p -> - 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ - ... - 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) - 735 | - 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) - 737 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 744-758, characters 5-18: - 744 | .....let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in - 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in - 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in - 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in - 748 | let sC2' = (tC2, LF.Dot (LF.Obj (tM'), s')) in - ... - 755 | (cPsi, tS, sB2') - 756 | (cPsi', tS', sC2') - 757 | matchCands' - 758 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 743-758, characters 5-18: - 743 | .....let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in - 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in - 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in - 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in - 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in - ... - 755 | (cPsi, tS, sB2') - 756 | (cPsi', tS', sC2') - 757 | matchCands' - 758 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 740-758, characters 2-18: - 740 | ..match (tS, tS') with - 741 | | (LF.Nil, LF.Nil) -> (matchCands, splitCands) - 742 | | (LF.App (tM, tS), LF.App (tM', tS')) -> - 743 | let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in - 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in - ... - 755 | (cPsi, tS, sB2') - 756 | (cPsi', tS', sC2') - 757 | matchCands' - 758 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Nil, (App (_, _)|SClo _)) - - File "src/core/coverage.ml", lines 793-797, characters 5-63: - 793 | .....let LF.TypDecl (_, tA1) = tdecl1 in - 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in - 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in - 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in - 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 792-797, characters 5-63: - 792 | .....let LF.TypDecl (_, tA0) = tdecl0 in - 793 | let LF.TypDecl (_, tA1) = tdecl1 in - 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in - 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in - 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in - 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 763-816, characters 2-74: - 763 | ..match ((s0, cPhi0), (s1, cPhi1)) with - 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) - 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> - 766 | if n = k - 767 | then (matchCands, splitCands) - ... - 813 | - 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) - 815 | - 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Shift _, _), - (Dot - (Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)| - FVar _|FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), - _), - _)) - - File "src/core/coverage.ml", lines 762-816, characters 2-74: - 762 | ..let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in - 763 | match ((s0, cPhi0), (s1, cPhi1)) with - 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) - 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> - 766 | if n = k - ... - 813 | - 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) - 815 | - 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MetaSub (cPsi1, s1, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 761-816, characters 2-74: - 761 | ..let CovSub (cPsi0, s0, (LF.STyp (r0, cPhi0) as sT0)) = covGoal in - 762 | let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in - 763 | match ((s0, cPhi0), (s1, cPhi1)) with - 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) - 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> - ... - 813 | - 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) - 815 | - 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CovSub (cPsi0, s0, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 819-830, characters 2-57: - 819 | ..match (f0, f1) with - 820 | | (LF.Head h0, LF.Head h1) -> - 821 | let tM0 = eta_expand (h0, tA0) in - 822 | let tM1 = eta_expand (h1, tA1) in - 823 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in - ... - 827 | | (LF.Obj tM0, LF.Obj tM1) -> - 828 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in - 829 | let patt = MetaPatt (cPhi1, tM1, (tA1, S.LF.id)) in - 830 | pre_match cD cD_p covGoal patt matchCands splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Head h0, (Undef|Obj _)) - - File "src/core/coverage.ml", lines 839-851, characters 5-18: - 839 | .....let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in - 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in - 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in - 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in - 843 | let sK2' = (tK2, LF.Dot (LF.Obj tM', s')) in - ... - 848 | (cPsi, tS, sK1') - 849 | (cPsi', tS', sK2') - 850 | matchCands' - 851 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 838-851, characters 5-18: - 838 | .....let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in - 839 | let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in - 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in - 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in - 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in - ... - 848 | (cPsi, tS, sK1') - 849 | (cPsi', tS', sK2') - 850 | matchCands' - 851 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 834-851, characters 2-18: - 834 | ..match ((tS1, sK1), (tS2, sK2)) with - 835 | | ((LF.Nil, (LF.Typ, _)), (LF.Nil, (LF.Typ, _))) -> - 836 | (matchCands, splitCands) - 837 | | ((LF.App (tM, tS), sK), (LF.App (tM', tS'), sK')) -> - 838 | let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in - ... - 848 | (cPsi, tS, sK1') - 849 | (cPsi', tS', sK2') - 850 | matchCands' - 851 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Nil, (Typ, _)), (Nil, (PiKind (_, _), _))) - - File "src/core/coverage.ml", lines 860-903, characters 2-17: - 860 | ..match (Whnf.whnfTyp sA, Whnf.whnfTyp sB) with - 861 | | ((LF.Atom (_, a, tS1), s1), (LF.Atom (loc, b, tS2), s2)) -> - 862 | let tK1 = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in - 863 | let tK2 = (Store.Cid.Typ.get b).Store.Cid.Typ.Entry.kind in - 864 | let tS1' = Whnf.normSpine (tS1, s1) in - ... - 900 | (trec1, s1) - 901 | (trec2, s2) - 902 | matchCands - 903 | splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Atom (_, a, tS1), s1), ((PiTyp (_, _)|Sigma _|TClo _), _)) - - File "src/core/coverage.ml", lines 907-927, characters 2-12: - 907 | ..match (srec1, srec2) with - 908 | | ((LF.SigmaLast (_, tA1), s1), (LF.SigmaLast (_, tA2), s2)) -> - 909 | pre_match_typ cD cD_p (cPsi, (tA1, s1)) (cPhi, (tA2, s2)) matchCands splitCands - 910 | - 911 | | ((LF.SigmaElem (x1, tA1, trec1), s1), (LF.SigmaElem (x2, tA2, trec2), s2)) -> - ... - 924 | (LF.DDec (cPsi, LF.TypDecl (x1, LF.TClo (tA1, s1)))) - 925 | (LF.DDec (cPhi, LF.TypDecl (x2, LF.TClo (tA2, s2)))) - 926 | (trec1, S.LF.dot1 s1) (trec2, S.LF.dot1 s2) - 927 | mC sC - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((SigmaLast (_, tA1), s1), (SigmaElem (_, _, _), _)) - - File "src/core/coverage.ml", lines 952-1004, characters 2-31: - 952 | ..match ((mO, mt), (mO_p, mtp)) with - 953 | | LF.((CObj cPsi, _), (CObj cPsi', _)) -> - 954 | pre_match_dctx cD cD_p cPsi cPsi' mC sC - 955 | | LF.((ClObj (_, clobj), ClTyp (cltyp, cPsi)), (ClObj (_, clobj'), ClTyp (cltyp', cPsi'))) -> - 956 | match ((clobj, cltyp), (clobj', cltyp')) with - ... - 1001 | (mobj cD_p) (loc', mO_p) - 1002 | (mtyp cD_p) mtp - 1003 | in - 1004 | Error.raise_violation s - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((CObj cPsi, _), ((MUndef|ClObj (_, _)|MV _), _)) - - File "src/core/coverage.ml", lines 1092-1104, characters 5-10: - 1092 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1095 | let t2 = LF.MDot (mO, t) in - 1096 | let t2' = LF.MDot (mO', t') in - ... - 1101 | (pS, (tau2, t2)) - 1102 | (pS', (tau2', t2')) - 1103 | mC1 - 1104 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1091-1104, characters 5-10: - 1091 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1092 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1095 | let t2 = LF.MDot (mO, t) in - ... - 1101 | (pS, (tau2, t2)) - 1102 | (pS', (tau2', t2')) - 1103 | mC1 - 1104 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1110-1122, characters 5-10: - 1110 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1113 | let t2 = LF.MDot (mO, t) in - 1114 | let t2' = LF.MDot (mO', t') in - ... - 1119 | (pS, (tau2, t2)) - 1120 | (pS', (tau2', t2')) - 1121 | mC1 - 1122 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1109-1122, characters 5-10: - 1109 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1110 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1113 | let t2 = LF.MDot (mO, t) in - ... - 1119 | (pS, (tau2, t2)) - 1120 | (pS', (tau2', t2')) - 1121 | mC1 - 1122 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1128-1134, characters 5-84: - 1128 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1129 | let tau1 = LF.CTyp w in - 1130 | let tau1' = LF.CTyp w' in - 1131 | let t2 = LF.MDot (mO, t) in - 1132 | let t2' = LF.MDot (mO', t')in - 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in - 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1127-1134, characters 5-84: - 1127 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1128 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1129 | let tau1 = LF.CTyp w in - 1130 | let tau1' = LF.CTyp w' in - 1131 | let t2 = LF.MDot (mO, t) in - 1132 | let t2' = LF.MDot (mO', t')in - 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in - 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1139-1147, characters 5-51: - 1139 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in - 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in - 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in - 1143 | let t2 = LF.MDot (mO, t) in - 1144 | let t2' = LF.MDot (mO', t') in - 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in - 1146 | match_spines (cD, cG) (cD_p, cG_p) - 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1138-1147, characters 5-51: - 1138 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1139 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in - 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in - 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in - 1143 | let t2 = LF.MDot (mO, t) in - 1144 | let t2' = LF.MDot (mO', t') in - 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in - 1146 | match_spines (cD, cG) (cD_p, cG_p) - 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1186-1224, characters 2-8: - 1186 | ..match Whnf.whnfTyp sA with - 1187 | | (LF.PiTyp ((LF.TypDecl (u, tA), _, _), tB), s) -> - 1188 | (* cPsi' |- Pi x:A.B <= typ - 1189 | cPsi |- s <= cPsi' - 1190 | cPsi |- tN <= [s]tA - ... - 1221 | Some LF.Nil - 1222 | with - 1223 | | U.Failure _ -> None - 1224 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 1343-1349, characters 2-29: - 1343 | ..let LF.TypDecl (_, tA) = Context.ctxDec cPsi i in (* x_i : tA in cPsi *) - 1344 | (* We call expand_head_sigma here because it might be *projections* - 1345 | of the bound variable that are relevant to the matching. - 1346 | *) - 1347 | expand_head_sigma (LF.BVar i, tA) - 1348 | |> List.map (fun (tH, tA) -> (tH, tA, 0)) - 1349 | |> genAllObj (cD, cPsi, tP) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", line 1484, characters 17-61: - 1484 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), ms) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', ((Null|CtxVar _), _, (_, _)), _) - - File "src/core/coverage.ml", lines 1468-1493, characters 2-14: - 1468 | ..match tA with - 1469 | | LF.Atom _ -> - 1470 | genPVar cov_problem @ genBVars cov_problem - 1471 | | LF.Sigma trec -> - 1472 | Error.raise_not_implemented "[genBCovGoals] not implemented for Sigma types" - ... - 1490 | in - 1491 | (cD', cg', ms) - 1492 | end - 1493 | cg_list - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/coverage.ml", line 1544, characters 17-60: - 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', ((Null|CtxVar _), _, (_, _)), _) - - File "src/core/coverage.ml", lines 1541-1552, characters 5-16: - 1541 | .....let LF.TypDecl (x, _) = tdecl in - 1542 | let cov_goals = genCovGoals (cD, LF.DDec (cPsi, tdecl), tB) in - 1543 | List.map - 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> - 1545 | ( cD' - ... - 1549 | , t - 1550 | ) - 1551 | end - 1552 | cov_goals - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 1512-1552, characters 2-16: - 1512 | ..match tA with - 1513 | | LF.Atom (_, a, tS) -> - 1514 | let g_pv = genPVar cov_problem in (* (cD', cg, ms) list *) - 1515 | dprintf - 1516 | begin fun p -> - ... - 1549 | , t - 1550 | ) - 1551 | end - 1552 | cov_goals - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/coverage.ml", lines 1582-1700, characters 5-8: - 1582 | .....begin match mc with - 1583 | | Eqn (CovSub (cPsi, s, sT), MetaSub (cPsi_p, s_p, sT_p)) -> - 1584 | let cT = LF.ClTyp (sT, cPsi) in - 1585 | let cT_p = LF.ClTyp (sT_p, cPsi_p) in - 1586 | let cM = (Location.ghost, LF.ClObj (Context.dctxToHat cPsi, LF.SObj s)) in - ... - 1697 | NotSolvable - 1698 | end - 1699 | end - 1700 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Eqn (CovSub (cPsi, s, sT), (MetaPatt (_, _, _)|GenPatt (_, _, _))) - - File "src/core/coverage.ml", lines 1725-1730, characters 5-11: - 1725 | .....let CovGoal (cPsi', tR', sA') as covG = CovGoal (cPsi, tR, (tA, S.LF.id)) in - 1726 | (* let MetaPatt (cPhi, _, sB') = patt in *) - 1727 | (* let (mL', sL') = pre_match_typ cD cD_p (cPsi, sA') (cPhi, sB') matchL' splitL' in *) - 1728 | (* let (mL', sL') = pre_match_dctx cD cD_p cPsi cPhi matchL' splitL' in *) - 1729 | let result = pre_match cD cD_p covG patt matchL' splitL' in - 1730 | result - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 1719-1741, characters 2-94: - 1719 | ..match splitL with - 1720 | | [] -> (matchL, []) - 1721 | | Split (CovGoal (cPsi, tR, sA), patt) :: splits -> - 1722 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in - 1723 | let tA = Whnf.normTyp sA in - ... - 1738 | pre_match_dctx cD cD_p cPsi' cPsi_patt matchL' splitL' - 1739 | | SplitPat ((Comp.PatFVar (loc, x), (tau, t)), pPatt_p) :: splits -> - 1740 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in - 1741 | (matchL', SplitPat ((Comp.PatFVar (loc, x), (tau, Whnf.mcomp t ms)), pPatt_p) :: splitL') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Split ((CovCtx _|CovPatt (_, _, _)), _)::_ - - File "src/core/coverage.ml", lines 1973-2000, characters 5-6: - 1973 | .....let (cPsi, (LF.Atom (_, a, _) as tP, s)) = - 1974 | Whnf.lowerTyp (LF.CtxVar (LF.CtxOffset (k + d))) (tA, s') - 1975 | in - 1976 | (* bp : Context substitution associated with declaration is off by 1 *) - 1977 | let (ss', cPsi') = Subord.thin' cD'' a cPsi in - ... - 1997 | in - 1998 | ( LF.Dec (cD'', mdec) - 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) - 2000 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cPsi, ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _)) - - File "src/core/coverage.ml", lines 1964-2000, characters 2-6: - 1964 | ..match decls with - 1965 | | LF.Empty -> (cD', S.LF.id) - 1966 | | LF.(Dec (decls, TypDecl (x, tA))) -> - 1967 | let x = NameGen.renumber names x in - 1968 | let names = x :: names in - ... - 1997 | in - 1998 | ( LF.Dec (cD'', mdec) - 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) - 2000 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (decls, TypDeclOpt _) - - File "src/core/coverage.ml", line 1963, characters 28-52: - 1963 | let rec decTomdec names cD' (LF.CtxOffset k as cpsi) (d, decls) = - ^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) - - File "src/core/coverage.ml", line 2096, characters 17-48: - 2096 | let genCtx names (LF.Dec (cD', LF.Decl _) as cD) cpsi = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt { _ }) - - File "src/core/coverage.ml", line 2123, characters 23-82: - 2123 | let genContextGoals cD (x, LF.CTyp (Option.Some schema_cid), plicity, inductivity) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (x, CTyp None, _, _) - - File "src/core/coverage.ml", lines 2144-2178, characters 5-87: - 2144 | .....let LF.TypDecl (x, tA) = decl in - 2145 | let s = LF.SVar (2, 0, S.LF.id) in - 2146 | let mT = LF.ClTyp (LF.STyp (r0, cPhi'), cPsi) in - 2147 | let name = Whnf.newMTypName mT in - 2148 | let cD' = - ... - 2175 | in - 2176 | let cPsi' = Whnf.cnormDCtx (cPsi, LF.MShift 2) in - 2177 | let cPhi'' = Whnf.cnormDCtx (cPhi, LF.MShift 2) in - 2178 | [(cD'', CovSub (cPsi', LF.Dot (LF.Obj tM, s), LF.STyp (r0, cPhi'')), LF.MShift 2)] - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 2186-2239, characters 2-8: - 2186 | ..match cT with - 2187 | | LF.ClTyp (clTyp, cPsi) -> - 2188 | begin match clTyp with - 2189 | | LF.MTyp tA -> - 2190 | dprintf - ... - 2236 | , Atomic - 2237 | ) - 2238 | end - 2239 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/coverage.ml", lines 2249-2250, characters 11-60: - 2249 | ...........let LF.Decl { name = x; typ = cU; plicity; inductivity } = d in - 2250 | genContextGoals cD' (x, cU, plicity, inductivity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/coverage.ml", lines 2242-2278, characters 2-58: - 2242 | ..match (cv_list, cD) with - 2243 | | ([], _) -> NoCandidate - 2244 | | ([LF.CtxOffset j], LF.Dec (cD', d)) -> - 2245 | if j = k - 2246 | then - ... - 2275 | SomeCtxCands ctx_goals' - 2276 | end - 2277 | else - 2278 | best_ctx_cand (cD', cv_list) (k + 1) (d :: cD_tail) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxOffset j::[], Empty) - - File "src/core/coverage.ml", lines 2308-2309, characters 25-35: - 2308 | .........................let LF.Root (_, tH, _, _) = tR in - 2309 | LF.PObj tH - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/coverage.ml", lines 2302-2309, characters 22-35: - 2302 | ......................match cT with - 2303 | (* gonna be a ClTyp because we're in the CovGoal branch *) - 2304 | | LF.ClTyp (LF.MTyp _, _) -> LF.MObj tR - 2305 | | LF.ClTyp (LF.PTyp _, _) -> - 2306 | (* ensure that PTyp is added as a PObj to the - 2307 | msub; otherwise normalization WILL crash. *) - 2308 | let LF.Root (_, tH, _, _) = tR in - 2309 | LF.PObj tH - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/core/coverage.ml", lines 2294-2331, characters 17-50: - 2294 | .................match cg with - 2295 | | CovGoal (cPsi', tR, sA') -> - 2296 | dprintf - 2297 | begin fun p -> - 2298 | p.fmt "[best_cand] generated covgoal @[%a@]" - ... - 2328 | , Whnf.cnormClTyp (sT, LF.MShift k) - 2329 | ) - 2330 | in - 2331 | TermCandidate (cD'', cg', ms0). - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovPatt (_, _, _)) - - File "src/core/coverage.ml", lines 2335-2348, characters 11-17: - 2335 | ...........match best_cand (cD', mvlist') (k + 1) (md :: cD_tail) with - 2336 | | NoCandidate -> SomeTermCands (dep0, cov_goals0) - 2337 | | SomeTermCands (dep, cov_goals) -> - 2338 | begin match dep, dep0 with - 2339 | | Dependent, Atomic -> SomeTermCands (dep, cov_goals) - ... - 2345 | then SomeTermCands (dep, cov_goals) - 2346 | else SomeTermCands (dep0, cov_goals0) - 2347 | *) - 2348 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - SomeCtxCands _ - - File "src/core/coverage.ml", lines 2282-2356, characters 2-55: - 2282 | ..match (mv_list, cD) with - 2283 | | ([], _) -> NoCandidate - 2284 | | (LF.Offset j :: mvlist', LF.(Dec (cD', (Decl { typ = cT; _ } as md)))) -> - 2285 | if k = j - 2286 | then - ... - 2353 | best_cand (cD', mvlist') (k + 1) (md :: cD_tail) - 2354 | end - 2355 | else - 2356 | best_cand (cD', mv_list) (k + 1) (md :: cD_tail) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Offset j::mvlist', Dec (cD', DeclOpt _)) - - File "src/core/coverage.ml", lines 2430-2438, characters 7-13: - 2430 | .......match cl with - 2431 | | LF.PTyp _ -> - 2432 | let v = Whnf.newMPVar (Some u) (LF.Empty, cPsi', tP') plicity inductivity in - 2433 | LF.(PObj (mpvar ((v, Whnf.m_id), S.LF.id))) - 2434 | | LF.MTyp _ -> - 2435 | LF.MObj - 2436 | (ConvSigma.etaExpandMMVstr - 2437 | Location.ghost LF.Empty cPsi' (tP', S.LF.id) plicity (Some u) (u :: names) - 2438 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/coverage.ml", line 2581, characters 16-42: - 2581 | begin fun (CovGoal (cPsi', tR, sA')) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 2630-2632, characters 10-46: - 2630 | ..........match tC with - 2631 | | MTyp _ -> fun sA -> MTyp (TClo sA) - 2632 | | PTyp _ -> fun sA -> PTyp (TClo sA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/coverage.ml", lines 2626-2667, characters 5-8: - 2626 | .....begin match mT with - 2627 | | LF.(ClTyp (tC, cPsi)) -> - 2628 | let f = - 2629 | let open LF in - 2630 | match tC with - ... - 2664 | , t - 2665 | ) - 2666 | end - 2667 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp None - - File "src/core/coverage.ml", lines 2714-2762, characters 2-55: - 2714 | ..function - 2715 | | [] -> vlist - 2716 | | Split (CovGoal (_, LF.Root (_, LF.MVar (u, _), _, _), _), _) :: sl -> - 2717 | let (pvlist, cvlist, mvlist) = vlist in - 2718 | if List.mem u mvlist - ... - 2759 | let (pvlist, cvlist, mvlist) = vlist in - 2760 | if List.mem x pvlist - 2761 | then mvInSplit cD vlist sl - 2762 | else mvInSplit cD (x :: pvlist, cvlist, mvlist) sl - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - SplitCtx ((Null|DDec (_, _)), _)::_ - - File "src/core/coverage.ml", line 2773, characters 30-44: - 2773 | begin fun (LF.Offset k) (LF.Offset k') -> - ^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Inst {instantiation={ _ }; constraints={ _ }; _ } - - File "src/core/coverage.ml", line 2773, characters 16-29: - 2773 | begin fun (LF.Offset k) (LF.Offset k') -> - ^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Inst {instantiation={ _ }; constraints={ _ }; _ } - - File "src/core/coverage.ml", line 2784, characters 33-50: - 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> - ^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) - - File "src/core/coverage.ml", line 2784, characters 16-32: - 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> - ^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) - - File "src/core/coverage.ml", line 2867, characters 55-73: - 2867 | Prettycov.fmt_ppr_cov_goals (List.map (fun (TermCandidate cg) -> cg) cgoals) - ^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxCandidate (_, _, _) - - File "src/core/coverage.ml", lines 2903-2908, characters 2-33: - 2903 | ..function - 2904 | | Comp.PatNil -> Comp.PatNil - 2905 | | Comp.PatApp (loc, pat, pS) -> - 2906 | let pat' = subst_pattern (pat_r, pv) pat in - 2907 | let pS' = subst_pattern_spine (pat_r, pv) pS in - 2908 | Comp.PatApp (loc, pat', pS') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - - File "src/core/coverage.ml", line 2979, characters 32-45: - 2979 | let best_pv_cand names (cD, cG) (x :: pvlist) = - ^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/coverage.ml", lines 3002-3013, characters 2-40: - 3002 | ..match sl with - 3003 | | [] -> pvlist - 3004 | | Split (CovGoal _, _) :: sl -> pvInSplitCand sl pvlist - 3005 | | Split (CovSub _, _) :: sl -> pvInSplitCand sl pvlist - 3006 | | SplitCtx _ :: sl -> pvInSplitCand sl pvlist - ... - 3010 | ); - 3011 | if List.mem x pvlist - 3012 | then pvInSplitCand sl pvlist - 3013 | else pvInSplitCand sl (x :: pvlist) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Split ((CovCtx _|CovPatt (_, _, _)), _)::_ - - File "src/core/coverage.ml", lines 3223-3231, characters 2-27: - 3223 | ..let CovPatt (cG', pat', ttau') = covGoal in - 3224 | dprintf - 3225 | begin fun p -> - 3226 | p.fmt "[gen_candidates] @[<v>pat = @[%a@]@,pat' = @[%a@]@]" - 3227 | (P.fmt_ppr_cmp_pattern cD_p cG_p P.l0) pat - 3228 | (P.fmt_ppr_cmp_pattern cD_p cG' P.l0) pat' - 3229 | end; - 3230 | let (ml, sl) = match_pattern (cD, cG') (cD_p, cG_p) (pat', ttau') (pat, ttau) [] [] in - 3231 | Cand (cD_p, cG_p, ml, sl) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovGoal (_, _, (_, _))|CovCtx _|CovSub (_, _, _)) - - File "src/core/coverage.ml", line 3222, characters 33-66: - 3222 | let gen_candidate loc cD covGoal (cD_p, GenPatt (cG_p, pat, ttau)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_p, (MetaPatt (_, _, (_, _))|MetaSub (_, _, _))) - - File "src/core/coverage.ml", lines 3399-3434, characters 2-50: - 3399 | ..function - 3400 | | LF.Empty -> false - 3401 | | LF.Dec (cD', (LF.Decl { typ = LF.ClTyp (LF.MTyp tA, cPsi); _} as cdecl)) -> - 3402 | begin - 3403 | try - ... - 3431 | print_string "Unable to prove given type is empty\n"; check_emptiness cD' - 3432 | end - 3433 | - 3434 | | LF.Dec (cD', LF.Decl _) -> check_emptiness cD' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt _) - - File "src/core/coverage.ml", lines 3437-3447, characters 2-8: - 3437 | ..function - 3438 | | LF.Empty -> false - 3439 | | LF.Dec (cG, Comp.CTypDecl (_, tau, _)) -> - 3440 | begin - 3441 | try - ... - 3444 | | _ -> check_empty_comp names cD cG - 3445 | with - 3446 | | _ -> check_empty_comp names cD cG - 3447 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Automation.cmo -c -impl src/harpoon/automation.ml) - File "src/harpoon/automation.ml", lines 107-115, characters 7-10: - 107 | .......let LF.ClTyp (_, cPsi) as cU = Whnf.cnormMTyp (cU, t) in - 108 | let head = MVar (Offset idx, S.LF.id) in - 109 | let clobj = MObj (Root (Location.ghost, head, Nil, Plicity.explicit)) in - 110 | let psi_hat = Context.dctxToHat cPsi in - 111 | Box - 112 | ( Location.ghost - 113 | , (Location.ghost, ClObj (psi_hat, clobj)) - 114 | , cU - 115 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Prover.cmo -c -impl src/harpoon/prover.ml) - File "src/harpoon/prover.ml", line 241, characters 38-65: - 241 | let parser = Parsing.(only (maybe interactive_harpoon_command)) in - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Error: This expression has type - "Beluga_parser.Parser.Parsing.state -> - Beluga_parser.Parser.Parsing.state * - (Synprs.harpoon_repl_command, exn) result" - but an expression was expected of type - "Beluga_parser.Parser.Parsing.state -> - Beluga_parser.Parser.Parsing.state * ('a, exn) result" - The layout of Synprs.harpoon_repl_command is any - because the .cmi file for Synprs.harpoon_repl_command is missing. - But the layout of Synprs.harpoon_repl_command must be a sublayout of value. - No .cmi file found containing Synprs.harpoon_repl_command. - Hint: Adding "synprs" to your dependencies might help. - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Reconstruct.cmo -c -impl src/core/reconstruct.ml) - File "src/core/reconstruct.ml", lines 55-179, characters 20-41: - 55 | ....................function - 56 | | NotImplemented f -> - 57 | Format.dprintf "@[<v 2>Not implemented:@,@[%a@]@]" - 58 | f () - 59 | | MCtxIllformed cD -> - ... - 176 | @, @[%a@]\ - 177 | @]" - 178 | P.(fmt_ppr_cmp_meta_obj cD l0) mC_p - 179 | P.(fmt_ppr_cmp_meta_obj cD l0) mC - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - IllegalSubstMatch - - File "src/core/reconstruct.ml", lines 217-218, characters 2-45: - 217 | ..function - 218 | | Int.LF.Decl d -> Name.mk_some_name d.name - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/reconstruct.ml", lines 258-267, characters 4-26: - 258 | ....match tau, n with - 259 | | _, 0 -> 0 - 260 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; inductivity = Inductivity.Inductive; _ }, tau), n -> - 261 | Error.raise_violation (Format.asprintf "[%s] impossible LF.Inductive" __FUNCTION__) - 262 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Implicit; _ }, tau), n -> - 263 | 1 + skip tau n (* implicits are free *) - 264 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Explicit; _ }, tau), n -> - 265 | 1 + skip tau (n - 1) (* explicits pi-types cost 1 *) - 266 | | I.TypArr (_, _, tau), n -> - 267 | 1 + skip tau (n - 1).............................. - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypPiBox (_, DeclOpt _, _), 1) - - File "src/core/reconstruct.ml", lines 292-298, characters 9-92: - 292 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid'); _ }) = Store.FCVar.get psi in - 293 | if Id.cid_schema_equal s_cid s_cid' - 294 | then Int.LF.CtxVar (Int.LF.CtxName psi) - 295 | else - 296 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get s_cid in - 297 | let c_var' = Int.LF.CtxName psi in - 298 | Check.LF.(CtxVarMismatch (cD, c_var', name, schema) |> throw (Name.location psi)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=CTyp None; _ }) - - File "src/core/reconstruct.ml", lines 343-361, characters 7-10: - 343 | .......let Int.LF.CTyp (Some s_cid) = Int.LF.(v.typ) in - 344 | begin - 345 | let cPsi = elDCtxAgainstSchema loc Lfrecon.Pibox cD cPsi s_cid in - 346 | Unify.instantiateCtxVar (Int.LF.(v.instantiation), cPsi); - 347 | match Context.ctxVar cPsi with - ... - 358 | } - 359 | ) - 360 | | _ -> () - 361 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp None - - File "src/core/reconstruct.ml", lines 396-400, characters 2-23: - 396 | ..match cG, k with - 397 | | Int.LF.Dec (_cG', Int.Comp.CTypDecl (_, tau, _)), 1 -> - 398 | Whnf.cnormCTyp (tau, Whnf.m_id) - 399 | | Int.LF.Dec (cG', Int.Comp.CTypDecl (_, _tau, _)), k -> - 400 | lookup cG' (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dec (cG', CTypDeclOpt _), _) - - File "src/core/reconstruct.ml", lines 410-416, characters 2-32: - 410 | ..function - 411 | | Apx.LF.Empty -> Int.LF.Empty - 412 | | Apx.LF.Dec (ctx, Apx.LF.TypDecl (name, typ)) -> - 413 | let ctx' = elTypDeclCtx cD ctx in - 414 | let tA = Lfrecon.elTyp Lfrecon.Pi cD (Context.projectCtxIntoDctx ctx') typ in - 415 | let typDecl' = Int.LF.TypDecl (name, tA) in - 416 | Int.LF.Dec (ctx', typDecl') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (ctx, TypDeclOpt _) - - File "src/core/reconstruct.ml", line 459, characters 20-52: - 459 | let elCDecl recT cD (Apx.LF.Decl (u, ctyp, plicity)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt _ - - File "src/core/reconstruct.ml", lines 519-557, characters 4-26: - 519 | ....function - 520 | | (Int.LF.Typ, _s) -> - 521 | Int.LF.Nil - 522 | - 523 | | (Int.LF.(PiKind ((TypDecl (u, tA1), depend, plicity), kK), s)) -> - ... - 554 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp (tA1, s)) - 555 | end; - 556 | let tS = genSpine (kK, Int.LF.Dot (Int.LF.Obj tR, s)) in - 557 | Int.LF.App (tR, tS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/reconstruct.ml", lines 563-575, characters 2-8: - 563 | ..function - 564 | | Int.LF.Atom (_, a, _) -> - 565 | mgAtomicTyp cD cPsi a (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind - 566 | - 567 | | Int.LF.Sigma trec -> - ... - 572 | Int.LF.PiTyp - 573 | ( (tdecl', depend, plicity) - 574 | , mgTyp cD (Int.LF.DDec (cPsi, tdecl')) tA - 575 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/reconstruct.ml", lines 578-580, characters 2-41: - 578 | ..function - 579 | | Int.LF.TypDecl (x, tA) -> - 580 | Int.LF.TypDecl (x, mgTyp cD cPsi tA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/reconstruct.ml", lines 637-640, characters 5-18: - 637 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = - 638 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) - 639 | in - 640 | Int.LF.PObj h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Root (_, h, (App (_, _)|SClo (_, _)), _) - - File "src/core/reconstruct.ml", lines 647-650, characters 5-18: - 647 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = - 648 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) - 649 | in - 650 | Int.LF.PObj h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Root (_, h, (App (_, _)|SClo (_, _)), _) - - File "src/core/reconstruct.ml", lines 711-727, characters 2-104: - 711 | ..match (s, cKt) with - 712 | | (Apx.Comp.MetaNil, (Int.Comp.Ctype _, _)) -> - 713 | Int.Comp.MetaNil - 714 | - 715 | | (Apx.Comp.MetaNil, (Int.Comp.PiKind (_, cdecl, _cK), theta)) -> - ... - 724 | - 725 | | (Apx.Comp.MetaApp (m, s), (Int.Comp.PiKind (_, Int.LF.Decl { typ = ctyp; _ }, cK), theta)) -> - 726 | let (mO, t') = elMetaObjCTyp loc cD m theta ctyp in - 727 | Int.Comp.MetaApp(mO, Whnf.cnormMTyp (ctyp, theta), elMetaSpine loc cD s (cK, t'), Plicity.explicit) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaApp (_, _), (PiKind (_, DeclOpt _, _), _)) - - File "src/core/reconstruct.ml", lines 798-803, characters 4-65: - 798 | ....function - 799 | | (Int.Comp.Ctype _, _t) -> Int.Comp.MetaNil - 800 | | (Int.Comp.PiKind (loc', Int.LF.Decl { name = u; typ = cU; plicity; inductivity }, cK), t) -> - 801 | let (mO, t') = Whnf.dotMMVar loc cD t (u, cU, plicity, inductivity) in - 802 | let mS = genMetaSpine (cK, t') in - 803 | Int.Comp.MetaApp (mO, Whnf.cnormMTyp (cU, t), mS, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind (loc', DeclOpt _, _), _) - - File "src/core/reconstruct.ml", lines 830-842, characters 2-49: - 830 | ..match cPsi with - 831 | | Int.LF.CtxVar (Int.LF.CtxOffset psi_var) -> - 832 | let (n, sW) = Whnf.mctxCDec cD psi_var in - 833 | let v = - 834 | let open Int.LF in - ... - 839 | | Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) -> - 840 | let cPsi' = mgCtx cD' (cD, cPsi) in - 841 | let tA' = mgTyp cD' cPsi' tA in - 842 | Int.LF.DDec (cPsi', Int.LF.TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/reconstruct.ml", lines 921-939, characters 7-54: - 921 | .......let Int.Comp.TypBox (_, mT) = tau_p' in - 922 | dprintf - 923 | begin fun p -> - 924 | p.fmt "[synPatRefine] @[<v>unifying scrutinee and pattern:\ - 925 | @,mC = @[%a@]\ - ... - 936 | (mT, Whnf.m_id) - 937 | with - 938 | | Unify.Failure msg -> - 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| - TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) - - File "src/core/reconstruct.ml", lines 916-939, characters 4-54: - 916 | ....match caseT with - 917 | | DataObj -> () (* not dependent pattern matching; nothing to do *) - 918 | | IndexObj (Int.Comp.(PatMetaObj (_, mC_p) | PatAnn (_, PatMetaObj (_, mC_p), _, _)), mC) -> - 919 | let mC_p = Whnf.cnormMetaObj (mC_p, Whnf.m_id) in - 920 | (* tau_p' _has_ to be a box type if caseT is an IndexObj *) - ... - 936 | (mT, Whnf.m_id) - 937 | with - 938 | | Unify.Failure msg -> - 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - IndexObj - (PatAnn - (_, - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, _)| - PatAnn (_, _, _, _)), _, _), - _) - - File "src/core/reconstruct.ml", lines 1369-1376, characters 7-22: - 1369 | .......match id with - 1370 | | None -> true - 1371 | | Some Apx.LF.Id -> true - 1372 | | Some Apx.LF.EmptySub -> - 1373 | let (_, cPsi, _, cPhi) = Whnf.mctxSDec cD k in - 1374 | match cPhi, cPsi with - 1375 | | Int.LF.Null, Int.LF.Null -> true - 1376 | | _ -> false - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (Dot (_, _)|SVar (_, _)|FSVar (_, _)) - - File "src/core/reconstruct.ml", lines 1393-1416, characters 6-9: - 1393 | ......let Apx.LF.MInst (Int.LF.SObj s0, Int.LF.ClTyp (Int.LF.STyp (cl, cPsi), cPhi)) = s in - 1394 | let cPhi2 = Lfrecon.elDCtx Lfrecon.Pibox cD phi2 in - 1395 | let s' = Lfrecon.elSub loc Lfrecon.Pibox cD cPhi2 s' cl cPhi in - 1396 | let s0' = Substitution.LF.comp s0 s' in - 1397 | begin match s0' with - ... - 1413 | else - 1414 | throw loc IllegalSubstMatch - 1415 | | _ -> throw loc IllegalSubstMatch - 1416 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MInst (SObj s0, ClTyp ((MTyp _|PTyp _), _)) - - File "src/core/reconstruct.ml", lines 1421-1442, characters 5-8: - 1421 | .....begin - 1422 | match cpsi with - 1423 | | Apx.LF.CtxVar (ctxvar) -> - 1424 | let c_var = Lfrecon.elCtxVar ctxvar in - 1425 | let cM = (loc', Int.LF.CObj (Int.LF.CtxVar c_var)) in - ... - 1439 | end - 1440 | |> throw loc - 1441 | end - 1442 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Null|CtxHole|DDec (_, _)) - - File "src/core/reconstruct.ml", lines 1194-1458, characters 2-6: - 1194 | ..match i with - 1195 | | Apx.Comp.Var (loc, offset) -> - 1196 | let tau = lookup cG offset in - 1197 | dprintf - 1198 | begin fun p -> - ... - 1455 | , ( Int.Comp.TypCross (loc, ttaus') - 1456 | , C.m_id - 1457 | ) - 1458 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Box - (_, (_, ClObj (_, Dot (Head h, (Id|Dot (_, _)|SVar (_, _)|FSVar (_, _)))))) - - File "src/core/reconstruct.ml", lines 1524-1600, characters 2-8: - 1524 | ..match (pat, ttau) with - 1525 | | (Apx.Comp.PatVar (loc, name, x), (tau, theta)) -> - 1526 | let tau' = Whnf.cnormCTyp (tau, theta) in - 1527 | dprintf - 1528 | begin fun p -> - ... - 1597 | | Unify.Failure msg -> - 1598 | dprint (fun () -> "Unify Error: " ^ msg); - 1599 | raise (Check.Comp.Error (loc, Check.Comp.SynMismatch (cD, ttau, ttau'))) - 1600 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatFVar (_, _), _) - - File "src/core/reconstruct.ml", lines 1603-1613, characters 2-57: - 1603 | ..function - 1604 | | Apx.Comp.PatAnn (loc, pat, tau) -> - 1605 | let tau' = elCompTyp cD tau in - 1606 | let (cG', pat') = elPatChk cD cG pat (tau', Whnf.m_id) in - 1607 | (cG', Int.Comp.PatAnn (loc, pat', tau', Plicity.explicit), (tau', Whnf.m_id)) - ... - 1610 | let { Store.Cid.CompConst.Entry.typ = tau; _ } = Store.Cid.CompConst.get c in - 1611 | dprintf (fun p -> p.fmt "[elPat] PatConst = %s@\n" (R.render_cid_comp_const c)); - 1612 | let (cG1, pat_spine', ttau') = elPatSpine cD cG pat_spine (tau, Whnf.m_id) in - 1613 | (cG1, Int.Comp.PatConst (loc, c, pat_spine'), ttau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatMetaObj (_, _)|PatFVar (_, _)|PatVar (_, _, _)|PatTuple (_, _)) - - File "src/core/reconstruct.ml", lines 1690-1733, characters 5-8: - 1690 | .....begin match ttau with - 1691 | | (Int.Comp.TypCobase (_, _, _), _) -> - 1692 | let { Store.Cid.CompDest.Entry.name - 1693 | ; mctx = cD' - 1694 | ; obs_type = tau0 - ... - 1730 | let (cG', pat_spine', ttau2) = elPatSpine cD cG pat_spine ttau' in - 1731 | (cG', Int.Comp.PatApp (loc, pat', pat_spine'), ttau2) - 1732 | (* | _ -> raise (Error (loc, TypMismatch (cD, ttau, (tau1, Whnf.m_id)))) *) - 1733 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypPiBox (_, Decl {name=u; typ=cU; plicity=Explicit; _ }, _), _) - - File "src/core/reconstruct.ml", lines 1749-1756, characters 5-68: - 1749 | .....let Int.Comp.TypBox (_, Int.LF.ClTyp (Int.LF.MTyp _tQ, cPsi_s)) = tau_s in - 1750 | let cPsi = inferCtxSchema loc (cD_s, cPsi_s) (cD, psi) in - 1751 | let tP = Lfrecon.elTyp (Lfrecon.Pibox) cD cPsi a in - 1752 | let tau' = Int.Comp.TypBox(loc', Int.LF.ClTyp (Int.LF.MTyp tP, cPsi)) in - 1753 | let ttau' = (tau', Whnf.m_id) in - 1754 | let (cG', pat') = elPatChk cD Int.LF.Empty pat' ttau' in - 1755 | (* Return annotated pattern? Int.Comp.PatAnn (l, pat', tau') *) - 1756 | (cG', Int.Comp.PatAnn (l, pat', tau', Plicity.explicit), ttau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypBox (_, ClTyp ((PTyp _|STyp (_, _)), _)) - - File "src/core/reconstruct.ml", lines 1784-1801, characters 10-13: - 1784 | ..........begin match mT with - 1785 | | Int.LF.(MTyp (Atom _ | Sigma _ as tA))-> - 1786 | let cPsi' = inferCtxSchema loc (cD_s, cPsi) (cD, psi) in - 1787 | let tP' = mgTyp cD cPsi' tA in - 1788 | (loc', Int.LF.ClTyp (Int.LF.MTyp tP', cPsi')) - ... - 1798 | fixParamTyp in check.ml, and it is only used for - 1799 | coverage checking. *) - 1800 | Error.raise_violation "[recPatObj'] scrutinee PTyp should be impossible" - 1801 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MTyp (TClo _) - - File "src/core/reconstruct.ml", lines 2084-2106, characters 2-5: - 2084 | ..let { I.cD = cD'; cG = cG'; cIH = Int.LF.Empty } as h' = - 2085 | elHypotheses h - 2086 | in - 2087 | dprintf - 2088 | begin fun p -> - ... - 2103 | ( loc - 2104 | , h' - 2105 | , elProof cD cG label p ttau - 2106 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} - - File "src/core/reconstruct.ml", lines 2288-2301, characters 11-29: - 2288 | ...........match k, tA' with - 2289 | | Some k, Int.LF.Sigma tRec -> - 2290 | (* Compute the type of the kth projection of tRec. *) - 2291 | Int.LF.getType h (tRec, LF.id) k - 2292 | |> Whnf.normTyp - ... - 2298 | A projected case #n.k is required. - 2299 | *) - 2300 | assert false - 2301 | | None, tA' -> tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Some k, (Atom (_, _, _)|PiTyp (_, _)|TClo _)) - - File "src/core/reconstruct.ml", lines 2339-2420, characters 7-56: - 2339 | .......let Int.LF.MTyp tP = cU in - 2340 | let (cD', (cPsi', tR_p, tA_p), t) = - 2341 | match Coverage.genObj (cD, cPsi, tP) (Int.LF.Const cid, tA, k) with - 2342 | | None -> assert false - 2343 | (* FIXME: throw an appropriate error - ... - 2417 | cD_b |- [t o t']tau <= type - 2418 | *) - 2419 | in - 2420 | I.SplitBranch (l', (Int.LF.Empty, pat), t', hyp') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PTyp _|STyp (_, _)) - - File "src/core/reconstruct.ml", lines 2428-2463, characters 7-57: - 2428 | .......let Int.LF.MTyp tA = cU in - 2429 | let (cD', (cPsi', tM, sA), t) = - 2430 | match Coverage.genBVar (cD, cPsi, tA) 1 with - 2431 | | [x] -> x - 2432 | | _ -> - ... - 2460 | let l' = `bvar in - 2461 | let pb' = I.SubgoalPath.(append pb (build_meta_split i l')) in - 2462 | let hyp' = elHypothetical cD_b cG_b pb' hyp ttau_b in - 2463 | I.SplitBranch (l', (Int.LF.Empty, pat'), t', hyp') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PTyp _|STyp (_, _)) - - File "src/core/reconstruct.ml", lines 2545-2547, characters 5-44: - 2545 | .....let Some w = w in - 2546 | let ctx_branches = List.map (make_ctx_branch w) bs in - 2547 | I.ContextSplit (i, tau_i, ctx_branches) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/reconstruct.ml", lines 2562-2568, characters 5-17: - 2562 | .....let (cD', cG', Int.LF.Empty, tau', _) = - 2563 | Check.Comp.unroll cD cG Int.LF.Empty (Whnf.cnormCTyp ttau) - 2564 | in - 2565 | let hyp = - 2566 | elHypothetical cD' cG' I.SubgoalPath.(append pb build_intros) hyp (tau', Whnf.m_id) - 2567 | in - 2568 | I.Intros hyp - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', cG', Dec (_, WfRec (_, _, _)), _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Tactic.cmo -c -impl src/harpoon/tactic.ml) - File "src/harpoon/tactic.ml", lines 227-231, characters 7-55: - 227 | .......match cG with - 228 | | LF.Dec (cG', Comp.CTypDecl (n, tA, _)) when k == 1 -> - 229 | LF.Dec (cG', Comp.CTypDecl (n, tA, false)) - 230 | | LF.Dec (cG', decl) -> - 231 | LF.Dec (unmark_inductive_var cG' (k-1), decl) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/harpoon/tactic.ml", lines 453-468, characters 12-72: - 453 | ............let LF.(MObj (Root (_, h, _, _))) = tM in - 454 | match h with - 455 | | LF.PVar (n, s) -> `pvar None - 456 | | LF.(Proj (PVar (n, s), k)) -> `pvar (Some k) - 457 | | LF.Const cid -> `ctor cid - ... - 465 | P.(fmt_ppr_cmp_pattern cD cG l0) pat - 466 | end; - 467 | Error.raise_violation - 468 | "[make_meta_branch] head neither pvar (proj) nor const" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MObj (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Logic.cmo -c -impl src/core/logic.ml) - File "src/core/logic.ml", lines 190-203, characters 4-36: - 190 | ....match tN with - 191 | | LF.Lam (l, n, tN') -> - 192 | begin - 193 | incr lR; - 194 | let tM = LF.Lam (l, n, shiftNormal tN' k) in - ... - 200 | | LF.Clo (tN, s) -> - 201 | LF.Clo (shiftNormal tN k, s) - 202 | | LF.Tuple (l, tP) -> - 203 | LF.Tuple (l, shiftTuple tP k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - LFHole (_, _, _) - - File "src/core/logic.ml", lines 241-251, characters 4-8: - 241 | ....match tA with - 242 | | LF.PiTyp ((tD, _, Plicity.Implicit), tA') -> - 243 | typToClause' (LF.DDec (eV, tD)) cG tA' (cS, dS, dR) - 244 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> - 245 | typToClause' eV (Conjunct (cG, typToGoal tA (cS, dS, dR))) - ... - 248 | { tHead = (Shift.shiftAtom tA (-cS, -dS, dR)) - 249 | ; eVars = eV - 250 | ; subGoals = cG - 251 | } - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, Explicit), _) - - File "src/core/logic.ml", lines 297-306, characters 4-30: - 297 | ....match tA with - 298 | | LF.PiTyp ((tdec, _, Plicity.Implicit), tA') -> - 299 | All (tdec, typToGoal tA' (cS, dS, dR + 1)) - 300 | | LF.PiTyp ((LF.TypDecl (x, tA) as tdec, _, Plicity.Explicit), tB) -> - 301 | Impl ((typToRes tA (cS, dS, dR), tdec), typToGoal tB (cS, dS, dR + 1)) - 302 | | LF.Atom _ -> - 303 | Atom (Shift.shiftAtom tA (-cS, -dS, dR)) - 304 | | LF.TClo (tA, s) -> - 305 | dprintf begin fun p -> p.fmt "[typToGoal] TClo" end; - 306 | raise NotImplementedYet - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, Explicit), _) - - File "src/core/logic.ml", lines 309-315, characters 4-47: - 309 | ....match tM with - 310 | | LF.PiTyp ((tD, _, Plicity.Implicit), tM') -> - 311 | Exists (tD, typToRes tM' (cS, dS, dR + 1)) - 312 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> - 313 | And (typToGoal tA (cS, dS, dR), typToRes tB (cS + 1, dS + 1, dR + 1)) - 314 | | LF.Atom _ -> - 315 | Head (Shift.shiftAtom tM (-cS, -dS, dR)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, Explicit), _) - - File "src/core/logic.ml", lines 326-348, characters 4-34: - 326 | ....match tau with - 327 | | Comp.TypBox (_loc, LF.ClTyp (LF.MTyp tA, cPsi)) -> - 328 | (* Invariant: tA will always be atomic in our implementation *) - 329 | Box (cPsi, Atom tA, Some M) - 330 | (* possibly needs to have PiBox variables shifted; - ... - 345 | let typ_dec = Comp.CTypDecl (name, tau1 , true) in - 346 | Implies ((cr1, typ_dec), cg2) - 347 | | Comp.TypBase (_, comp_cid, s) -> - 348 | Atomic (comp_cid, msToAs s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypBox (_, CTyp _) - - File "src/core/logic.ml", lines 351-358, characters 4-47: - 351 | ....match tau with - 352 | | Comp.TypBox (_) | Comp.TypBase(_) -> - 353 | Base tau - 354 | | Comp.TypArr (_, tau1, tau2) -> - 355 | CAnd (comptypToCompGoal tau1, comptypToCompRes tau2) - 356 | | Comp.TypPiBox (_, typ_dec, tau') -> - 357 | CExists (typ_dec, comptypToCompRes tau') - 358 | | Comp.TypInd tau' -> comptypToCompRes tau' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) - - File "src/core/logic.ml", lines 394-402, characters 4-30: - 394 | ....match box with - 395 | | Box (cPsi, Atom tA, Some M) -> - 396 | let loc = Location.ghost in - 397 | let ctyp = LF.ClTyp (LF.MTyp tA, cPsi) in - 398 | Comp.TypBox (loc, ctyp) - 399 | | Box (cPsi, Atom tA, Some P) -> - 400 | let loc = Location.ghost in - 401 | let ctyp = LF.ClTyp (LF.PTyp tA, cPsi) in - 402 | Comp.TypBox (loc, ctyp) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Box (_, Atom _, None) - - File "src/core/logic.ml", lines 412-416, characters 4-34: - 412 | ....match atomic with - 413 | | Atomic (cid, aS) -> - 414 | let loc = Location.ghost in - 415 | let mS = asToMs aS in - 416 | Comp.TypBase (loc, cid, mS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Box (_, _, _)|Implies ((_, _), _)|Forall (_, _)) - - File "src/core/logic.ml", lines 434-443, characters 4-10: - 434 | ....match tA with - 435 | | LF.Atom _ -> - 436 | let u = LF.Inst (Whnf.newMMVar None (cD, cPsi, LF.TClo (tA, s)) Plicity.implicit Inductivity.not_inductive) in - 437 | LF.Root (Location.ghost, LF.MVar (u, S.id), LF.Nil, Plicity.explicit) - 438 | | LF.PiTyp ((LF.TypDecl (x, tA) as tD, _, _), tB) -> - 439 | LF.Lam - 440 | ( Location.ghost - 441 | , x - 442 | , etaExpand cD (LF.DDec (cPsi, S.decSub tD s)) (tB, S.dot1 s) - 443 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/logic.ml", lines 462-470, characters 4-68: - 462 | ....match eV with - 463 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> - 464 | let (s', fS') = dctxToSub cD cPsi (eV', s) fS in - 465 | let tM' = etaExpand cD cPsi (tA, s') in - 466 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) - 467 | | LF.Null -> (s, fS) - 468 | | LF.CtxVar _ -> - 469 | invalid_arg - 470 | "Logic.Convert.dctxToSub: Match conflict with LF.CtxVar _." - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (eV', TypDeclOpt _) - - File "src/core/logic.ml", lines 475-481, characters 4-28: - 475 | ....match eV with - 476 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> - 477 | let (s', fS') = dctxToSub' cD cPsi (eV', s) fS in - 478 | let tM' = etaExpand cD cPsi (tA, s') in - 479 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) - 480 | | LF.Null -> (s, fS) - 481 | | LF.CtxVar _ -> (s, fS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (eV', TypDeclOpt _) - - File "src/core/logic.ml", lines 500-501, characters 6-52: - 500 | ......match lst with - 501 | | (cPsi, k) :: lst' -> (shift lst' (-1), cPsi) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 510-513, characters 6-20: - 510 | ......match dctx with - 511 | | LF.DDec (dctx', _) -> find_ctxvar_offset dctx' - 512 | | LF.CtxVar (LF.CtxOffset k) -> k - 513 | | LF.Null -> 0 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/logic.ml", lines 697-709, characters 9-47: - 697 | .........(match mtyp with - 698 | | LF.ClTyp (LF.MTyp _, _) -> - 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in - 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in - 701 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) - ... - 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) - 707 | ((x, (loc, mfront)) :: xs) - 708 | | LF.CTyp cid_opt -> - 709 | comptypToMQuery' (tau', i-1) ms xs) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/core/logic.ml", lines 696-709, characters 9-47: - 696 | .........let LF.Decl { name = x; typ = mtyp; plicity; inductivity } = mdecl in - 697 | (match mtyp with - 698 | | LF.ClTyp (LF.MTyp _, _) -> - 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in - 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in - ... - 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) - 707 | ((x, (loc, mfront)) :: xs) - 708 | | LF.CTyp cid_opt -> - 709 | comptypToMQuery' (tau', i-1) ms xs) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/logic.ml", lines 1084-1094, characters 4-72: - 1084 | ....match r with - 1085 | | Head tH -> - 1086 | fmt_ppr_typ cD cPsi ppf (tH, s) - 1087 | | And (g, r') -> - 1088 | fprintf ppf "%a -> %a" - ... - 1091 | | Exists (LF.TypDecl (_, _tA) as tD, r') -> - 1092 | fprintf ppf "(∃%a. %a)" - 1093 | (fmt_ppr_decl cD cPsi) (tD, s) - 1094 | (fmt_ppr_res cD (LF.DDec (cPsi, S.decSub tD s))) (r', S.dot1 s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Exists (TypDeclOpt _, _) - - File "src/core/logic.ml", lines 1305-1332, characters 4-19: - 1305 | ....match s with - 1306 | | LF.Shift _ -> true - 1307 | | LF.Dot (LF.Head (((LF.MMVar ((mmvar, ms'), s)) as hd)), s') -> - 1308 | if uninstantiated hd then false - 1309 | else check_sub s' - ... - 1329 | if uninstantiated hd then false - 1330 | else check_sub s' - 1331 | | LF.Dot (_, s') -> - 1332 | check_sub s' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/logic.ml", lines 1337-1339, characters 6-48: - 1337 | ......match cD with - 1338 | | LF.Dec (_, LF.Decl d) when k = 1 -> d.plicity - 1339 | | LF.Dec (cD', _) -> get_plicity cD' (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/logic.ml", lines 1394-1412, characters 4-30: - 1394 | ....match g with - 1395 | | Atom tA -> - 1396 | matchAtom dPool cD (cPsi, k) (tA, s) sc (currDepth, maxDepth) - 1397 | - 1398 | | Impl ((r, (LF.TypDecl (x, _) as tD)), g') -> - ... - 1409 | So we just prove the conclusion in an extended context. *) - 1410 | gSolve dPool cD (LF.DDec (cPsi, S.decSub tD s), k + 1) (g', S.dot1 s) - 1411 | (fun (u, tM) -> sc (u, LF.Lam (Location.ghost, x, tM))) - 1412 | (currDepth, maxDepth) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Impl ((r, TypDeclOpt _), _) - - File "src/core/logic.ml", lines 1444-1446, characters 17-29: - 1444 | .................match cltyp with - 1445 | | LF.MTyp tau -> tau - 1446 | | LF.PTyp tau -> tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 1439-1483, characters 4-96: - 1439 | ....match cD with - 1440 | | LF.Empty -> raise NoSolution - 1441 | | LF.Dec (cD', LF.Decl { typ = LF.CTyp _ ; _}) -> - 1442 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) - 1443 | | LF.Dec (cD', LF.Decl { typ = LF.ClTyp (cltyp, cPsi); plicity; _ }) -> - ... - 1480 | end - 1481 | with - 1482 | | U.Failure _ -> - 1483 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, DeclOpt _) - - File "src/core/logic.ml", lines 1496-1600, characters 4-76: - 1496 | ....match s with - 1497 | | LF.Shift _ -> - 1498 | dprintf begin fun p -> - 1499 | p.fmt "[trivially_prove] s_all = %a" - 1500 | (P.fmt_ppr_lf_sub cD cPhi P.l0) s_all - ... - 1597 | with - 1598 | | U.Failure _ | NoSolution -> raise NoSolution) - 1599 | | LF.Dot (_, s') -> - 1600 | trivially_prove s' s_all cD (goal, cPhi, s_goal) dPool u (curr_sub+1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/logic.ml", lines 2260-2263, characters 4-25: - 2260 | ....match cG with - 2261 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) when k = 1 -> name - 2262 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) -> - 2263 | get_name (k-1) cG' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG', CTypDeclOpt _) - - File "src/core/logic.ml", lines 2337-2340, characters 4-21: - 2337 | ....match cdecl with - 2338 | | Comp.CTypDecl (_, tau, _) -> - 2339 | let cc = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in - 2340 | (cc, k, Boxed) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/logic.ml", lines 2416-2417, characters 9-57: - 2416 | .........let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in - 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Full (Full (_, ({ _ }, _, _)), ({ _ }, _, _)) - - File "src/core/logic.ml", lines 2407-2418, characters 6-33: - 2407 | ......match (cP, cG) with - 2408 | | (Emp, LF.Dec(cG', cdecl)) -> - 2409 | let cc = decToCC cdecl 1 in - 2410 | let cP_ret' = shift_cPool cP_ret 1 in - 2411 | update cP cG' (prependToCPool cc cP_ret') (k+1) - ... - 2415 | if pos' = k then unbox cc else cc in - 2416 | let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in - 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) - 2418 | | (Emp, LF.Empty) -> cP_ret - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Full (cP', cc), Empty) - - File "src/core/logic.ml", lines 2470-2476, characters 6-36: - 2470 | ......match tA with - 2471 | | LF.Atom (l, cid, sp) -> - 2472 | LF.Atom (l, cid, remove_sp sp) - 2473 | | LF.PiTyp ((td, depend, plicity), tA') -> - 2474 | LF.PiTyp ((td, depend, plicity), remove_typ tA) - 2475 | | LF.TClo (tA', s) -> - 2476 | LF.TClo (remove_typ tA', s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Sigma _ - - File "src/core/logic.ml", lines 2495-2508, characters 6-49: - 2495 | ......match tau with - 2496 | | Comp.TypBase (l, cid, mS) -> - 2497 | Comp.TypBase (l, cid, remove_mS mS) - 2498 | | Comp.TypBox (l, mT) -> - 2499 | (match mT with - ... - 2505 | | Comp.TypArr (l, tau1, tau2) -> - 2506 | Comp.TypArr (l, remove_tau tau1, remove_tau tau2) - 2507 | | Comp.TypPiBox (l, cdec, tau') -> - 2508 | Comp.TypPiBox (l, cdec, remove_tau tau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)|TypInd _) - - File "src/core/logic.ml", lines 2731-2741, characters 9-52: - 2731 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in - 2732 | let mmvar' = - 2733 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity - 2734 | mmvar.LF.inductivity in - 2735 | let norm = LF.Root (noLoc, - ... - 2738 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in - 2739 | let x = Comp.M ((noLoc, mf), mT) in - 2740 | let (xs, sub) = gen_new_ih_args lst' ys in - 2741 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/logic.ml", lines 2752-2762, characters 9-52: - 2752 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in - 2753 | let mmvar' = - 2754 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity - 2755 | mmvar.LF.inductivity in - 2756 | let norm = LF.Root (noLoc, LF.MMVar - ... - 2759 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in - 2760 | let x = Comp.M ((noLoc, mf), mT) in - 2761 | let (xs, sub) = gen_new_ih_args lst' ys in - 2762 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/logic.ml", lines 2771-2779, characters 9-58: - 2771 | .........let LF.ClTyp (LF.PTyp tA, cPsi) = mmvar.LF.typ in - 2772 | let mmvar' = - 2773 | Whnf.newMPVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity - 2774 | mmvar.LF.inductivity in - 2775 | let hd = LF.MPVar ((mmvar', LF.MShift 0), LF.Shift 0) in - 2776 | let mf = LF.ClObj (dctx_hat, LF.PObj hd) in - 2777 | let x = Comp.M ((noLoc, mf), mT) in - 2778 | let (xs, sub) = gen_new_ih_args lst' ys in - 2779 | (x :: xs, (mmvar.LF.mmvar_id, LF.head hd) :: sub) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|STyp (_, _)), _) - - File "src/core/logic.ml", lines 2842-2843, characters 11-44: - 2842 | ...........let (LF.Root(_, hd',_,_)) = sub_norm (LF.head hd) sub in - 2843 | (loc, LF.ClObj (dh, LF.PObj hd')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/logic.ml", lines 2920-2921, characters 6-42: - 2920 | ......match i with - 2921 | | Comp.Var(l, k) -> Comp.Var(l, k+1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, T (_, _, _))| - LetTuple (_, _, (T (_, _, _), _))|Let (_, _, (_, _))|Box (_, (_, _), _)| - Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)|DataConst (_, _)| - Obs (_, _, _, _)|Const (_, _)|Apply (_, _, _)|MApp (_, _, (_, _), _, _)| - AnnBox (_, (_, _), _)) - - File "src/core/logic.ml", lines 2977-2978, characters 6-37: - 2977 | ......match cltyp with - 2978 | | LF.MTyp tA | LF.PTyp tA -> tA - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 2998-3001, characters 6-58: - 2998 | ......match cG_a with - 2999 | | [] -> false - 3000 | | (Comp.CTypDecl (name2, _ ,_), _, _, _, _, _) :: cG_a' -> - 3001 | (Name.equal name name2) || (old_split name cG_a') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CTypDeclOpt _, _, _, _, _, _)::_ - - File "src/core/logic.ml", lines 3005-3009, characters 6-37: - 3005 | ......match cG_a with - 3006 | | (Comp.CTypDecl (name2, _ ,_), _, con, _, thm, bool) :: cG_a' - 3007 | when Name.equal name name2 -> - 3008 | (con, thm, bool) - 3009 | | x :: xs -> find_split name xs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3013-3065, characters 6-30: - 3013 | ......match (cG, cPool) with - 3014 | | (LF.Dec(cG', - 3015 | ((Comp.CTypDecl (name, Comp.TypBox - 3016 | (_, LF.ClTyp (cltyp, cPsi)), _wf)) - 3017 | as cdecl)), - ... - 3062 | | (LF.Dec (cG', _), Full (cPool', _)) -> - 3063 | update (cG', cPool', ret) - 3064 | - 3065 | | (LF.Empty, Emp) -> ret - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dec (cG', _), Emp) - - File "src/core/logic.ml", lines 3084-3087, characters 6-38: - 3084 | ......match cD_a with - 3085 | | (LF.Decl d, Option.Some _, _, _, _, _) as x :: cD_a' - 3086 | when Name.equal d.name n -> x - 3087 | | _ :: cD_a' -> retrieve n cD_a' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3103-3108, characters 21-41: - 3103 | .....................match cltyp with - 3104 | | LF.MTyp tA -> - 3105 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), - 3106 | LF.Nil, Plicity.explicit)) - 3107 | | LF.PTyp tA -> - 3108 | LF.PObj (LF.PVar (1, S.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3094-3118, characters 9-31: - 3094 | .........let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = - 3095 | retrieve name cD_a in - 3096 | let (con', bool') = - 3097 | if bool then - 3098 | try - ... - 3115 | let tdecl' = Whnf.cnormCDecl (tdecl, LF.MShift 1) in - 3116 | let x = (tdecl', Some i, con', 1, thm, bool') in - 3117 | let ret' = shift_cD_a ret in - 3118 | update cD' (x :: ret') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (DeclOpt { _ }, _, _, _, _, _) - - File "src/core/logic.ml", lines 3126-3131, characters 21-41: - 3126 | .....................match cltyp with - 3127 | | LF.MTyp tA -> - 3128 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), - 3129 | LF.Nil, Plicity.explicit)) - 3130 | | LF.PTyp tA -> - 3131 | LF.PObj (LF.PVar (1, S.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3090-3157, characters 6-23: - 3090 | ......match cD with - 3091 | | LF.Dec (cD', ((LF.Decl { name; typ = ((LF.ClTyp (cltyp, cPsi)) as ctyp) - 3092 | ; plicity = Plicity.Explicit; _ }) as tdecl)) - 3093 | when is_in name cD_a -> - 3094 | let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = - ... - 3154 | let x = (tdecl', None, con, 1, None, bool) in - 3155 | let ret' = shift_cD_a ret in - 3156 | update cD' (x :: ret') - 3157 | | LF.Empty -> ret - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, DeclOpt _) - - File "src/core/logic.ml", lines 3243-3251, characters 6-44: - 3243 | ......match cG_a with - 3244 | | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, true) :: cG_a' - 3245 | when Name.equal name n -> - 3246 | (tau, i, thm_var, - 3247 | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, false) - 3248 | :: cG_a', k) - 3249 | | x :: cG_a' -> - 3250 | let (tau, i, thm_var, cG_a'', pos) = remove_var name cG_a' in - 3251 | (tau, i, thm_var, x :: cG_a'', pos) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3256-3264, characters 6-39: - 3256 | ......match cD_a with - 3257 | | (LF.Decl d, Option.Some i, no, k, thm_var, true) - 3258 | :: cD_a' when Name.equal name d.name -> - 3259 | let tau = Comp.TypBox(noLoc, d.typ) in - 3260 | (tau, i, thm_var, (LF.Decl d, Option.some i, no, k, thm_var, false) - 3261 | :: cD_a') - 3262 | | x :: cD_a' -> - 3263 | let (tau, i, thm_var, cD_a'') = remove_mvar name cD_a' in - 3264 | (tau, i, thm_var, x :: cD_a'') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3330-3332, characters 9-42: - 3330 | .........let (Some n) = find_mvar k cD_a in - 3331 | let (tau, i, thm_var, cD_a') = remove_mvar n cD_a in - 3332 | (tau, i, thm_var, cD_a', cG_a, 0). - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 3358-3365, characters 8-50: - 3358 | ........match cG_a with - 3359 | | (((Comp.CTypDecl (name2, _ ,_)) as cdecl), _, con, _, thm, bool) - 3360 | :: cG_a' when Name.equal name name2 -> - 3361 | (cdecl, con, thm, bool, cG_a') - 3362 | | x :: xs -> - 3363 | let (tdecl, num, thm_var, bool, cG_a') = - 3364 | remove xs in - 3365 | (tdecl, num, thm_var, bool, x :: cG_a') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3374-3399, characters 7-25: - 3374 | .......(match cltyp with - 3375 | | LF.MTyp tA -> - 3376 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive } in - 3377 | let norm = - 3378 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in - ... - 3396 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in - 3397 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) - 3398 | :: (shift_cD_a cD_a) in - 3399 | (cD_a', cG_a')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3403-3428, characters 7-25: - 3403 | .......(match cltyp with - 3404 | | LF.MTyp _ -> - 3405 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.inductive } in - 3406 | let norm = - 3407 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in - ... - 3425 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in - 3426 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) - 3427 | :: (shift_cD_a cD_a) in - 3428 | (cD_a', cG_a')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3489-3525, characters 7-31: - 3489 | .......(match cltyp with - 3490 | | LF.MTyp _ -> - 3491 | let norm = - 3492 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), - 3493 | LF.Nil, plicity) in - ... - 3522 | | false -> None - 3523 | in - 3524 | (tdecl', Some i, consOfLFTyp cltyp, 1, thm_var, true) - 3525 | :: (shift_cD_a cD_a)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3646-3651, characters 4-46: - 3646 | ....match cG with - 3647 | | LF.Empty -> cPool - 3648 | | LF.Dec (cG', Comp.CTypDecl (_, tau, _)) -> - 3649 | let clause = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in - 3650 | let cc = (clause, (lengthCPool cPool) + 1, Boxed) in - 3651 | gen_cPool cG' (prependToCPool cc cPool) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG', CTypDeclOpt _) - - File "src/core/logic.ml", lines 3898-3900, characters 6-46: - 3898 | ......match cD with - 3899 | | LF.Dec (_, LF.Decl { name; _ }) when k = 1 -> name - 3900 | | LF.Dec (cD', _) -> find_name cD' (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/logic.ml", lines 4037-4047, characters 22-64: - 4037 | ......................match mobj with - 4038 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) - 4039 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) -> - 4040 | mmvar.LF.instantiation := - 4041 | Some (LF.INorm (LF.Root (noLoc, - ... - 4044 | | LF.PObj LF.MPVar ((mmvar, _), _) - 4045 | | LF.PObj LF.MMVar ((mmvar, _), _) -> - 4046 | mmvar.LF.instantiation := - 4047 | Some (LF.IHead (LF.MVar (LF.Offset k, LF.Shift 0))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MObj - (Root - (_, - (BVar _|Const _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)), _, _)) - - File "src/core/logic.ml", lines 4051-4057, characters 6-26: - 4051 | ......match ih_args with - 4052 | | (Comp.M ((_, LF.ClObj (_, ((LF.PObj hd) as mobj))), _)) :: xs -> - 4053 | if Solver.uninstantiated hd then mobj else grab xs - 4054 | | (Comp.M ((_, LF.ClObj (_, ((LF.MObj (LF.Root (_,hd,_,_))) as mobj))), _)) - 4055 | :: xs-> - 4056 | if Solver.uninstantiated hd then mobj else grab xs - 4057 | | _ :: xs -> grab xs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 4060-4064, characters 14-56: - 4060 | ..............match mobj with - 4061 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) - 4062 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) - 4063 | | LF.PObj LF.MPVar ((mmvar, _), _) - 4064 | | LF.PObj LF.MMVar ((mmvar, _), _) -> mmvar.LF.typ... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MObj - (Root - (_, - (BVar _|Const _|MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)| - FVar _|FMVar (_, _)|FPVar (_, _)|HClo (_, _, _)| - HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))), _, - _)) - - File "src/core/logic.ml", lines 4079-4090, characters 6-88: - 4079 | ......let Some cid = thm_cid in - 4080 | let i = Comp.Const(noLoc, cid) in - 4081 | let sc' = (fun e -> sc (Comp.Case (noLoc, - 4082 | Comp.PragmaNotCase, - 4083 | Whnf.cnormExp (fS i, LF.MShift 0), - ... - 4087 | pattern, - 4088 | LF.MShift 0, - 4089 | e)]))) in - 4090 | find_all_occurances dec (cG', cPool', cG_a') sc' cD thm_cid thm lst' cIH' cIH_all' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 4126-4128, characters 21-40: - 4126 | .....................match (currDepth, maxDepth) with - 4127 | | (Some k, None) -> (k, 0) - 4128 | | (Some k1, Some k2) -> (k1, k2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (None, _) - - File "src/core/logic.ml", lines 4290-4311, characters 9-83: - 4290 | .........let Some cid = thm_cid in - 4291 | let i = arg_builder (Comp.Const(noLoc, cid)) in - 4292 | let (ms', fS) = - 4293 | C.mctxToMSub cD (cMVars, LF.MShift 0) (fun s -> s) in - 4294 | let ms'' = rev_ms ms' 0 in - ... - 4308 | with - 4309 | | U.Failure _ | DepthReached _ | End_Of_Search -> - 4310 | focusIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc - 4311 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (thm, td, thm_cid)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 4595-4597, characters 6-57: - 4595 | ......match cG with - 4596 | | LF.Dec (_, Comp.CTypDecl (_, tau, _)) when k = 1 -> tau - 4597 | | LF.Dec (cG', _) -> find_comp_assumption cG' (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/logic.ml", lines 4895-4905, characters 10-31: - 4895 | ..........let [(cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, - 4896 | ms_b, pat, td_b, cid)] = blist in - 4897 | - 4898 | invert_all (cD, cD_a) (cG, cPool, cG_a) cIH_b - 4899 | (normCompGoal (cg, ms)) ms_b - ... - 4902 | [Comp.Branch(noLoc, LF.Empty, (cD, cG), pat, - 4903 | ms_b, e)]))) - 4904 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 4905 | (ind, thm, td, cid) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, ms_b, pat, td_b, cid):: - (_, _, _, _, _, _, _, _, _, _, _, _)::_ - - File "src/core/logic.ml", lines 4976-5015, characters 7-35: - 4976 | .......let Atom tA = g' in - 4977 | let cltyp = LF.MTyp tA in - 4978 | let sc' = - 4979 | (fun (cPsi', tM) -> - 4980 | let dctx_hat = Context.dctxToHat cPsi' in - ... - 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5014 | (ind, thm, td, thm_cid); - 5015 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Impl ((_, _), _)|All (_, _)) - - File "src/core/logic.ml", lines 4975-5015, characters 7-35: - 4975 | .......let Box(cPsi',g',_) = cg' in - 4976 | let Atom tA = g' in - 4977 | let cltyp = LF.MTyp tA in - 4978 | let sc' = - 4979 | (fun (cPsi', tM) -> - ... - 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5014 | (ind, thm, td, thm_cid); - 5015 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) - - File "src/core/logic.ml", lines 5024-5029, characters 11-51: - 5024 | ...........let LF.Root (_,hd,_,_) = tM in - 5025 | let dctx_hat = Context.dctxToHat cPsi' in - 5026 | let mfront = LF.ClObj (dctx_hat, LF.PObj hd) in - 5027 | let meta_obj = (noLoc, mfront) in - 5028 | let meta_typ = LF.ClTyp (cltyp, cPsi') in - 5029 | sc (Comp.Box(noLoc, meta_obj, meta_typ)). - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/logic.ml", lines 5020-5060, characters 7-34: - 5020 | .......let Atom tA = g' in - 5021 | let cltyp = LF.PTyp tA in - 5022 | let sc' = - 5023 | (fun (cPsi', tM) -> - 5024 | let LF.Root (_,hd,_,_) = tM in - ... - 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5059 | (ind, thm, td, thm_cid); - 5060 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Impl ((_, _), _)|All (_, _)) - - File "src/core/logic.ml", lines 5019-5060, characters 7-34: - 5019 | .......let Box(_,g',_) = cg' in - 5020 | let Atom tA = g' in - 5021 | let cltyp = LF.PTyp tA in - 5022 | let sc' = - 5023 | (fun (cPsi', tM) -> - ... - 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5059 | (ind, thm, td, thm_cid); - 5060 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) - - File "src/core/logic.ml", lines 4969-5085, characters 4-30: - 4969 | ....match cg with - 4970 | | Box (cPsi, g, Some M) -> - 4971 | (* We apply the msub here in case there are FREE MVARS that - 4972 | appear from unify *) - 4973 | let ms = Whnf.cnormMSub ms in - ... - 5082 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5083 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5084 | (ind, thm, td, thm_cid); - 5085 | raise End_Of_Search - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Box (_, _, None) - - File "src/core/logic.ml", lines 5223-5246, characters 7-36: - 5223 | .......let Some cid = thm_cid in - 5224 | let cIH_all' = Total.shift cIH_all in - 5225 | let cIH'' = Total.shift cIH' in - 5226 | let i = Comp.Const(noLoc, cid) in - 5227 | (try - ... - 5243 | | End_Of_Search | DepthReached _ -> - 5244 | blurIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc - 5245 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) - 5246 | (ind, thm, td, thm_cid)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5263-5286, characters 7-32: - 5263 | .......let Some cid = thm_cid in - 5264 | let i = Comp.Const(noLoc, cid) in - 5265 | let cIH'' = Total.shift cIH' in - 5266 | let cIH_all' = Total.shift cIH_all in - 5267 | let exp = Whnf.cnormExp (fS i, LF.MShift 0) in - ... - 5283 | in - 5284 | blurIH (cD, cD_a) (cG', cPool', cG_a') (cIH'', cIH_all') cg ms sc' - 5285 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) - 5286 | (ind, thm, td, thm_cid) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5393-5394, characters 6-46: - 5393 | ......match cp with - 5394 | | (_cc, _k, Boxed) -> (_cc, _k, Unboxed) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_cc, _k, Unboxed) - - File "src/core/logic.ml", lines 5441-5458, characters 10-49: - 5441 | ..........match r with - 5442 | | LF.ClTyp (LF.MTyp _, cPsi) -> - 5443 | let tM = - 5444 | LF.Root - 5445 | ( noLoc - ... - 5455 | LF.ClObj (Context.dctxToHat (Whnf.cnormDCtx (cPsi, LF.MShift 1)), - 5456 | LF.PObj hd) - 5457 | | LF.CTyp _ -> - 5458 | LF.CObj (LF.CtxVar (LF.CtxOffset 1)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/core/logic.ml", lines 5549-5554, characters 7-37: - 5549 | .......let Comp.CTypDecl (name, _, _) = tdecl in - 5550 | let sc' = (fun e -> sc (Comp.Fn (noLoc, name, e))) in - 5551 | let cIH' = Total.shift cIH in - 5552 | uniform_right (cD, cD_a) (cG', cPool', cG_a') cIH' cg' ms sc' - 5553 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (k+1) - 5554 | (ind, thm, td, thm_cid) blur - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/logic.ml", lines 5587-5590, characters 24-19: - 5587 | ........................match sp with - 5588 | | 0 -> Some 0 (* No splitting. *) - 5589 | | 1 -> None (* Only inversions. *) - 5590 | | 2 -> Some 1........................ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - 3 - - File "src/core/logic.ml", lines 5795-5798, characters 9-40: - 5795 | .........let Some iterm = !(mmvar.LF.instantiation) in - 5796 | (match iterm with - 5797 | | LF.IHead hd -> hd - 5798 | | _ -> raise NotImplementedYet) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5800-5803, characters 9-40: - 5800 | .........let Some iterm = !(mmvar.LF.instantiation) in - 5801 | (match iterm with - 5802 | | LF.IHead hd -> hd - 5803 | | _ -> raise NotImplementedYet) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5805-5808, characters 9-40: - 5805 | .........let Some iterm = !(mmvar.LF.instantiation) in - 5806 | (match iterm with - 5807 | | LF.IHead hd -> hd - 5808 | | _ -> raise NotImplementedYet) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5834-5835, characters 11-16: - 5834 | ...........let Some iterm = !(mmvar.LF.instantiation) in - 5835 | iterm - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5837-5838, characters 11-16: - 5837 | ...........let Some iterm = !(mmvar.LF.instantiation) in - 5838 | iterm - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5840-5841, characters 11-16: - 5840 | ...........let Some iterm = !(mmvar.LF.instantiation) in - 5841 | iterm - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5847-5849, characters 9-33: - 5847 | .........(match remove_head_mvars hd with - 5848 | | LF.IHead hd -> LF.Root (l, hd, remove_spine_mvars spine, p) - 5849 | | LF.INorm norm -> norm) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ISub _|ICtx _) - - File "src/core/logic.ml", lines 6066-6076, characters 8-33: - 6066 | ........match tau with - 6067 | | Comp.TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, _) -> Option.some n - 6068 | | Comp.TypPiBox (_, _, tau') -> ind_index tau' (n + 1) - 6069 | | Comp.TypInd (_) -> Option.some n - 6070 | | Comp.TypBox (_, _) -> Option.none - ... - 6073 | let ind = ind_index tau1 n in - 6074 | match ind with - 6075 | | Option.None -> ind_index tau2 (n + 1) - 6076 | | Option.Some _ -> ind - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Order.cmx -c -impl src/core/order.ml) - File "src/core/order.ml", lines 26-34, characters 2-23: - 26 | ..function - 27 | | I.Arg x -> Some [x] - 28 | | I.Lex xs -> - 29 | let f = - 30 | function - 31 | | I.Arg x -> Some x - 32 | | _ -> None (* We don't support nested lexicographic orders. *) - 33 | in - 34 | List.traverse f xs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Simul _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Erase.cmx -c -impl src/core/erase.ml) - File "src/core/erase.ml", lines 6-19, characters 2-33: - 6 | ..match (tau, n) with - 7 | | (_, 0) -> 0 - 8 | | (TypArr (_, _, tau), n) -> 1 + numeric_order_arg tau (n - 1) - 9 | | (TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, tau), n) -> - 10 | (* We count [Inductive] as 1 instead of throwing an error because - ... - 16 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Explicit; _ }, tau), n) -> - 17 | 1 + numeric_order_arg tau (n - 1) - 18 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Implicit; _ }, tau), n) -> - 19 | numeric_order_arg tau (n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypPiBox (_, DeclOpt _, _), 1) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Substitution.cmx -c -impl src/core/substitution.ml) - File "src/core/substitution.ml", lines 105-124, characters 4-44: - 105 | ....match (n, s) with - 106 | | (_, Undefs) -> Undef - 107 | | (1, Dot (ft, _s)) -> ft - 108 | | (n, Dot (_ft, s)) -> bvarSub (n - 1) s - 109 | | (n, Shift k) -> Head (BVar (n + k)) - ... - 121 | Free BVar (n + k) ... -bp *) - 122 | Head (HClo (n + k, s, sigma)) - 123 | | (n, MSVar (k, ((s, t), sigma))) -> - 124 | Head (HMClo (n + k, ((s, t), sigma))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (EmptySub|FSVar (_, _))) - - File "src/core/substitution.ml", lines 156-159, characters 12-73: - 156 | ............function - 157 | | (Last u, 1) -> u - 158 | | (Cons (u, _), 1) -> u - 159 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last u, 0) - - File "src/core/substitution.ml", lines 166-169, characters 12-73: - 166 | ............function - 167 | | (Last u, 1) -> u - 168 | | (Cons (u, _), 1) -> u - 169 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last u, 0) - - File "src/core/substitution.ml", lines 147-194, characters 7-10: - 147 | .......begin match bvarSub n s with - 148 | | Head (BVar x) -> - 149 | Head (Proj (BVar x, k)) - 150 | - 151 | | Head (PVar _ as h) -> - ... - 191 | | Head (AnnH _ ) -> failwith "Found head that is AnnH" - 192 | | Head (MMVar _ ) -> failwith "Found head that is MMVar" - 193 | | Head _ -> failwith "Found head that is not a BVar or PVar" - 194 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/substitution.ml", lines 203-206, characters 12-73: - 203 | ............function - 204 | | (Last u, 1) -> (u, s) - 205 | | (Cons (u, _), 1) -> (u, s) - 206 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last u, 0) - - File "src/core/substitution.ml", lines 197-210, characters 7-10: - 197 | .......begin match frontSub (Head h) s with - 198 | | Head h' -> - 199 | Head (Proj (h', k)) - 200 | - 201 | | Obj (Tuple (_, tuple)) -> - ... - 207 | in - 208 | (* Obj (Clo (nth s (tuple, k))) *) - 209 | Obj (Pair.fst (nth s (tuple, k))) - 210 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Obj (Lam (_, _, _)|Root (_, _, _, _)|LFHole (_, _, _)|Clo _) - - File "src/core/substitution.ml", lines 213-214, characters 7-26: - 213 | .......let Head h' = frontSub (Head h) s in - 214 | Head (AnnH (h', a)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undef|Obj _) - - File "src/core/substitution.ml", lines 138-221, characters 4-35: - 138 | ....match ft with - 139 | | Head (HClo (n, s', sigma)) -> Head (HClo (n, s', comp sigma s)) - 140 | | Head (HMClo (n, ((s', theta), sigma))) -> Head (HMClo (n, ((s', theta), comp sigma s))) - 141 | | Head (BVar n) -> bvarSub n s - 142 | | Head (FVar _) -> ft - ... - 218 | | Obj u -> Obj (Clo (u, s)) - 219 | | Undef -> Undef - 220 | | Head (MMVar (n, s')) -> Head (MMVar (n, comp s' s)) - 221 | | Head (FPVar (_n, _s' )) -> ft - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head (MPVar _|FMVar _) - - File "src/core/substitution.ml", line 263, characters 13-30: - 263 | let decSub (TypDecl (x, tA)) s = TypDecl (x, TClo (tA, s)) - ^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/substitution.ml", lines 292-300, characters 6-33: - 292 | ......match s with - 293 | | EmptySub -> None - 294 | | Undefs -> None - 295 | | Shift _ -> None - 296 | | Dot (Undef, s') -> lookup (n + 1) s' p - 297 | | Dot (Head (BVar k), s') -> - 298 | if k = p - 299 | then Some (Head (BVar n)) - 300 | else lookup (n + 1) s' p - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dot - (Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), - _) - - File "src/core/substitution.ml", lines 314-324, characters 6-37: - 314 | ......match s with - 315 | | EmptySub -> - 316 | invert'' maxoffset Undefs - 317 | | Undefs -> - 318 | invert'' maxoffset Undefs - ... - 321 | | Dot (Head (BVar k), s') -> - 322 | invert' (n + 1) s' (max k maxoffset) - 323 | | Dot (_, s') -> (* Is this really necessary? -ac *) - 324 | invert' (n + 1) s' maxoffset - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/substitution.ml", lines 335-350, characters 4-65: - 335 | ....match (s, cPsi) with - 336 | | (Shift _ (* 0 *), Null) -> - 337 | Null - 338 | | (Shift _, CtxVar psi) -> - 339 | CtxVar psi - ... - 347 | | (Dot (Undef, t), DDec (cPsi, _)) -> - 348 | strengthen t cPsi - 349 | | (Shift n, cPsi) -> - 350 | strengthen (Dot (Head (BVar (n + 1)), Shift (n + 1))) cPsi - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dot (Head (BVar _k), t), (Null|CtxVar _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Context.cmx -c -impl src/core/context.ml) - File "src/core/context.ml", lines 90-104, characters 4-24: - 90 | ....function - 91 | | (DDec (_, TypDecl (x, tA')), 1) -> - 92 | TypDecl (x, TClo (tA', Shift k)) - 93 | - 94 | | (DDec (cPsi', TypDecl _), k') -> - ... - 101 | ctxDec' (cPsi', k'-1) - 102 | - 103 | | (CtxVar (CInst ({instantiation = {contents = Some (ICtx cPsi)}; _}, _)), k) -> - 104 | ctxDec' (cPsi, k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxVar - (CInst ({instantiation={contents=Some (INorm _|IHead _|ISub _)}; _ }, _)), - _) - - File "src/core/context.ml", lines 124-134, characters 4-24: - 124 | ....function - 125 | | (DDec (_, TypDecl (x, Sigma tArec)), 1) -> - 126 | TypDecl (x, Sigma (sigmaShift tArec (Shift k))) - 127 | - 128 | | (DDec (cPsi', TypDecl (_, Sigma _)), k') -> - ... - 131 | | (DDec (cPsi', TypDecl _), k') -> - 132 | ctxDec' (cPsi', k' - 1) - 133 | | (CtxVar (CInst ({ instantiation = {contents = Some (ICtx cPhi) }; _ }, _)) , k) -> - 134 | ctxDec' (cPhi, k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (DDec (cPsi', TypDeclOpt _), _) - - File "src/core/context.ml", lines 361-364, characters 2-49: - 361 | ..match (cPsi, k) with - 362 | | (DDec (_, TypDecl (x, _)), 1) -> x - 363 | | (DDec (_, TypDeclOpt x), 1) -> x - 364 | | (DDec (cPsi, _), k) -> getNameDCtx cPsi (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Null|CtxVar _), _) - - File "src/core/context.ml", lines 367-371, characters 2-27: - 367 | ..match (cD, k) with - 368 | | (Dec (_, Decl { name = u; _ }), 1) -> u - 369 | | (Dec (_, DeclOpt { name = u; _ }), 1) -> u - 370 | | (Dec (cD, _), k) -> - 371 | getNameMCtx cD (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Empty, _) - - File "src/core/context.ml", lines 374-377, characters 2-45: - 374 | ..match (cG, k) with - 375 | | (Dec (_, Comp.CTypDecl (x, _ , _)), 1) -> x - 376 | | (Dec (_, Comp.CTypDeclOpt x), 1) -> x - 377 | | (Dec (cG, _), k) -> getNameCtx cG (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Empty, _) - - File "src/core/context.ml", lines 401-403, characters 4-58: - 401 | ....function - 402 | | CtxVar ctx_var -> DDec (CtxVar ctx_var, new_typ_decl) - 403 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Null - - File "src/core/context.ml", lines 409-411, characters 4-58: - 409 | ....function - 410 | | CtxVar ctx_var -> Null - 411 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Null - - File "src/core/context.ml", lines 436-439, characters 2-28: - 436 | ..match (cD, psi_offset) with - 437 | | (Dec (_, Decl { typ = CTyp (Some cid_schema); _ }), 1) -> cid_schema - 438 | | (Dec (cD, _) , i) -> - 439 | lookupSchema cD (i - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Empty, _) - - File "src/core/context.ml", lines 446-453, characters 7-10: - 446 | .......begin match cvar with - 447 | | CtxName phi when Name.(psi = phi) -> (psi, schemaName) - 448 | | CtxName _ -> lookup cD (offset + 1) - 449 | | CtxOffset n -> - 450 | if n - offset = 1 - 451 | then (psi, schemaName) - 452 | else lookup cD (offset + 1) - 453 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CInst _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Store.cmx -c -impl src/core/store.ml) - File "src/core/store.ml", lines 212-217, characters 6-45: - 212 | ......function - 213 | | Int.LF.Atom(_, b, _) -> - 214 | List.iter (fun a -> addSubord a b) acc ; [b] - 215 | - 216 | | Int.LF.PiTyp((Int.LF.TypDecl(_, tA1), _, _), tA2) -> - 217 | inspect (acc @ (inspect [] tA1)) tA2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/store.ml", lines 222-226, characters 6-56: - 222 | ......function - 223 | | Int.LF.Typ -> - 224 | List.iter (fun a -> addSubord a cid_tp) acc - 225 | | Int.LF.PiKind((Int.LF.TypDecl(_, tA1), _, _), tK2) -> - 226 | inspectKind cid_tp (acc @ (inspect [] tA1)) tK2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Whnf.cmx -c -impl src/core/whnf.ml) - File "src/core/whnf.ml", lines 36-39, characters 2-73: - 36 | ..match cPsi with - 37 | | Null -> tA - 38 | | DDec (cPsi', decl) -> - 39 | raiseType cPsi' (PiTyp ((decl, Depend.maybe, Plicity.implicit), tA)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar _ - - File "src/core/whnf.ml", lines 133-148, characters 2-64: - 133 | ..match sA' with - 134 | | (PiTyp ((decl, _, _), tA'), s') -> - 135 | let (u', tM) = - 136 | lowerMVar' - 137 | (DDec (cPsi, LF.decSub decl s')) - ... - 145 | - 146 | | (Atom (loc, a, tS), s') -> - 147 | let u' = newMVar None (cPsi, Atom (loc, a, SClo (tS, s'))) plicity inductivity in - 148 | (u', Root (Location.ghost, MVar (u', LF.id), Nil, plicity)).................... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _, _) - - File "src/core/whnf.ml", lines 152-162, characters 2-25: - 152 | ..match (u, sA) with - 153 | | ( Inst { instantiation; typ = ClTyp (_, cPsi); plicity; inductivity; _ } - 154 | , (PiTyp _, _) - 155 | ) -> - 156 | let (u', tM) = lowerMVar' cPsi sA plicity inductivity in - ... - 159 | - 160 | | (_, (TClo (tA, s), s')) -> lowerMVar1 u (tA, LF.comp s s') - 161 | - 162 | | (_, (Atom _, _)) -> u - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Inst {typ=ClTyp (_, _); _ }, (Sigma _, _)) - - File "src/core/whnf.ml", lines 319-329, characters 4-31: - 319 | ....match s with - 320 | | MShift _ -> None - 321 | | MDot (MUndef, t') -> lookup (n + 1) t' p - 322 | - 323 | | MDot (MV k, t') - ... - 326 | | MDot (ClObj (_, PObj (PVar (k, Shift 0))), t') -> - 327 | if k = p - 328 | then Some n - 329 | else lookup (n + 1) t' p - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MDot (CObj (CtxVar (CtxName _|CInst _)), _) - - File "src/core/whnf.ml", lines 385-387, characters 7-59: - 385 | .......match normHead (h, sigma) with - 386 | | Head h' -> Root (loc, h', normSpine (tS, sigma), plicity) - 387 | | Obj tM -> reduce (tM, LF.id) (normSpine (tS, sigma)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 404-407, characters 5-8: - 404 | .....begin match normMMVar mmt with - 405 | | ResMM mmt' -> Head (HMClo (k, (mmt', normSub' (s, sigma)))) - 406 | | Result (ISub r) -> normFt' (normFt' (LF.bvarSub k r, s), sigma) - 407 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 409-413, characters 5-8: - 409 | .....begin match normMMVar mmt with - 410 | (* The order in which we normalize mm, n, s, and sigma seems to matter..*) - 411 | | ResMM mmt' -> Head (MMVar (mmt', normSub' (s, sigma))) - 412 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) - 413 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 415-419, characters 5-8: - 415 | .....begin match normMMVar mmt with - 416 | | ResMM mmt' -> Head (MPVar (mmt', normSub' (s, sigma))) - 417 | | Result (IHead h) -> normFt' (normHead (h, s), sigma) - 418 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) - 419 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (ISub _|ICtx _) - - File "src/core/whnf.ml", lines 422-425, characters 5-8: - 422 | .....begin match normMMVar (mm, MShift 0) with - 423 | | ResMM (mm', _) -> Head (MVar (Inst mm', normSub' (s, sigma))) - 424 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) - 425 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 449-451, characters 2-32: - 449 | ..match ft with - 450 | | Head h -> normHead (h, s) - 451 | | Obj tM -> Obj (norm (tM, s)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 454-457, characters 2-37: - 454 | ..match tM with - 455 | | INorm n -> INorm (cnorm (n, mt)) - 456 | | IHead h -> IHead (cnormHead (h, mt)) - 457 | | ISub s -> ISub (cnormSub (s, mt)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ICtx _ - - File "src/core/whnf.ml", lines 463-466, characters 5-8: - 463 | .....begin match normHead (h, s) with - 464 | | Obj tM -> MObj tM - 465 | | Head h' -> PObj h' - 466 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 470-473, characters 2-64: - 470 | ..match normFt' (ft, LF.id) with - 471 | | Head h -> Head (Proj (h, i)) - 472 | | Obj (Tuple (_, tM)) -> Obj (reduceTuple (tM, i)) - 473 | | Obj _ -> Error.raise_violation "[reduceTupleFt] not a tuple" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 476-479, characters 2-50: - 476 | ..function - 477 | | (Last tM, 1) -> tM - 478 | | (Cons (tM, _), 1) -> tM - 479 | | (Cons (_, rest), k) -> reduceTuple (rest, k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Last tM, 0) - - File "src/core/whnf.ml", lines 507-521, characters 2-17: - 507 | ..function - 508 | | (LFHole (l, _, _), _) -> - 509 | raise (InvalidLFHole l) - 510 | - 511 | | (Root (loc, h, sp, plicity), spine) -> - ... - 518 | Lam (loc, n, tM') - 519 | - 520 | | (Clo sM, tS) -> - 521 | reduce sM tS - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _), SClo _) - - File "src/core/whnf.ml", lines 524-526, characters 2-54: - 524 | ..function - 525 | | (Nil, s) -> s - 526 | | (App (tN, tS), s) -> App (tN, appendSpine (tS, s)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (SClo _, _) - - File "src/core/whnf.ml", lines 537-543, characters 5-8: - 537 | .....begin match mmvar.instantiation.contents with - 538 | | Some (ISub s) -> - 539 | let s0 = cnormSub (LF.comp (normSub s) (normSub s'), mt) in - 540 | LF.comp (Shift n) s0 - 541 | | None -> - 542 | MSVar (n, ((mmvar, mt), normSub s')) - 543 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 562-573, characters 2-37: - 562 | ..match tA with - 563 | | Atom (loc, a, tS) -> - 564 | Atom (loc, a, normSpine (tS, sigma)) - 565 | - 566 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> - ... - 570 | normTyp (tA, LF.comp s sigma) - 571 | - 572 | | Sigma recA -> - 573 | Sigma (normTypRec (recA, sigma)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/whnf.ml", lines 620-629, characters 5-8: - 620 | .....begin match !u with - 621 | | None -> - 622 | (Some (CInst (mmvar, mcomp theta t)), k) - 623 | | Some (ICtx cPsi) -> - 624 | (* | (Some (CInst ((_, { contents = Some (ICtx cPsi) }, _, _, _, _), theta)), k) -> *) - 625 | begin match Context.dctxToHat (cnormDCtx (cPsi, mcomp theta t)) with - 626 | | (None, i) -> (None, k + i) (* cnorm_psihat (None, k + i) t *) - 627 | | (Some cvar', i) -> (Some cvar', k + i) (* cnorm_psihat (Some cvar', k + i) t *) - 628 | end - 629 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 631-641, characters 5-8: - 631 | .....begin match LF.applyMSub offset t with - 632 | | CObj cPsi -> - 633 | begin match Context.dctxToHat cPsi with - 634 | | (None, i) -> (None, k + i) - 635 | | (Some cvar', i) -> (Some cvar', k + i) - ... - 638 | | ClObj _ -> - 639 | Error.raise_violation - 640 | (Format.asprintf "[cnorm_psihat] ClObj impossible; offset %d" offset) - 641 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MUndef - - File "src/core/whnf.ml", lines 656-659, characters 5-8: - 656 | .....begin match LF.applyMSub k t with - 657 | | MV k' -> Head (MVar (Offset k', s')) - 658 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) - 659 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, (PObj _|SObj _)) - - File "src/core/whnf.ml", lines 662-666, characters 5-8: - 662 | .....begin match LF.applyMSub k t with - 663 | | MV k' -> Head (PVar (k', s')) - 664 | | ClObj (_, PObj h) -> normHead (h, s') - 665 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) - 666 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/whnf.ml", lines 669-672, characters 5-8: - 669 | .....begin match LF.applyMSub sv t with - 670 | | MV sv' -> Head (HClo (k, sv', s')) - 671 | | ClObj (_, SObj r) -> normFt' (LF.bvarSub k r, s') - 672 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, (MObj _|PObj _)) - - File "src/core/whnf.ml", lines 674-677, characters 5-8: - 674 | .....begin match normMMVar mmt with - 675 | | ResMM (mm', mt) -> Head (MMVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) - 676 | | Result (INorm n) -> Obj (cnorm (norm (n, s), t)) - 677 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 679-684, characters 5-8: - 679 | .....begin match normMMVar mmt with - 680 | | ResMM (mm', mt) -> Head (MPVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) - 681 | | Result (IHead h) -> cnormFt' (normHead (h, s), t) - 682 | | Result (INorm n) -> - 683 | Obj (cnorm (norm (n, s), t)) - 684 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (ISub _|ICtx _) - - File "src/core/whnf.ml", lines 686-689, characters 5-8: - 686 | .....begin match normMMVar mmt with - 687 | | ResMM (mm', mt) -> Head (HMClo (k, ((mm', cnormMSub' (mt, t)), cnormSub (s, t)))) - 688 | | Result (ISub r) -> cnormFt' (normFt' (LF.bvarSub k r, s), t) - 689 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 691-694, characters 5-8: - 691 | .....begin match normMMVar (mm, MShift 0) with - 692 | | ResMM (mm', _) -> Head (MVar (Inst mm', cnormSub (s, t))) - 693 | | Result (INorm n) -> Obj (norm (n, s)) - 694 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Result (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 698-700, characters 2-38: - 698 | ..function - 699 | | (Head h, t) -> cnormHead' (h, t) - 700 | | (Obj tM, t) -> Obj (cnorm (tM, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undef, _) - - File "src/core/whnf.ml", lines 713-721, characters 5-8: - 713 | .....begin match cnormHead' (head, t) with - 714 | | Head h' -> Root (loc, h', cnormSpine (tS, t), plicity) - 715 | | Obj tM -> - 716 | (* in this ends up evaluating to a Root, we want to keep the - 717 | plicity that we had here *) - 718 | map_plicity - 719 | (fun _ -> plicity) - 720 | (reduce (tM, LF.id) (cnormSpine (tS, t))) - 721 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/whnf.ml", lines 728-729, characters 2-17: - 728 | ..match cnormHead' (h, t) with - 729 | | Head h' -> h' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undef|Obj _) - - File "src/core/whnf.ml", lines 752-758, characters 5-8: - 752 | .....begin match LF.applyMSub offset t with - 753 | | MV offset' -> SVar (offset', n, cnormSub (s', t)) - 754 | | ClObj (_, SObj r) -> - 755 | LF.comp (LF.comp (Shift n) r) (cnormSub (s', t)) - 756 | | ClObj _ -> - 757 | Error.raise_violation "[cnormSub] t @ offset must give an MV or ClObj SObj" - 758 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|CObj _) - - File "src/core/whnf.ml", lines 764-775, characters 5-56: - 764 | .....match mmvar.instantiation.contents with - 765 | | Some (ISub s) -> - 766 | dprintf - 767 | begin fun p -> - 768 | p.fmt "[cnormSub] @[<v>MSVar - MSInst for @[%a@]@]" - ... - 772 | let s0' = LF.comp (Shift n) s0 in - 773 | cnormSub (s0', t) - 774 | | None -> - 775 | MSVar (n, ((mmvar, cnormMSub (mcomp mt t)), s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ICtx _) - - File "src/core/whnf.ml", lines 793-803, characters 2-34: - 793 | ..match tA with - 794 | | Atom (loc, a, tS) -> - 795 | Atom (loc, a, cnormSpine (tS, t)) - 796 | - 797 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> - ... - 800 | | TClo (tA, s) -> normTyp (cnormTyp (tA, t), cnormSub (s, t)) - 801 | - 802 | | Sigma recA -> - 803 | Sigma (cnormTypRec (recA, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/whnf.ml", lines 832-837, characters 5-8: - 832 | .....begin match !u with - 833 | | None -> - 834 | CtxVar (CInst (mmvar, mcomp theta t)) - 835 | | Some (ICtx cPhi) -> - 836 | cnormDCtx (cPhi, mcomp theta t) - 837 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 840-843, characters 5-8: - 840 | .....begin match LF.applyMSub psi t with - 841 | | CObj cPsi' -> normDCtx cPsi' - 842 | | MV k -> CtxVar (CtxOffset k) - 843 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|ClObj (_, _)) - - File "src/core/whnf.ml", lines 886-889, characters 5-8: - 886 | .....begin match mmvar.instantiation.contents with - 887 | | None -> cPsi - 888 | | Some (ICtx cPhi) -> normDCtx (cnormDCtx (cPhi, theta)) - 889 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 960-973, characters 8-11: - 960 | ........begin match h' with - 961 | | BVar i -> - 962 | begin match LF.bvarSub i (LF.comp r sigma) with - 963 | | Obj tM -> whnfRedex ((tM, LF.id), (tS, sigma)) - 964 | | Head (BVar k) -> (Root (loc, BVar k, SClo (tS, sigma), plicity), LF.id) - ... - 970 | let h' = PVar (p, LF.comp (LF.comp s r) sigma) in - 971 | whnf (Root (loc, h', SClo (tS, sigma), plicity), LF.id) - 972 | | MPVar ((q, t'), r') -> whnf (Root (loc, MPVar ((q, t'), LF.comp r' r), SClo (tS, sigma), plicity), LF.id) - 973 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| - HClo (_, _, _)|HMClo (_, _)) - - File "src/core/whnf.ml", lines 956-979, characters 5-8: - 956 | .....begin match u with - 957 | (* MPVar instantiation must be a head *) - 958 | | Some (IHead h) -> - 959 | let h' = cnormHead (h, t) in - 960 | begin match h' with - ... - 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in - 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in - 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) - 979 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 954-979, characters 5-8: - 954 | .....let ClTyp (PTyp tA, cPsi) = mmvar.typ in - 955 | let u = mmvar.instantiation.contents in - 956 | begin match u with - 957 | (* MPVar instantiation must be a head *) - 958 | | Some (IHead h) -> - ... - 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in - 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in - 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) - 979 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 995-1011, characters 8-11: - 995 | ........begin match whnfTyp (tA, LF.id) with - 996 | | (Atom (loc', a, tS'), _ (* id *)) -> - 997 | (* meta-variable is of atomic type; tS = Nil *) - 998 | let u' = { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in - 999 | (Root (loc, MMVar ((u', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) - ... - 1008 | (* let _ = lowerMMVar cD u in - 1009 | whnf (tM, sigma) *) - 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" - 1011 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Sigma _|TClo _), _) - - File "src/core/whnf.ml", lines 985-1012, characters 5-8: - 985 | .....begin match u with - 986 | (* MMVar instantiation must be normal *) - 987 | | Some (INorm tM) -> - 988 | (* constraints associated with u must be in solved form *) - 989 | let tM' = cnorm (tM, t) in - ... - 1009 | whnf (tM, sigma) *) - 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" - 1011 | end - 1012 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 983-1012, characters 5-8: - 983 | .....let ClTyp (MTyp tA, cPsi) = mmvar.typ in - 984 | let u = mmvar.instantiation.contents in - 985 | begin match u with - 986 | (* MMVar instantiation must be normal *) - 987 | | Some (INorm tM) -> - ... - 1009 | whnf (tM, sigma) *) - 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" - 1011 | end - 1012 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 1041-1053, characters 8-11: - 1041 | ........begin match whnfTyp (tA, LF.id) with - 1042 | | (Atom (loc', a, tS'), _ (* id *)) -> - 1043 | (* meta-variable is of atomic type; tS = Nil *) - 1044 | let u' = Inst { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in - 1045 | (Root (loc, MVar (u', LF.comp r' sigma), SClo (tS, sigma), plicity), LF.id) - ... - 1050 | *) - 1051 | ignore (lowerMVar cvar); - 1052 | whnf (tM, sigma) - 1053 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Sigma _|TClo _), _) - - File "src/core/whnf.ml", lines 1036-1053, characters 8-11: - 1036 | ........let ClTyp (MTyp tA, cPsi) = mmvar.typ in - 1037 | (* note: we could split this case based on tA; - 1038 | * this would avoid possibly building closures with id - 1039 | *) - 1040 | let r' = normSub r in - ... - 1050 | *) - 1051 | ignore (lowerMVar cvar); - 1052 | whnf (tM, sigma) - 1053 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 1023-1054, characters 5-8: - 1023 | .....begin match u with - 1024 | | Some (INorm tM) -> - 1025 | (* constraints associated with u must be in solved form *) - 1026 | let r' = normSub r in - 1027 | let tM' = - ... - 1051 | ignore (lowerMVar cvar); - 1052 | whnf (tM, sigma) - 1053 | end - 1054 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (IHead _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 1073-1082, characters 5-8: - 1073 | .....begin match LF.bvarSub i sigma with - 1074 | | Head (BVar j) -> - 1075 | ( Root (loc, Proj (BVar j, k), SClo (tS, sigma), plicity) - 1076 | , LF.id - 1077 | ) - 1078 | | Head (PVar (q, s)) -> - 1079 | ( Root (loc, Proj (PVar (q, s), k), SClo (tS, sigma), plicity) - 1080 | , LF.id - 1081 | ) - 1082 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/whnf.ml", lines 1098-1109, characters 11-14: - 1098 | ...........begin match LF.bvarSub i (LF.comp r sigma) with - 1099 | | Head (BVar x) -> - 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) - 1101 | , LF.id - 1102 | ) - ... - 1106 | ) - 1107 | | Undef -> - 1108 | Error.raise_violation ("[whnf] Undef looked up at " ^ string_of_int i) - 1109 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Obj _ - - File "src/core/whnf.ml", lines 1096-1118, characters 8-11: - 1096 | ........begin match cnormHead (h, t) with - 1097 | | BVar i -> - 1098 | begin match LF.bvarSub i (LF.comp r sigma) with - 1099 | | Head (BVar x) -> - 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) - ... - 1115 | | MPVar ((q, t'), r') -> - 1116 | let h' = Proj (MPVar ((q, t'), LF.comp (LF.comp r' r) sigma), k) in - 1117 | (Root (loc, h', SClo (tS, sigma), plicity), LF.id) - 1118 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| - HClo (_, _, _)|HMClo (_, _)) - - File "src/core/whnf.ml", lines 1120-1127, characters 8-9: - 1120 | ........let ClTyp (PTyp tA, cPsi) = mmvar.typ in - 1121 | (* constraints associated with q must be in solved form *) - 1122 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in - 1123 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in - 1124 | let h' = Proj (MPVar ((p', t), LF.comp r sigma), k) in - 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) - 1126 | , LF.id - 1127 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|STyp (_, _)), _) - - File "src/core/whnf.ml", lines 1093-1128, characters 5-8: - 1093 | .....begin match mmvar.instantiation.contents with - 1094 | | Some (IHead h) -> - 1095 | (* constraints associated with q must be in solved form *) - 1096 | begin match cnormHead (h, t) with - 1097 | | BVar i -> - ... - 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) - 1126 | , LF.id - 1127 | ) - 1128 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|ISub _|ICtx _) - - File "src/core/whnf.ml", lines 1143-1157, characters 2-39: - 1143 | ..function - 1144 | | ((LFHole (l, id, name), s1), _) -> raise (InvalidLFHole l) - 1145 | | ((Root _ as root, s1), (Nil, _)) -> whnf (root, s1) - 1146 | - 1147 | | ((Lam (_, _, tM), s1), (App (tN, tS), s2)) -> - ... - 1154 | whnfRedex (sM, (tS, LF.comp s2' s2)) - 1155 | - 1156 | | ((Clo (tM, s), s1), sS) -> - 1157 | whnfRedex ((tM, LF.comp s s1), sS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Root (_, _, _, _), _), (App (_, _), _)) - - File "src/core/whnf.ml", lines 1180-1191, characters 2-15: - 1180 | ..function - 1181 | | [] -> true - 1182 | | ({ contents = Queued _ } :: cnstrs) -> - 1183 | constraints_solved cnstrs - 1184 | | ({ contents = Eqn (_, _, _, INorm tM, INorm tN) } :: cnstrs) -> - ... - 1188 | | ({ contents = Eqn (_, _, _, IHead h1, IHead h2) } :: cnstrs) -> - 1189 | if convHead (h1, LF.id) (h2, LF.id) - 1190 | then constraints_solved cnstrs - 1191 | else false - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - {contents=Eqn (_, _, _, INorm tM, (IHead _|ISub _|ICtx _))}::_ - - File "src/core/whnf.ml", lines 1283-1288, characters 2-71: - 1283 | ..match (spine1, spine2) with - 1284 | | ((Nil, _), (Nil, _)) -> true - 1285 | | ((App (tM1, spine1), s1), (App (tM2, spine2), s2)) -> - 1286 | conv (tM1, s1) (tM2, s2) && convSpine (spine1, s1) (spine2, s2) - 1287 | | (spine1, (SClo (tS, s), s')) -> convSpine spine1 (tS, LF.comp s s') - 1288 | | ((SClo (tS, s), s'), spine2) -> convSpine (tS, LF.comp s s') spine2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Nil, _), (App (_, _), _)) - - File "src/core/whnf.ml", lines 1457-1465, characters 2-32: - 1457 | ..match (cPsi, cPsi') with - 1458 | | (_, Empty) -> true - 1459 | | Dec (cPsi1, TypDecl (_, tA)), Dec (cPsi2, TypDecl (_, tB)) -> - 1460 | if convTyp (tA, LF.id) (tB, LF.id) - 1461 | then convSubsetCtx cPsi1 cPsi2 - 1462 | else - 1463 | (* keep tBs around and check that tA is a subordinate of tB, - 1464 | i.e. anything in tA cannot influence tB *) - 1465 | convSubsetCtx cPsi1 cPsi' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dec (_, TypDecl (_, _)), Dec (cPsi2, TypDeclOpt _)) - - File "src/core/whnf.ml", lines 1591-1593, characters 4-76: - 1591 | ....match mO with - 1592 | | CObj cPsi -> CObj (normDCtx cPsi) - 1593 | | ClObj (phat, n) -> ClObj (cnorm_psihat phat m_id, normMObj (n, LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|MV _) - - File "src/core/whnf.ml", lines 1604-1624, characters 2-49: - 1604 | ..function - 1605 | | Comp.TypBase (loc, c, mS) -> - 1606 | Comp.TypBase (loc, c, normMetaSpine mS) - 1607 | | Comp.TypCobase (loc, c, mS) -> - 1608 | Comp.TypCobase (loc, c, normMetaSpine mS) - ... - 1621 | Comp.TypPiBox - 1622 | (loc, (Decl { d with typ = typ' }), tau') - 1623 | - 1624 | | Comp.TypInd tau -> Comp.TypInd (normCTyp tau) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypPiBox (loc, DeclOpt _, _) - - File "src/core/whnf.ml", lines 1640-1643, characters 2-30: - 1640 | ..match cdecl with - 1641 | | Decl d -> - 1642 | let typ' = cnormMTyp (d.typ, t) in - 1643 | Decl { d with typ = typ' } - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/whnf.ml", lines 1646-1670, characters 2-60: - 1646 | ..function - 1647 | | (Comp.TypBase (loc, a, mS), t) -> - 1648 | let mS' = cnormMetaSpine (mS, t) in - 1649 | Comp.TypBase (loc, a, mS') - 1650 | | (Comp.TypCobase (loc, a, mS), t) -> - ... - 1667 | | (Comp.TypClo (tT, t'), t) -> - 1668 | cnormCTyp (tT, mcomp t' t) - 1669 | - 1670 | | (Comp.TypInd tau, t) -> Comp.TypInd (cnormCTyp (tau, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _), _) - - File "src/core/whnf.ml", lines 1673-1675, characters 2-47: - 1673 | ..match cdecl with - 1674 | | Comp.CTypDecl(n, typ, wf_t) -> - 1675 | Comp.CTypDecl(n, cnormCTyp (typ, t), wf_t) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", lines 1691-1707, characters 2-70: - 1691 | ..function - 1692 | | (Comp.TypBase (loc, c, mS), t) -> - 1693 | let mS' = normMetaSpine (cnormMetaSpine (mS, t)) in - 1694 | (Comp.TypBase (loc, c, mS'), m_id) - 1695 | | (Comp.TypCobase (loc, c, mS), t) -> - ... - 1704 | - 1705 | | (Comp.TypClo (tT, t'), t) -> cwhnfCTyp (tT, mcomp t' t) - 1706 | - 1707 | | (Comp.TypInd tau, t) -> (Comp.TypInd (Comp.TypClo (tau, t)), m_id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _), _) - - File "src/core/whnf.ml", lines 1902-1905, characters 2-74: - 1902 | ..match cG with - 1903 | | Empty -> Empty - 1904 | | Dec (cG, Comp.CTypDecl (x, tau, flag)) -> - 1905 | Dec (cwhnfCtx (cG, t), Comp.CTypDecl (x, Comp.TypClo (tau, t), flag)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/whnf.ml", lines 1928-1930, characters 2-62: - 1928 | ..function - 1929 | | Comp.CTypDecl (x, tau, flag) -> - 1930 | Comp.CTypDecl (x, normCTyp (cnormCTyp (tau, m_id)), flag) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", lines 1957-1962, characters 2-41: - 1957 | ..match cD with - 1958 | | Empty -> Empty - 1959 | | Dec (cD, Decl d) -> - 1960 | let typ' = normMTyp d.typ in - 1961 | let cD' = normMCtx cD in - 1962 | Dec (cD', Decl { d with typ = typ' }) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD, DeclOpt _) - - File "src/core/whnf.ml", lines 1990-1993, characters 2-60: - 1990 | ..match (tM1, tM2) with - 1991 | | (INorm n1, INorm n2) -> conv (n1, LF.id) (n2, LF.id) - 1992 | | (ISub s1, ISub s2) -> convSub s1 s2 - 1993 | | (IHead h1, IHead h2) -> convHead (h1, LF.id) (h2, LF.id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (INorm n1, (IHead _|ISub _|ICtx _)) - - File "src/core/whnf.ml", lines 1998-2004, characters 2-25: - 1998 | ..match (mS, mS') with - 1999 | | (Comp.MetaNil, Comp.MetaNil) -> true - 2000 | | (Comp.MetaApp (mO, mT, mS, p1), Comp.MetaApp (mO', mT', mS', p2)) -> - 2001 | convMetaObj mO mO' - 2002 | && convMetaTyp mT mT' - 2003 | && convMetaSpine mS mS' - 2004 | && Plicity.(p1 = p2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaNil, MetaApp (_, _, _, _)) - - File "src/core/whnf.ml", lines 2071-2075, characters 2-42: - 2071 | ..match (d1, d2) with - 2072 | | (CTypDeclOpt x1, CTypDeclOpt x2) -> Name.(x1 = x2) - 2073 | | (CTypDecl (x1, tau1, w1), CTypDecl (x2, tau2, w2)) -> - 2074 | Name.(x1 = x2) && Stdlib.(=) w1 w2 - 2075 | && convCTyp (tau1, m_id) (tau2, m_id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CTypDeclOpt x1, CTypDecl (_, _, _)) - - File "src/core/whnf.ml", lines 2095-2105, characters 2-8: - 2095 | ..match sA with - 2096 | | (Atom (loc, _, _) as tP, s) -> - 2097 | let u = newMVar (Some n) (cPsi, tclo tP s) plicity inductivity in - 2098 | Root (loc, MVar (u, s'), Nil, plicity) - 2099 | - ... - 2102 | ( Name.location x - 2103 | , x - 2104 | , etaExpandMV (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity - 2105 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/whnf.ml", lines 2120-2130, characters 2-8: - 2120 | ..match sA with - 2121 | | (Atom _ as tP, s) -> - 2122 | let u = newMMVar (Some n) (cD, cPsi, tclo tP s) plicity inductivity in - 2123 | Root (loc, MMVar ((u, m_id), s'), Nil, plicity) - 2124 | - ... - 2127 | ( loc - 2128 | , x - 2129 | , etaExpandMMV loc cD (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity - 2130 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/whnf.ml", lines 2135-2141, characters 2-42: - 2135 | ..match tM with - 2136 | | Lam (_, _, tM) -> closed (tM, LF.dot1 s) - 2137 | | Root (_, h, tS, _) -> - 2138 | closedHead h - 2139 | && closedSpine (tS, s) - 2140 | | LFHole _ -> false - 2141 | | Tuple (_, tup) -> closedTuple (tup, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Clo _ - - File "src/core/whnf.ml", lines 2166-2174, characters 2-28: - 2166 | ..function - 2167 | | EmptySub -> true - 2168 | | Undefs -> true - 2169 | | SVar (_, _, sigma) -> closedSub sigma - 2170 | | Shift _ -> true - 2171 | | Dot (ft, s) -> closedFront ft && closedSub s - 2172 | | MSVar (_, ((v, t), s)) -> - 2173 | (* the case for MMVar doesn't also check the substitution -je *) - 2174 | is_mmvar_instantiated v..................... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - FSVar (_, _) - - File "src/core/whnf.ml", lines 2185-2190, characters 2-40: - 2185 | ..match tA with - 2186 | | Atom (_, _, tS) -> closedSpine (tS, s) - 2187 | | PiTyp ((t_dec, _, _), tA) -> - 2188 | closedDecl (t_dec, s) - 2189 | && closedTyp (tA, LF.dot1 s) - 2190 | | Sigma recA -> closedTypRec (recA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/whnf.ml", lines 2208-2211, characters 5-8: - 2208 | .....begin match mmvar.instantiation.contents with - 2209 | | None -> false - 2210 | | Some (ICtx cPsi) -> closedDCtx (cnormDCtx (cPsi, theta)) - 2211 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/whnf.ml", lines 2241-2244, characters 2-56: - 2241 | ..function - 2242 | | CObj cPsi -> closedDCtx cPsi - 2243 | | ClObj (phat, t) -> - 2244 | closedDCtx (Context.hatToDCtx phat) && closedMObj t - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|MV _) - - File "src/core/whnf.ml", lines 2255-2264, characters 2-37: - 2255 | ..function - 2256 | | Comp.TypBase (_, _, mS) -> closedMetaSpine mS - 2257 | | Comp.TypCobase (_, _, mS) -> closedMetaSpine mS - 2258 | | Comp.TypBox (_, cT) -> closedMetaTyp cT - 2259 | | Comp.TypArr (_, cT1, cT2) -> closedCTyp cT1 && closedCTyp cT2 - 2260 | | Comp.TypCross (_, cTs) -> List2.for_all (fun cT -> closedCTyp cT) cTs - 2261 | | Comp.TypPiBox (_, ctyp_decl, cT) -> - 2262 | closedCTyp cT && closedDecl ctyp_decl - 2263 | | Comp.TypClo (cT, t) -> closedCTyp (cnormCTyp (cT, t)) (* to be improved Sun Dec 13 11:45:15 2009 -bp *) - 2264 | | Comp.TypInd tau -> closedCTyp tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDef (_, _, _) - - File "src/core/whnf.ml", line 2406, characters 37-65: - 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", line 2406, characters 8-36: - 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/whnf.ml", line 2412, characters 32-55: - 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/whnf.ml", line 2412, characters 8-31: - 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/whnf.ml", lines 2418-2420, characters 2-93: - 2418 | ..function - 2419 | | (Atom _, _) as sA -> (cPsi, whnfTyp sA) - 2420 | | (PiTyp ((decl, _, _), tB), s) -> lowerTyp (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Sigma _|TClo _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Subord.cmx -c -impl src/core/subord.ml) - File "src/core/subord.ml", lines 98-101, characters 7-43: - 98 | .......function - 99 | | Atom _ -> [tA] - 100 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> - 101 | extract_neg tA1 @ extract_pos tA2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/subord.ml", lines 103-106, characters 7-43: - 103 | .......function - 104 | | Atom _ -> [] - 105 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> - 106 | extract_pos tA1 @ extract_neg tA2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/subord.ml", lines 85-112, characters 2-47: - 85 | ..match tA with - 86 | | Atom (_, a, _) -> - 87 | Store.Cid.Typ.freeze a; - 88 | if List.exists - 89 | begin fun type_in_basis -> - ... - 109 | If we keep this, then we might not strengthen enough... -bp*) - 110 | List.fold_left (fun l tA -> relevant tA basis @ l) [] (extract_neg tA1) - 111 | @ relevant tA2 basis - 112 | | Sigma typRec -> relevantTypRec typRec basis - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/subord.ml", lines 159-161, characters 9-71: - 159 | .........match psi with - 160 | | CtxOffset _ -> Context.lookupCtxVarSchema cD psi - 161 | | CInst ({ typ = CTyp (Some cid_schema); _ }, _) -> cid_schema - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CInst ({typ=CTyp None; _ }, _) - - File "src/core/subord.ml", lines 155-187, characters 4-10: - 155 | ....match cPsi with - 156 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) - 157 | | CtxVar psi -> - 158 | let schema = - 159 | match psi with - ... - 184 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) - 185 | let thin_s_inv = Substitution.LF.invert thin_s in - 186 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) - 187 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/subord.ml", line 189, characters 8-45: - 189 | inner (match tP with Atom (_, a, _) -> [a]) cPsi - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) - - File "src/core/subord.ml", lines 215-216, characters 16-21: - 215 | ................let (_, Decl { typ = CTyp (Some s_cid); _ }) = Store.FCVar.get psi in - 216 | s_cid - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=CTyp None; _ }) - - File "src/core/subord.ml", lines 205-238, characters 4-10: - 205 | ....match Whnf.cnormDCtx (cPsi, MShift 0) with - 206 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) - 207 | | CtxVar psi -> - 208 | begin - 209 | try - ... - 235 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) - 236 | let thin_s_inv = Substitution.LF.invert thin_s in - 237 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) - 238 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/subord.ml", lines 249-251, characters 11-24: - 249 | ...........let (_, Decl { typ = CTyp _; _ }) = Store.FCVar.get psi in - 250 | p.fmt "[thin'] CtxName psi = %a FOUND" - 251 | Name.pp psi - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=ClTyp (_, _); _ }) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Ctxsub.cmx -c -impl src/core/ctxsub.ml) - File "src/core/ctxsub.ml", lines 46-65, characters 2-36: - 46 | ..match sA' with - 47 | | (PiTyp ((decl, _, _), tA'), s') -> - 48 | let (tM , sAmv) = - 49 | lowerMVar - 50 | (DDec (cPsi, Substitution.LF.decSub decl s')) - ... - 62 | , Nil - 63 | , Plicity.explicit - 64 | ) , - 65 | ClTyp(MTyp (TClo sA') , cPsi)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _, _) - - File "src/core/ctxsub.ml", lines 88-158, characters 2-89: - 88 | ..function - 89 | | Null -> - 90 | (* Substitution.LF.id --changed 2010-07-26*) - 91 | (cD, ctxShift psi, 0) - 92 | - ... - 155 | - 156 | | DDec (_, TypDecl _) -> - 157 | (* For the moment, assume tA atomic. *) - 158 | Error.raise_not_implemented "[ctxToSub_mclosed] non-atomic cPsi entry not supported" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (_, TypDeclOpt _) - - File "src/core/ctxsub.ml", lines 174-216, characters 2-11: - 174 | ..function - 175 | | Null -> - 176 | (* Substitution.LF.id --changed 2010-07-26*) - 177 | ctxShift cPhi - 178 | - ... - 213 | (* dprint (fun () -> "shifted = " ^ subToString shifted);*) - 214 | let result = Dot (front, s) in - 215 | dprintf (fun p -> p.fmt "result = %a@\n" pp_sub result); - 216 | result - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi', TypDeclOpt _) - - File "src/core/ctxsub.ml", lines 250-255, characters 2-59: - 250 | ..function - 251 | | Empty -> MShift (Context.length cD0) - 252 | | Dec (cD', Decl { name = n; typ = mtyp; plicity; inductivity }) -> - 253 | let t = mctxToMMSub cD0 cD' in - 254 | let mtyp' = Whnf.cnormMTyp (mtyp, t) in - 255 | MDot (mdeclToMMVar cD0 n mtyp' plicity inductivity, t) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt _) - - File "src/core/ctxsub.ml", lines 261-263, characters 2-35: - 261 | ..function - 262 | | t when n <= 0 -> t - 263 | | MDot (_, t') -> drop (n - 1) t' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MShift _ - (However, some guarded clause may match this value.) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__ConvSigma.cmx -c -impl src/core/convSigma.ml) - File "src/core/convSigma.ml", lines 20-22, characters 2-54: - 20 | ..match (conv_list, k) with - 21 | | (d :: conv_list', 1) -> d - 22 | | (d :: conv_list', _) -> d + map conv_list' (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ([], _) - - File "src/core/convSigma.ml", lines 44-52, characters 2-21: - 44 | ..match tM with - 45 | | LF.Lam (loc, x, tN) -> - 46 | let tN' = strans_norm cD (LF.DDec (cPsi, LF.TypDeclOpt x)) (tN, S.LF.dot1 s) (1 :: conv_list) in - 47 | LF.Lam (loc, x, tN') - 48 | | LF.Root (loc, h, tS, plicity) -> - 49 | let h' = strans_head loc cD cPsi h conv_list in - 50 | let tS' = strans_spine cD cPsi (tS, s) conv_list in - 51 | LF.Root (loc, h', tS', plicity) - 52 | | LF.LFHole _ -> tM - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _|Tuple (_, _)) - - File "src/core/convSigma.ml", lines 55-101, characters 2-8: - 55 | ..match h with - 56 | | LF.BVar x -> LF.BVar (map conv_list x) - 57 | - 58 | | LF.MVar (LF.Offset u, sigma) -> - 59 | LF.MVar (LF.Offset u, strans_sub cD cPsi sigma conv_list) - ... - 98 | LF.BVar x' - 99 | with - 100 | | _ -> LF.Proj (LF.BVar x, j) - 101 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Proj - ((Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - HClo (_, _, _)|HMClo (_, _)), - _) - - File "src/core/convSigma.ml", lines 112-118, characters 2-26: - 112 | ..match mf with - 113 | | LF.ClObj (phat, LF.MObj tM) -> - 114 | LF.ClObj (phat, LF.MObj (strans_norm cD cPsi (tM, S.LF.id) conv_list )) - 115 | | LF.ClObj (phat, LF.PObj h) -> - 116 | LF.ClObj (phat, LF.PObj (strans_head Location.ghost cD cPsi h conv_list)) - 117 | | LF.MV u -> LF.MV u - 118 | | LF.MUndef -> LF.MUndef - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/convSigma.ml", lines 121-123, characters 2-55: - 121 | ..function - 122 | | (0, xs) -> n - 123 | | (k, x :: xs) -> shift_conv_list (n + x) (k - 1, xs) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, []) - - File "src/core/convSigma.ml", lines 163-170, characters 2-59: - 163 | ..match tA with - 164 | | LF.Atom (loc, a, tS ) -> - 165 | LF.Atom (loc, a, strans_spine cD cPsi (tS, s) conv_list ) - 166 | - 167 | | LF.PiTyp ((LF.TypDecl (x, tA), depend, plicity), tB) -> - 168 | let tA' = strans_typ cD cPsi (tA, s) conv_list in - 169 | let tB' = strans_typ cD cPsi (tB, S.LF.dot1 s) (1 :: conv_list) in - 170 | LF.PiTyp ((LF.TypDecl (x, tA'), depend, plicity), tB') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/convSigma.ml", lines 384-432, characters 2-24: - 384 | ..match Whnf.whnfTyp sA with - 385 | | LF.Sigma tRec as tA, s -> - 386 | (* FIXME: this doesn't do any strengthening !! -je *) - 387 | let tH = - 388 | mk_head ((new_mxvar n (cD, cPsi, LF.tclo tA s) plicity Inductivity.not_inductive, Whnf.m_id), s) - ... - 429 | let tN = - 430 | etaExpandStrGeneric new_mxvar mk_head loc cD cPsi' (tB, S.LF.dot1 s) plicity n (x :: names) - 431 | in - 432 | LF.Lam (loc, x, tN) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Prettyint.cmx -c -impl src/core/prettyint.ml) - File "src/core/prettyint.ml", lines 237-294, characters 4-39: - 237 | ....function - 238 | | LF.Atom (_, a, LF.Nil) -> - 239 | fprintf ppf "%s" - 240 | (R.render_cid_typ a) - 241 | - ... - 291 | | LF.TClo (typ, s) -> - 292 | fprintf ppf "TClo(%a,@ %a)" - 293 | (fmt_ppr_lf_typ cD cPsi lvl) typ - 294 | (fmt_ppr_lf_sub cD cPsi lvl) s - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/prettyint.ml", lines 434-545, characters 6-51: - 434 | ......function - 435 | | LF.HClo (h, s, sigma) -> - 436 | fprintf ppf "%s[%a[%a]]" - 437 | (R.render_bvar cPsi h) - 438 | (fmt_ppr_lf_offset cD) s - ... - 542 | (r_paren_if (paren s)) - 543 | - 544 | | LF.Proj (head, k) -> - 545 | fmt_head_with ("." ^ string_of_int k) head - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - AnnH (_, _) - - File "src/core/prettyint.ml", lines 769-771, characters 7-52: - 769 | .......match LF.(v.typ) with - 770 | | LF.ClTyp (_, cPsi) -> - 771 | fmt_ppr_lf_iterm LF.(v.cD) cPsi lvl ppf it - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/prettyint.ml", lines 785-794, characters 7-10: - 785 | .......begin match !g with - 786 | | None -> - 787 | fprintf ppf "?%a[%a]" - 788 | Name.pp LF.(v.name) - 789 | (fmt_ppr_lf_msub cD 0) theta - 790 | - 791 | | Some (LF.ICtx cPsi) -> - 792 | fprintf ppf "%a" - 793 | (fmt_ppr_lf_dctx LF.(v.cD) 0) (Whnf.cnormDCtx (cPsi, theta)) - 794 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/prettyint.ml", lines 878-890, characters 4-38: - 878 | ....function - 879 | | LF.Null -> () - 880 | - 881 | | LF.DDec (LF.Null, LF.TypDecl (x, tA)) -> - 882 | fprintf ppf "%a : %a" (* formerly "., %s : %a" -jd 2010-06-03 *) - ... - 887 | fprintf ppf "%a, %a : %a" - 888 | (ppr_typ_decl_dctx cD) cPsi - 889 | Name.pp x - 890 | (fmt_ppr_lf_typ cD cPsi 0) tA - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/prettyint.ml", lines 974-1006, characters 4-26: - 974 | ....function - 975 | | LF.Typ -> - 976 | fprintf ppf "type" - 977 | - 978 | | LF.PiKind ((LF.TypDecl (x, a), (Depend.Yes | Depend.Maybe), Plicity.Explicit), k) -> - ... - 1003 | (l_paren_if cond) - 1004 | (fmt_ppr_lf_typ LF.Empty cPsi 1) a - 1005 | (fmt_ppr_lf_kind (LF.DDec(cPsi, LF.TypDeclOpt x)) 0) k - 1006 | (r_paren_if cond) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - - File "src/core/prettyint.ml", lines 1097-1109, characters 4-40: - 1097 | ....function - 1098 | | LF.Queued id -> - 1099 | fprintf ppf "@[QUEUED %d@]" id - 1100 | | LF.(Eqn (id, cD, cPsi, INorm tM1, INorm tM2)) -> - 1101 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" - ... - 1106 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" - 1107 | id - 1108 | (fmt_ppr_lf_head cD cPsi l0) h1 - 1109 | (fmt_ppr_lf_head cD cPsi l0) h2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) - - File "src/core/prettyint.ml", lines 1147-1228, characters 4-39: - 1147 | ....function - 1148 | | Comp.TypBase (_, c, mS)-> - 1149 | let cond = lvl > 10 in - 1150 | fprintf ppf "%s@[<2>%s@[%a@]@]%s" - 1151 | (l_paren_if cond) - ... - 1225 | fprintf ppf "@[%a@]*" - 1226 | (fmt_ppr_cmp_typ cD 10) tau - 1227 | else - 1228 | fmt_ppr_cmp_typ cD lvl ppf tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDef (_, _, _) - - File "src/core/prettyint.ml", lines 1236-1241, characters 4-48: - 1236 | ....function - 1237 | | Comp.PatNil -> fprintf ppf "" - 1238 | | Comp.PatApp (_, pat, pat_spine) -> - 1239 | fprintf ppf "@[%a@]@ @[%a@]" - 1240 | (fmt_ppr_cmp_pattern cD cG (lvl + 1)) pat - 1241 | (fmt_ppr_pat_spine cD cG lvl) pat_spine - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - - File "src/core/prettyint.ml", lines 1245-1248, characters 6-65: - 1245 | ......match (ms, n) with - 1246 | | (_, 0) -> ms - 1247 | | (Comp.PatNil, _) -> ms - 1248 | | (Comp.PatApp (_, _, rest), n) -> dropSpineLeft rest (n-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatObs (_, _, _, _), 1) - - File "src/core/prettyint.ml", lines 1507-1550, characters 4-26: - 1507 | ....function - 1508 | | Comp.FunValue _ -> fprintf ppf " fn " - 1509 | | Comp.ThmValue _ -> fprintf ppf " rec " - 1510 | | Comp.MLamValue _ -> fprintf ppf " mlam " - 1511 | | Comp.CtxValue _ -> fprintf ppf " mlam " - ... - 1547 | fprintf ppf "%s%s%a%s" - 1548 | (l_paren_if cond) - 1549 | (R.render_cid_comp_const c) print_spine pat_spine - 1550 | (r_paren_if cond) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - FnValue (_, _, _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Apxnorm.cmx -c -impl src/core/apxnorm.ml) - File "src/core/apxnorm.ml", lines 44-49, characters 2-33: - 44 | ..function - 45 | | Apx.LF.Lam (loc, x, m') -> Apx.LF.Lam(loc, x, shiftApxTerm (k + 1) m') - 46 | | Apx.LF.Root (loc, h , spine) -> - 47 | let h' = shiftApxHead k h in - 48 | let spine' = shiftApxSpine k spine in - 49 | Apx.LF.Root(loc, h', spine') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (LFHole (_, _)|Tuple (_, _)|Ann (_, _, _)) - - File "src/core/apxnorm.ml", lines 70-80, characters 2-35: - 70 | ..function - 71 | | Apx.LF.EmptySub -> Apx.LF.EmptySub - 72 | | Apx.LF.Id -> Apx.LF.Id - 73 | | Apx.LF.Dot (Apx.LF.Head h, s) -> - 74 | let h' = shiftApxHead k h in - ... - 77 | | Apx.LF.Dot (Apx.LF.Obj m, s) -> - 78 | let m' = shiftApxTerm k m in - 79 | let s' = shiftApxSub k s in - 80 | Apx.LF.Dot (Apx.LF.Obj m', s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (SVar (_, _)|FSVar (_, _)) - - File "src/core/apxnorm.ml", lines 126-128, characters 4-49: - 126 | ....match (l_delta, t) with - 127 | | (0, t) -> t - 128 | | (k, Int.LF.MDot(_ , t')) -> drop t' (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, MShift _) - - File "src/core/apxnorm.ml", lines 134-151, characters 6-36: - 134 | ......match Substitution.LF.applyMSub offset t with - 135 | | Int.LF.MV u -> Apx.LF.Offset u - 136 | | Int.LF.ClObj (_, clobj) -> - 137 | let (u, mtyp) = Whnf.mctxLookup cD offset' in - 138 | dprintf - ... - 148 | end; - 149 | let t' = drop t l_delta in - 150 | let mtyp' = Whnf.cnormMTyp (mtyp, t')in - 151 | Apx.LF.MInst (clobj, mtyp') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|CObj _) - - File "src/core/apxnorm.ml", lines 267-276, characters 7-10: - 267 | .......begin match Substitution.LF.applyMSub offset t with - 268 | | Int.LF.CObj (Int.LF.CtxVar (Int.LF.CtxOffset psi0)) -> - 269 | Apx.LF.CtxVar (Apx.LF.CtxOffset psi0) - 270 | | Int.LF.CObj Int.LF.Null -> - 271 | Apx.LF.Null - 272 | | Int.LF.CObj (Int.LF.DDec _) -> - 273 | raise (Error (loc, CtxOverGeneral)) - 274 | (* Apx.LF.CtxVar (Apx.LF.CInst cPsi) *) - 275 | | Int.LF.MV offset' -> Apx.LF.CtxVar (Apx.LF.CtxOffset offset') - 276 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CObj (CtxVar (CtxName _|CInst _)) - - File "src/core/apxnorm.ml", lines 288-355, characters 2-27: - 288 | ..match e with - 289 | | Apx.Comp.Fn (loc, f, e) -> - 290 | Apx.Comp.Fn (loc, f, cnormApxExp cD delta e cDt) - 291 | | Apx.Comp.Fun (loc, fbr) -> - 292 | Apx.Comp.Fun (loc, cnormApxFBranches cD delta fbr cDt) - ... - 352 | - 353 | | Apx.Comp.Var _ - 354 | | Apx.Comp.DataConst _ - 355 | | Apx.Comp.Const _ -> e - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ann (_, _, _) - - File "src/core/apxnorm.ml", lines 388-392, characters 4-63: - 388 | ....function - 389 | | Apx.LF.Empty -> cD'' - 390 | | Apx.LF.Dec (delta2', Apx.LF.Decl (x, _, plicity)) -> - 391 | let cD1'' = append_mctx cD'' delta2' in - 392 | Int.LF.Dec (cD1'', Int.LF.DeclOpt { name = x; plicity }) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (delta2', DeclOpt _) - - File "src/core/apxnorm.ml", lines 421-431, characters 2-27: - 421 | ..function - 422 | | Apx.LF.Lam (_, _, m') -> collectApxTerm fMVs m' - 423 | - 424 | | Apx.LF.Root (_, h, s) -> - 425 | let fMVs' = collectApxHead fMVs h in - ... - 428 | | Apx.LF.Tuple (_, tuple) -> - 429 | collectApxTuple fMVs tuple - 430 | - 431 | | Apx.LF.LFHole _ -> fMVs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ann (_, _, _) - - File "src/core/apxnorm.ml", line 502, characters 27-50: - 502 | and collectApxTypDecl fMVs (Apx.LF.TypDecl (_, a))= - ^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/apxnorm.ml", lines 530-538, characters 2-44: - 530 | ..function - 531 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp a, c_psi), _) - 532 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp a, c_psi), _) -> - 533 | let fMVs' = collectApxDCtx fMVs c_psi in - 534 | collectApxTyp fMVs' a - 535 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp (_, c_phi), c_psi), _) -> - 536 | let fMVs' = collectApxDCtx fMVs c_psi in - 537 | collectApxDCtx fMVs' c_phi - 538 | | Apx.LF.Decl(_, Apx.LF.CTyp _, _) -> fMVs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt _ - - File "src/core/apxnorm.ml", lines 556-563, characters 2-31: - 556 | ..function - 557 | | Apx.LF.Atom (loc, c, tS) -> - 558 | collectApxSpine fMVd tS - 559 | | Apx.LF.PiTyp ((Apx.LF.TypDecl (x, tA), _, _ ), tB) -> - 560 | let fMVd1 = collectApxTyp fMVd tA in - 561 | collectApxTyp fMVd1 tB - 562 | | Apx.LF.Sigma trec -> - 563 | collectApxTypRec fMVd trec - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/apxnorm.ml", lines 573-581, characters 2-45: - 573 | ..function - 574 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp(_, cPhi), cPsi), _) -> - 575 | let fMVd1 = collectApxDCtx fMVd cPsi in - 576 | collectApxDCtx fMVd1 cPhi - 577 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp tA, cPsi), _) - 578 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp tA, cPsi), _) -> - 579 | let fMVd1 = collectApxDCtx fMVd cPsi in - 580 | collectApxTyp fMVd1 tA - 581 | | Apx.LF.Decl (_, Apx.LF.CTyp _, _) -> fMVd - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt _ - - File "src/core/apxnorm.ml", lines 584-603, characters 2-32: - 584 | ..function - 585 | | Apx.Comp.TypArr (_, tau1, tau2) -> - 586 | let fMVd1 = collectApxCompTyp fMVd tau1 in - 587 | collectApxCompTyp fMVd1 tau2 - 588 | | Apx.Comp.TypCross (_, taus) -> - ... - 600 | let fMVd1 = collectApxDCtx fMVd cPsi in - 601 | collectApxDCtx fMVd1 cPhi - 602 | | Apx.Comp.TypBase (_loc, _c, mS) -> - 603 | collectApxMetaSpine fMVd mS - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypBox (_, (_, CTyp _)) - - File "src/core/apxnorm.ml", lines 606-618, characters 2-32: - 606 | ..function - 607 | | Apx.Comp.PatMetaObj (loc, mO) -> - 608 | collectApxMetaObj fMVd mO - 609 | | Apx.Comp.PatConst (loc, c, pat_spine) -> - 610 | collectApxPatSpine fMVd pat_spine - ... - 615 | |> List.fold_left collectApxPattern fMVd - 616 | | Apx.Comp.PatAnn (loc, pat, tau) -> - 617 | let fMVd1 = collectApxCompTyp fMVd tau in - 618 | collectApxPattern fMVd1 pat - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatFVar (_, _) - - File "src/core/apxnorm.ml", lines 836-886, characters 2-33: - 836 | ..function - 837 | | Apx.Comp.Fn (loc, f, e) -> - 838 | Apx.Comp.Fn (loc, f, fmvApxExp fMVs cD d_param e) - 839 | - 840 | | Apx.Comp.Fun (loc, fbr) -> - ... - 883 | - 884 | | Apx.Comp.Var _ - 885 | | Apx.Comp.DataConst _ - 886 | | Apx.Comp.Const _ as i -> i - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ann (_, _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Abstract.cmx -c -impl src/core/abstract.ml) - File "src/core/abstract.ml", lines 253-257, characters 4-47: - 253 | ....function - 254 | | I.Atom _ -> (k, tS) - 255 | | I.PiTyp (_, tA') -> - 256 | let tN = I.Root (loc, I.BVar k, I.Nil, Plicity.explicit) in - 257 | etaExpSpine (k + 1) (I.App (tN, tS)) tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/abstract.ml", lines 260-263, characters 4-49: - 260 | ....match tA with - 261 | | I.Atom _ -> tM - 262 | | I.PiTyp ((I.TypDecl (x, _), _, _), tA') -> - 263 | I.Lam (loc, x, etaExpPrefix loc (tM, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/abstract.ml", lines 267-269, characters 4-19: - 267 | ....match h with - 268 | | I.BVar x -> I.BVar (x + k - 1) - 269 | | I.FVar _ -> h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/abstract.ml", lines 317-332, characters 2-17: - 317 | ..function - 318 | | I.Empty -> I.Empty - 319 | - 320 | | I.Dec (cQ', FDecl (MMV _, Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), _, _)))) -> - 321 | begin match raiseType cPsi tA with - ... - 329 | I.Dec (ctxToCtx cQ', I.TypDecl (x, tA)) - 330 | - 331 | | I.Dec (cQ', FDecl (_, Impure)) -> - 332 | ctxToCtx cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec - (_, FDecl (MMV _, Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) - - File "src/core/abstract.ml", lines 336-355, characters 2-20: - 336 | ..function - 337 | | I.Empty -> I.Empty - 338 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> - 339 | let plicity' = f plicity in - 340 | let cQ'' = ctxToMCtx f cQ' in - ... - 352 | | I.Dec (cQ', FDecl (FV _, Pure (LFTyp tA)))-> - 353 | Error.raise_violation "Free variables in computation-level reconstruction." - 354 | | I.Dec (cQ', FDecl (_, Impure)) -> - 355 | ctxToMCtx f cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (MMV (_, _), Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 358-365, characters 2-76: - 358 | ..function - 359 | | I.Empty -> I.Empty - 360 | | I.Dec (cQ', I.Decl { name = x; typ = I.CTyp (Option.Some w); plicity; inductivity }) -> - 361 | let cQ'' = mctxToCtx cQ' in - 362 | I.Dec (cQ'', CtxV (x, w, plicity, inductivity)) - 363 | | I.Dec (cQ', I.Decl { name = n; typ = ityp; plicity; inductivity }) -> - 364 | let cQ'' = mctxToCtx cQ' in - 365 | I.Dec (cQ'', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cQ', DeclOpt _) - - File "src/core/abstract.ml", lines 368-384, characters 2-32: - 368 | ..function - 369 | | I.Empty -> I.Empty - 370 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, _, _)))) -> - 371 | let cQ'' = ctxToMCtx_pattern (n :: names) cQ' in - 372 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive }) - ... - 381 | I.Dec (cQ'', I.Decl { name = x; typ =I.CTyp (Some w); plicity; inductivity }) - 382 | - 383 | | I.Dec (cQ', FDecl (_, Impure)) -> - 384 | ctxToMCtx_pattern names cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (FV _, Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 409-421, characters 2-35: - 409 | ..function - 410 | | (I.Lam (loc, x, tM), s) -> - 411 | let (cQ', tM') = collectTerm p cQ (cvar, offset + 1) (tM, LF.dot1 s) in - 412 | (cQ', I.Lam (loc, x, tM')) - 413 | | (I.Tuple (loc, tuple), s) -> - ... - 418 | let (cQ'', tS') = collectSpine p cQ' phat (tS, s) in - 419 | (cQ'', I.Root (loc, h', tS', plicity)) - 420 | | (I.LFHole (loc, id, name), s) -> - 421 | (cQ, I.LFHole (loc, id, name)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _, _) - - File "src/core/abstract.ml", lines 481-485, characters 7-49: - 481 | .......let (cD_d, I.Decl { typ = mtyp; plicity; inductivity; _ }) = Store.FCVar.get name in - 482 | let mtyp' = Whnf.cnormMTyp (mtyp, Int.LF.MShift (p - Context.length cD_d)) in - 483 | if !pat_flag - 484 | then MetaTyp (mtyp', Plicity.explicit, Inductivity.not_inductive) - 485 | else MetaTyp (mtyp', plicity, inductivity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, DeclOpt { _ }) - - File "src/core/abstract.ml", lines 512-517, characters 10-11: - 512 | ..........let (cQ', MetaTyp (typ, plicity, inductivity)) = - 513 | addVar loc p cQ (MMV (name, instantiation)) (MetaTyp (typ, plicity, inductivity)) - 514 | in - 515 | ( cQ' - 516 | , I.{ v with typ; plicity; inductivity } - 517 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cQ', LFTyp _) - - File "src/core/abstract.ml", lines 615-652, characters 2-26: - 615 | ..function - 616 | | (I.BVar _ as head, _) - 617 | | (I.Const _ as head, _) -> (cQ, head) - 618 | - 619 | | (I.FVar name, _) -> - ... - 649 | - 650 | | (I.Proj (head, j), s) -> - 651 | let (cQ', h') = collectHead k cQ phat loc (head, s) in - 652 | (cQ', I.Proj (h', j)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)), _) - - File "src/core/abstract.ml", lines 656-671, characters 2-27: - 656 | ..function - 657 | | (I.Atom (loc, a, tS), s) -> - 658 | let (cQ', tS') = collectSpine p cQ phat (tS, s) in - 659 | (cQ', I.Atom (loc, a, tS')) - 660 | - ... - 668 | - 669 | | (I.Sigma typRec, s) -> - 670 | let (cQ', typRec') = collectTypRec p cQ phat (typRec, s) in - 671 | (cQ', I.Sigma typRec') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 686-691, characters 2-66: - 686 | ..function - 687 | | (I.Typ, _) -> (cQ, I.Typ) - 688 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> - 689 | let (cQ', tA') = collectTyp p cQ phat (tA, s) in - 690 | let (cQ'', tK') = collectKind p cQ' (cvar, offset + 1) (tK, LF.dot1 s) in - 691 | (cQ'', I.PiKind ((I.TypDecl (x, tA'), depend, plicity), tK')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", line 759, characters 22-32: - 759 | let collectCDecl p cQ (I.Decl d) = - ^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/abstract.ml", lines 784-790, characters 2-8: - 784 | ..function - 785 | | (I.Typ, _) -> I.Typ - 786 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> - 787 | I.PiKind - 788 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) - 789 | , abstractKind cQ (offset + 1) (tK, LF.dot1 s) - 790 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 795-803, characters 2-8: - 795 | ..function - 796 | | (I.Atom (loc, a, tS), s (* id *)) -> - 797 | I.Atom (loc, a, abstractSpine cQ offset (tS, s)) - 798 | - 799 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> - 800 | I.PiTyp - 801 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) - 802 | , abstractTyp cQ (offset + 1) (tB, LF.dot1 s) - 803 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 818-843, characters 2-8: - 818 | ..function - 819 | | (I.Lam (loc, x, tM), s) -> - 820 | I.Lam (loc, x, abstractTerm cQ (offset + 1) (tM, LF.dot1 s)) - 821 | - 822 | | ( I.(Root - ... - 840 | , abstractHead cQ offset tH - 841 | , abstractSpine cQ offset (tS, s) - 842 | , plicity - 843 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((LFHole (_, _, _)|Clo _|Tuple (_, _)), _) - - File "src/core/abstract.ml", lines 846-851, characters 2-59: - 846 | ..function - 847 | | I.BVar _ as tH -> tH - 848 | | I.Const _ as tH -> tH - 849 | | I.FVar n -> I.BVar (index_of cQ (FV n) + offset) - 850 | | I.AnnH _ -> - 851 | Error.raise_not_implemented "[abstractHead] AnnH case" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MMVar _|MPVar _|MVar _|PVar _|Proj (_, _)|FMVar _|FPVar _|HClo (_, _, _)| - HMClo (_, _)) - - File "src/core/abstract.ml", lines 855-869, characters 2-85: - 855 | ..match (s, cPsi) with - 856 | | (I.Shift _, I.Null) -> tS - 857 | | (I.Shift k, I.DDec _) -> - 858 | subToSpine cQ offset (I.Dot (I.Head (I.BVar (k + 1)), I.Shift (k + 1)), cPsi) tS - 859 | - ... - 866 | (* subToSpine cQ offset s (I.App (I.Root (I.BVar k, I.Nil), tS)) *) - 867 | - 868 | | (I.Dot (I.Obj tM, s), I.DDec (cPsi', _)) -> - 869 | subToSpine cQ offset (s, cPsi') (I.App (abstractTerm cQ offset (tM, LF.id), tS)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Shift _, CtxVar _) - - File "src/core/abstract.ml", lines 880-894, characters 2-48: - 880 | ..function - 881 | | I.Empty -> I.Empty - 882 | | I.Dec (cQ, FDecl (_, Impure)) -> abstractCtx cQ - 883 | | I.Dec (cQ, FDecl (MMV (n, r), Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), plicity, inductivity)))) -> - 884 | let cQ' = abstractCtx cQ in - ... - 891 | | I.Dec (cQ, FDecl (FV f, Pure (LFTyp tA))) -> - 892 | let cQ' = abstractCtx cQ in - 893 | let tA' = abstractTyp cQ 0 (tA, LF.id) in - 894 | I.Dec (cQ', FDecl (FV f, Pure (LFTyp tA'))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec - (_, - FDecl (MMV (_, _), Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) - - File "src/core/abstract.ml", lines 900-906, characters 2-39: - 900 | ..match cPsi with - 901 | | I.Null -> I.Null - 902 | | I.CtxVar psi -> cPsi - 903 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> - 904 | let cPsi' = abstractDctx cQ cPsi (l - 1) in - 905 | let tA' = abstractTyp cQ (l - 1) (tA, LF.id) in - 906 | I.DDec (cPsi', I.TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/abstract.ml", lines 930-940, characters 2-20: - 930 | ..function - 931 | | (I.Atom (loc, a, tS), s (* id *)) -> - 932 | I.Atom (loc, a, abstractMVarSpine cQ offset (tS, s)) - 933 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> - 934 | I.PiTyp - ... - 937 | ) - 938 | | (I.Sigma typRec, s) -> - 939 | let typRec' = abstractMVarTypRec cQ offset (typRec, s) in - 940 | I.Sigma typRec' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/abstract.ml", lines 954-962, characters 2-29: - 954 | ..function - 955 | | (I.Lam (loc, x, tM), s) -> - 956 | I.Lam (loc, x, abstractMVarTerm cQ offset (tM, LF.dot1 s)) - 957 | | (I.Tuple (loc, tuple), s) -> - 958 | I.Tuple (loc, abstractMVarTuple cQ offset (tuple, s)) - 959 | | (I.Root (loc, tH, tS, plicity), s (* LF.id *)) -> - 960 | I.Root (loc, abstractMVarHead cQ offset tH, abstractMVarSpine cQ offset (tS, s), plicity) - 961 | | (I.LFHole (loc, id, name), s) -> - 962 | I.LFHole (loc, id, name) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _, _) - - File "src/core/abstract.ml", lines 1000-1036, characters 2-46: - 1000 | ..function - 1001 | | I.BVar _ as mH -> mH - 1002 | | I.Const _ as mH -> mH - 1003 | - 1004 | | I.FPVar ns -> I.PVar (abstractFVarSub cQ loff ns) - ... - 1033 | Error.raise_not_implemented "[abstractMVarHead] AnnH case" - 1034 | - 1035 | | I.Proj (head, k) -> - 1036 | I.Proj (abstractMVarHead cQ loff head, k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (FVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/abstract.ml", lines 1091-1097, characters 2-39: - 1091 | ..function - 1092 | | I.Null -> I.Null - 1093 | | I.CtxVar cv -> I.CtxVar (abstractCtxVar cQ loff cv) - 1094 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> - 1095 | let cPsi' = abstractMVarDctx cQ loff cPsi in - 1096 | let tA' = abstractMVarTyp cQ loff (tA, LF.id) in - 1097 | I.DDec (cPsi', I.TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/abstract.ml", line 1110, characters 30-40: - 1110 | and abstractMVarCdecl cQ loff (I.Decl d) = - ^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/abstract.ml", lines 1121-1138, characters 2-58: - 1121 | ..match cQ with - 1122 | | I.Empty -> I.Empty - 1123 | | I.Dec (cQ, FDecl (v, Pure (MetaTyp (ityp, plicity, inductivity)))) -> - 1124 | let cQ' = abstractMVarCtx cQ (l - 1) in - 1125 | I.Dec (cQ', FDecl (v, Pure (MetaTyp (abstractMVarMTyp cQ ityp (l, 0), plicity, inductivity)))) - ... - 1135 | * is it ever hit on correct code? -jd 2009-02-12 - 1136 | * No. This case should not occur in correct code - bp - 1137 | *) - 1138 | raise (Error (Name.location name, UnknownIdentifier)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (MMV _, Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 1150-1154, characters 2-20: - 1150 | ..function - 1151 | | I.ClObj (phat, tM) -> - 1152 | I.ClObj (abstractMVarHat cQ off phat, abstrClObj cQ off tM) - 1153 | | I.CObj cPsi -> I.CObj (abstractMVarDctx cQ off cPsi) - 1154 | | I.MV k -> I.MV k - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MUndef - - File "src/core/abstract.ml", lines 1167-1179, characters 4-21: - 1167 | ....function - 1168 | | I.Empty -> I.Empty - 1169 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> - 1170 | let cQ'' = ctxToMCtx' cQ' in - 1171 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity; inductivity }) - ... - 1176 | let cQ'' = ctxToMCtx' cQ' in - 1177 | I.Dec (cQ'', I.Decl { name = x; typ = I.CTyp (Option.some w); plicity; inductivity }) - 1178 | | I.Dec (cQ', FDecl (_, Impure)) -> - 1179 | ctxToMCtx' cQ' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, FDecl (FV _, Pure (LFTyp _))) - - File "src/core/abstract.ml", lines 1208-1217, characters 2-8: - 1208 | ..match cQ with - 1209 | | Int.LF.Empty -> (tA', 0) - 1210 | | Int.LF.Dec (_, FDecl (s, _)) -> - 1211 | let cQ' = abstractCtx cQ in - 1212 | let tA2 = abstractTyp cQ' 0 (tA', LF.id) in - 1213 | let cPsi = ctxToCtx cQ' in - 1214 | begin match raiseType' cPsi tA2 with - 1215 | | (None, tA3) -> (tA3, length' cPsi) - 1216 | | _ -> raise (Error (Location.ghost, LeftoverVars)) - 1217 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, CtxV _) - - File "src/core/abstract.ml", lines 1246-1287, characters 2-28: - 1246 | ..function - 1247 | | Comp.TypBase (loc, a, ms) -> - 1248 | let (cQ', ms') = collect_meta_spine p cQ ms in - 1249 | (cQ', Comp.TypBase (loc, a, ms')) - 1250 | | Comp.TypCobase (loc, a, ms) -> - ... - 1284 | - 1285 | | Comp.TypInd tau -> - 1286 | let (cQ', tau') = collectCompTyp p cQ tau in - 1287 | (cQ', Comp.TypInd tau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDef (_, _, _) - - File "src/core/abstract.ml", lines 1291-1296, characters 2-54: - 1291 | ..function - 1292 | | I.Empty -> (cQ, I.Empty) - 1293 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> - 1294 | let (cQ1, cG') = collectGctx cQ cG in - 1295 | let (cQ2, tau') = collectCompTyp 0 cQ1 tau in - 1296 | (cQ2, I.Dec (cG', Comp.CTypDecl (x, tau', flag))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/abstract.ml", lines 1463-1489, characters 2-52: - 1463 | ..function - 1464 | | Comp.TypBase (loc, a, cS) -> - 1465 | let cS' = abstractMVarMetaSpine cQ offset cS in - 1466 | Comp.TypBase (loc, a, cS') - 1467 | | Comp.TypCobase (loc, a, cS) -> - ... - 1486 | ) - 1487 | - 1488 | | Comp.TypInd tau -> - 1489 | Comp.TypInd (abstractMVarCompTyp cQ offset tau) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _)|TypClo (_, _)) - - File "src/core/abstract.ml", lines 1492-1497, characters 2-47: - 1492 | ..function - 1493 | | I.Empty -> I.Empty - 1494 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> - 1495 | let cG' = abstractMVarGctx cQ offset cG in - 1496 | let tau' = abstractMVarCompTyp cQ offset tau in - 1497 | I.Dec (cG', Comp.CTypDecl (x, tau', flag)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/abstract.ml", lines 1698-1700, characters 4-48: - 1698 | ....match (p, cD) with - 1699 | | (0, _) -> cD - 1700 | | (_, I.Dec (cD', decl)) -> drop (p - 1) cD' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, Empty) - - File "src/core/abstract.ml", lines 1722-1724, characters 8-24: - 1722 | ........let I.Dec (cD1', decl) = cD1 in - 1723 | let cD = subtract cD1' cD2 in - 1724 | I.Dec (cD, decl) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/abstract.ml", lines 1785-1789, characters 2-24: - 1785 | ..function - 1786 | | I.Null -> cPsi1 - 1787 | | I.DDec (cPsi2', dec) -> - 1788 | let cPsi1' = appDCtx cPsi1 cPsi2' in - 1789 | I.Dec (cPsi1', dec) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Unify.cmx -c -impl src/core/unify.ml) - File "src/core/unify.ml", line 163, characters 30-55: - 163 | let genMMVarstr loc cD cPsi (Atom (_, a, _) as tP, s) = - ^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _) - - File "src/core/unify.ml", lines 575-585, characters 6-9: - 575 | ......begin match applyMSub k ms with - 576 | | MUndef -> - 577 | (* Psi1, x:tA |- s' <= Psi2 *) - 578 | (Whnf.mcomp mt' (MShift 1), cD2) - 579 | - ... - 582 | A = [mt']([mt']^-1 A) and cPsi = [mt']([mt']^-1 cPsi *) - 583 | let mtt' = Whnf.m_invert (Whnf.cnormMSub mt') in - 584 | (Whnf.mvar_dot1 mt', Dec (cD2, Decl { name = n; typ = Whnf.cnormMTyp (ctyp, mtt'); plicity; inductivity })) - 585 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 566-590, characters 4-38: - 566 | ....match (t, cD1) with - 567 | | (MShift _, Empty) -> (Whnf.m_id, Empty) - 568 | - 569 | | (MShift k, Dec _) -> - 570 | pruneMCtx' cD (MDot (MV (k + 1), MShift (k + 1)), cD1) ms - ... - 587 | | (MDot (MUndef, mt), Dec (cD1, _)) -> - 588 | let (mt', cD2) = pruneMCtx' cD (mt, cD1) ms in - 589 | (* cD1 |- mt' <= cD2 *) - 590 | (Whnf.mcomp mt' (MShift 1), cD2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MDot (MV k, mt), Dec (cD1, DeclOpt _)) - - File "src/core/unify.ml", lines 810-819, characters 7-10: - 810 | .......begin match applyMSub u ms with - 811 | | MV v -> - 812 | Root - 813 | ( loc - 814 | , MVar (Offset v, invSub cD0 phat (t', cPsi1) ss rOccur) - 815 | , Nil - 816 | , plicity - 817 | ) - 818 | | MUndef -> raise NotInvertible - 819 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 822-830, characters 7-46: - 822 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in - 823 | let d = Context.length cD0 - Context.length cD_d in - 824 | let cPsi1 = - 825 | if d = 0 - 826 | then cPsi1 - 827 | else Whnf.cnormDCtx (cPsi1, MShift d) - 828 | in - 829 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in - 830 | Root (loc, FMVar (u, s'), Nil, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=CTyp _; _ }) - - File "src/core/unify.ml", lines 833-841, characters 7-46: - 833 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get p in - 834 | let d = Context.length cD0 - Context.length cD_d in - 835 | let cPsi1 = - 836 | if d = 0 - 837 | then cPsi1 - 838 | else Whnf.cnormDCtx (cPsi1, MShift d) - 839 | in - 840 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in - 841 | Root (loc, FPVar (p, s'), Nil, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=CTyp _; _ }) - - File "src/core/unify.ml", lines 846-850, characters 7-10: - 846 | .......begin match applyMSub p ms with - 847 | | MV q -> - 848 | Root (loc, PVar (q, invSub cD0 phat (t', cPsi1) ss rOccur), Nil, plicity) - 849 | | MUndef -> raise NotInvertible - 850 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 747-862, characters 4-62: - 747 | ....match sM with - 748 | | (Lam (loc, x, tM), s) -> - 749 | Lam (loc, x, invNorm cD0 ((cvar, offset + 1), (tM, dot1 s), (ms, dot1 ssubst), rOccur)) - 750 | - 751 | | (Root (loc, MVar (Inst u, t), tS, plicity), s) -> - ... - 859 | ) - 860 | - 861 | | (Tuple (loc, trec), s) -> - 862 | Tuple (loc, invTuple cD0 (phat, (trec, s), ss, rOccur)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((LFHole (_, _, _)|Clo _), _) - - File "src/core/unify.ml", lines 888-891, characters 7-10: - 888 | .......begin match bvarSub k ssubst with - 889 | | Undef -> raise NotInvertible - 890 | | Head (BVar k') -> BVar k' - 891 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 894-897, characters 7-10: - 894 | .......begin match bvarSub k ssubst with - 895 | | Head (BVar _ as head) -> head - 896 | | Undef -> raise NotInvertible - 897 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 932-936, characters 7-10: - 932 | .......begin match applyMSub u ms with - 933 | | MV v -> - 934 | MVar (Offset v, invSub cD0 phat (t, cPsi1) ss rOccur) - 935 | | MUndef -> raise NotInvertible - 936 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 940-944, characters 7-10: - 940 | .......begin match applyMSub p ms with - 941 | | MV q -> - 942 | PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur) - 943 | | MUndef -> raise NotInvertible - 944 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 948-952, characters 7-10: - 948 | .......begin match applyMSub p ms with - 949 | | MV q -> - 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) - 951 | | MUndef -> raise NotInvertible - 952 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 886-952, characters 4-10: - 886 | ....match head with - 887 | | BVar k -> - 888 | begin match bvarSub k ssubst with - 889 | | Undef -> raise NotInvertible - 890 | | Head (BVar k') -> BVar k' - ... - 949 | | MV q -> - 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) - 951 | | MUndef -> raise NotInvertible - 952 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Proj - ((Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)), - _) - - File "src/core/unify.ml", lines 956-959, characters 4-46: - 956 | ....function - 957 | | Undefs -> raise (Failure "Variable dependency") - 958 | | Shift k -> Shift (n + k) - 959 | | Dot (ft, ss') -> shiftInvSub (n - 1) ss' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/unify.ml", lines 981-985, characters 9-40: - 981 | .........match applyMSub s ms with - 982 | | MV v -> - 983 | let (_, cPhi, _, cPsi') = Whnf.mctxSDec cD0 v in - 984 | (v, cPhi, cPsi') - 985 | | MUndef -> raise NotInvertible - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1024-1030, characters 7-10: - 1024 | .......begin match applyMSub s ms with - 1025 | | MV v -> - 1026 | let (_, cPhi, _, cPsi1) = Whnf.mctxSDec cD0 v in - 1027 | (* applyMSub to ctx_offset ? *) - 1028 | SVar (v, n, invSub cD0 phat (t, cPsi1) ss rOccur) - 1029 | | MUndef -> raise NotInvertible - 1030 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1033-1034, characters 7-64: - 1033 | .......let (_, Decl { typ = ClTyp (STyp (LF.Subst, _), cPsi'); _ }) = Store.FCVar.get s_name in - 1034 | FSVar (n, (s_name, invSub cD0 phat (t, cPsi') ss rOccur)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=ClTyp (STyp (Ren, _), _); _ }) - - File "src/core/unify.ml", lines 1063-1069, characters 4-74: - 1063 | ....match (mt, cD1) with - 1064 | | (MShift n, _) -> checkDefined (Whnf.mcomp (MShift n) ms) - 1065 | | (MDot (ClObj (phat, SObj sigma), mt'), Dec (cD', Decl { typ = ClTyp (STyp (_, cPhi), _); _ })) -> - 1066 | let sigma' = invSub cD0 phat (sigma, cPhi) (ms, id) rOccur in - 1067 | MDot (ClObj (phat, SObj sigma'), invMSub cD0 (mt', cD') ms rOccur) - 1068 | | (MDot (mobj, mt'), Dec (cD', _)) -> - 1069 | MDot (invMObj cD0 mobj ms rOccur, invMSub cD0 (mt', cD') ms rOccur) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MDot (mobj, mt'), Empty) - - File "src/core/unify.ml", lines 1072-1080, characters 4-90: - 1072 | ....match mobj with - 1073 | | MV n -> - 1074 | begin match applyMSub n ms with - 1075 | | MUndef -> raise NotInvertible - 1076 | | ft -> ft - 1077 | end - 1078 | | ClObj (phat, MObj tM) -> ClObj (phat, MObj (invNorm cD0 (phat, (tM, id), (ms, id), rOccur))) - 1079 | | CObj cPsi -> Error.raise_violation "Not implemented" - 1080 | | ClObj (phat, PObj h) -> ClObj (phat, PObj (invHead cD0 (phat, h, (ms, id), rOccur))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/unify.ml", lines 1152-1154, characters 7-80: - 1152 | .......let Shift 0 = s in (* Assert s is supposed to be the identity *) - 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in - 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Shift 1 - - File "src/core/unify.ml", lines 1124-1154, characters 4-80: - 1124 | ....match sM with - 1125 | | (LFHole _ as n, _) -> n - 1126 | | (Lam (loc, x, tM), s) -> - 1127 | dprintf - 1128 | begin fun p -> - ... - 1151 | | (Root (loc, head, tS, plicity), s) -> - 1152 | let Shift 0 = s in (* Assert s is supposed to be the identity *) - 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in - 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Clo _, _) - - File "src/core/unify.ml", lines 1173-1184, characters 4-9: - 1173 | ....let ClTyp (tp, cPsi1) = mmvar.typ in - 1174 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur - 1175 | then raise (Failure "Variable occurrence") - 1176 | else - 1177 | begin - ... - 1181 | instantiateMMVarWithMMVar mmvar.instantiation loc (v, id2) tP' mmvar.constraints.contents; - 1182 | let (mr, r) = comp2 (comp2 id2 mtt) ss in - 1183 | ((v, mr), r) - 1184 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1187-1199, characters 4-37: - 1187 | ....let ClTyp (MTyp tP, cPsi1) = mmvar.typ in - 1188 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur - 1189 | then raise (Failure "Variable occurrence") - 1190 | else - 1191 | let (idsub, cPsi2) = pruneSub cD0 cPsi' (Context.dctxToHat cPsi') (t, cPsi1) ss rOccur in - ... - 1196 | , Root (loc, MVar (v, idsub), Nil, Plicity.explicit) - 1197 | , mmvar.constraints.contents - 1198 | ); - 1199 | (v, comp (comp idsub t) ssubst) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 1202-1211, characters 3-10: - 1202 | ...let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in - 1203 | let d = Context.length cD0 - Context.length cD_d in - 1204 | let cPsi1 = - 1205 | if d = 0 - 1206 | then cPsi1 - 1207 | else Whnf.cnormDCtx (cPsi1, MShift d) - 1208 | in - 1209 | let t' = simplifySub cD0 cPsi t in - 1210 | let s' = invSub cD0 (Context.dctxToHat cPsi) (t', cPsi1) ss rOccur in - 1211 | (u, s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=CTyp _; _ }) - - File "src/core/unify.ml", lines 1216-1219, characters 7-14: - 1216 | .......let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in - 1217 | let t' = simplifySub cD0 cPsi t in - 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in - 1219 | (v, s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, CTyp _) - - File "src/core/unify.ml", lines 1214-1220, characters 4-63: - 1214 | ....match applyMSub u ms with - 1215 | | MV v -> - 1216 | let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in - 1217 | let t' = simplifySub cD0 cPsi t in - 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in - 1219 | (v, s') - 1220 | | MUndef -> raise (Failure "[Prune] Bound MVar dependency") - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1246-1254, characters 7-10: - 1246 | .......begin match bvarSub k ssubst with - 1247 | | Undef -> - 1248 | let s = - 1249 | Format.asprintf "[Prune] Bound variable dependency : head = %a" - 1250 | (P.fmt_ppr_lf_head cD0 cPsi' P.l0) head - 1251 | in - 1252 | raise (Failure s) - 1253 | | Head (BVar _ as h') -> h' - 1254 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1223-1258, characters 4-11: - 1223 | ....match head with - 1224 | | MMVar ((i, mt), t) -> - 1225 | MMVar (pruneMMVarInst cD0 cPsi' loc i (mt, t) ss rOccur) - 1226 | | MVar (Inst i, t) -> - 1227 | MVar (pruneMVarInst cD0 cPsi' loc i (Whnf.normSub t) ss rOccur) - ... - 1255 | - 1256 | | Const _ - 1257 | | FVar _ -> - 1258 | head - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1293-1317, characters 4-57: - 1293 | ....match (s, cPsi1) with - 1294 | | (EmptySub, Null) -> EmptySub - 1295 | | (Undefs, Null) -> EmptySub - 1296 | | (Shift n, DDec _) -> - 1297 | pruneSubst cD cPsi (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur - ... - 1314 | - 1315 | | (Dot _, _) - 1316 | | (EmptySub, _) - 1317 | -> Error.raise_violation "Badly typed substitution" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Undefs, (CtxVar _|DDec (_, _))) - - File "src/core/unify.ml", lines 1321-1323, characters 4-70: - 1321 | ....match ft with - 1322 | | Obj tM -> Obj (prune cD cPsi (Context.dctxToHat cPsi) (tM, id) ss rOccur) - 1323 | | Head h -> Head (pruneHead cD cPsi (Location.ghost, h) ss rOccur) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Undef - - File "src/core/unify.ml", lines 1354-1357, characters 9-59: - 1354 | .........function - 1355 | | Undefs -> (EmptySub, Null) - 1356 | | Shift k -> (id, CtxVar psi) - 1357 | | Dot (ft, ssubst') -> shiftInvSub (n - 1) ssubst' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/unify.ml", lines 1370-1374, characters 9-40: - 1370 | .........match applyMSub s mt with - 1371 | | MV v -> - 1372 | let (_, _, _, cPsi') = Whnf.mctxSDec cD0 v in - 1373 | cPsi' - 1374 | | MUndef -> raise NotInvertible - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ClObj (_, _)|CObj _) - - File "src/core/unify.ml", lines 1387-1390, characters 7-18: - 1387 | .......let ClTyp (STyp (_, cPhi2), cPhi1) = mmvar.typ in - 1388 | let cPhi1' = Whnf.cnormDCtx (cPhi1, Whnf.m_id) in - 1389 | ignore (invSub cD0 phat (sigma, cPhi1') ss rOccur); - 1390 | (id, cPsi1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|PTyp _), _) - - File "src/core/unify.ml", lines 1398-1400, characters 7-18: - 1398 | .......let (_, Decl { typ = ClTyp (STyp _, cPsi'); _ }) = Store.FCVar.get s in - 1399 | ignore (invSub cD0 phat (sigma, cPsi') ss rOccur); - 1400 | (id, cPsi1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) - - File "src/core/unify.ml", lines 1407-1426, characters 7-10: - 1407 | .......begin match bvarSub n ssubst with - 1408 | | Undef -> - 1409 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in - 1410 | (comp s1' shift, cPsi1') - 1411 | - ... - 1423 | in - 1424 | (* cPsi1' |- s1_i <= cPsi' *) - 1425 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) - 1426 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1431-1448, characters 7-10: - 1431 | .......begin match bvarSub n ssubst with - 1432 | | Undef -> - 1433 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in - 1434 | (comp s1' shift, cPsi1') - 1435 | - ... - 1445 | in - 1446 | (* cPsi1' |- s1_i <= cPsi' *) - 1447 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) - 1448 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1343-1471, characters 4-31: - 1343 | ....match (s, cPsi1) with - 1344 | | (Shift n, DDec _) -> - 1345 | pruneSub' cD0 cPsi phat (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur - 1346 | | (Shift _, Null) - 1347 | | (EmptySub, Null) - ... - 1468 | - 1469 | | (Dot (Undef, t), DDec (cPsi1, _)) -> - 1470 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (t, cPsi1) ss rOccur in - 1471 | (comp s1' shift, cPsi1') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub, (CtxVar _|DDec (_, _))) - - File "src/core/unify.ml", lines 1474-1487, characters 4-21: - 1474 | ....match sA with - 1475 | | (Atom (loc, a, tS), s) -> Atom (loc, a, pruneSpine cD0 cPsi phat (tS, s) (mss, ss) rOccur) - 1476 | | (PiTyp ((TypDecl (x, tA), depend, plicity), tB), s) -> - 1477 | let tA' = pruneTyp cD0 cPsi phat (tA, s) (mss, ss) rOccur in - 1478 | let tB' = pruneTyp cD0 cPsi phat (tB, dot1 s) (mss, dot1 ss) rOccur in - ... - 1484 | - 1485 | | (Sigma typ_rec, s) -> - 1486 | let typ_rec' = pruneTypRec cD0 cPsi phat (typ_rec, s) (mss, ss) rOccur in - 1487 | Sigma typ_rec' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TClo _, _) - - File "src/core/unify.ml", lines 1504-1507, characters 7-10: - 1504 | .......begin match applyMSub psi ms with - 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' - 1506 | | MV k -> CtxVar (CtxOffset k) - 1507 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MUndef|ClObj (_, _)) - - File "src/core/unify.ml", lines 1510-1514, characters 7-10: - 1510 | .......begin match mmvar.instantiation.contents with - 1511 | | None -> cPsi - 1512 | | Some (ICtx cPhi) -> - 1513 | pruneDCtx cD cPhi (Whnf.mcomp theta ms) rOccur - 1514 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/unify.ml", lines 1501-1529, characters 4-37: - 1501 | ....match cPsi with - 1502 | | Null -> Null - 1503 | | CtxVar (CtxOffset psi) -> - 1504 | begin match applyMSub psi ms with - 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' - ... - 1526 | (ms, Substitution.LF.id) - 1527 | rOccur - 1528 | in - 1529 | DDec (cPsi', TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/unify.ml", lines 1574-1583, characters 7-10: - 1574 | .......begin match bvarSub k ssubst with - 1575 | | Undef -> - 1576 | (* Psi1, x:tA |- s' <= Psi2 *) - 1577 | (comp s' shift, cPsi2) - 1578 | - 1579 | | Head (BVar _) -> - 1580 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since - 1581 | A = [s']([s']^-1 A) *) - 1582 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) - 1583 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1590-1599, characters 7-10: - 1590 | .......begin match bvarSub k ssubst with - 1591 | | Undef -> - 1592 | (* Psi1, x:tA |- s' <= Psi2 *) - 1593 | (comp s' shift, cPsi2) - 1594 | - 1595 | | Head (BVar _) -> - 1596 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since - 1597 | A = [s']([s']^-1 A) *) - 1598 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) - 1599 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| - FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/unify.ml", lines 1551-1604, characters 4-29: - 1551 | ....match (t, cPsi1) with - 1552 | | (EmptySub, Null) - 1553 | | (Undefs, Null) - 1554 | | (Shift _, Null) -> - 1555 | (id, Null) - ... - 1601 | | (Dot (Undef, t), DDec (cPsi1, _)) -> - 1602 | let (s', cPsi2) = pruneCtx' phat (t, cPsi1) ss in - 1603 | (* sP1 |- s' <= cPsi2 *) - 1604 | (comp s' shift, cPsi2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub, (CtxVar _|DDec (_, _))) - - File "src/core/unify.ml", lines 1646-1651, characters 4-56: - 1646 | ....match (sTup1, sTup2) with - 1647 | | ((Last tM, s1), (Last tN, s2)) -> - 1648 | unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2) - 1649 | | ((Cons (tM, tup1), s1), (Cons (tN, tup2), s2)) -> - 1650 | (unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2); - 1651 | unifyTuple mflag cD0 cPsi (tup1, s1) (tup2, s2)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Last tM, s1), (Cons (_, _), _)) - - File "src/core/unify.ml", lines 1654-1680, characters 4-9: - 1654 | ....let ClTyp (_, cPsi1) = mmvar.typ in - 1655 | if isId t1' - 1656 | then instantiateMVar (mmvar.instantiation, sM2, mmvar.constraints.contents) - 1657 | else - 1658 | begin - ... - 1677 | (* This might actually need to add a constraint, in which case - 1678 | "NotInvertible" seems the wrong kind of exception... *) - 1679 | Error.raise_violation "Unification violation" - 1680 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1694-1705, characters 9-35: - 1694 | .........match Whnf.whnfTyp sA with - 1695 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> - 1696 | (* cPsi' |- Pi x:A.B <= typ - 1697 | cPsi |- s <= cPsi' - 1698 | cPsi |- tN <= [s]tA - ... - 1702 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in - 1703 | LF.App (tN, tS) - 1704 | - 1705 | | (LF.Atom _, _) -> LF.Nil - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/unify.ml", lines 1683-1710, characters 4-15: - 1683 | ....let ClTyp (_, cPsi1) = mmvar.typ in - 1684 | match sM2 with - 1685 | | Root (loc, Const c, _, plicity) -> - 1686 | let tA = (Store.Cid.Term.get c).Store.Cid.Term.Entry.typ in - 1687 | dprintf - ... - 1707 | let tM1 = Root (loc, Const c, genSpine mmvar.cD cPsi1 (tA, id), plicity) in - 1708 | instantiateMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); - 1709 | Some tM1 - 1710 | | _ -> None - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1716-1729, characters 6-32: - 1716 | ......match Whnf.whnfTyp sA with - 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> - 1718 | (* cPsi' |- Pi x:A.B <= typ - 1719 | cPsi |- s <= cPsi' - 1720 | cPsi |- tN <= [s]tA - ... - 1726 | in - 1727 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in - 1728 | LF.App (tN, tS) - 1729 | | (LF.Atom _, _) -> LF.Nil - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/unify.ml", lines 1714-1762, characters 4-15: - 1714 | ....let ClTyp (MTyp tB, cPsi1) = mmvar.typ in - 1715 | let rec genSpine cD1 cPsi1 sA = - 1716 | match Whnf.whnfTyp sA with - 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> - 1718 | (* cPsi' |- Pi x:A.B <= typ - ... - 1759 | instantiateMMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); - 1760 | Some tM1 - 1761 | - 1762 | | _ -> None - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 1766-1769, characters 4-79: - 1766 | ....match tm with - 1767 | | (INorm n, _) -> INorm (prune cD cPsi hat (n, id) ss rOccur) - 1768 | | (IHead h, _) -> IHead (pruneHead cD cPsi (Location.ghost, h) ss rOccur) - 1769 | | (ISub s, STyp (_, cPhi)) -> ISub (pruneSubst cD cPsi (s, cPhi) ss rOccur) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ISub s, (MTyp _|PTyp _)) - - File "src/core/unify.ml", lines 1772-1796, characters 4-9: - 1772 | ....let ClTyp (tp, cPsi1) = mmvar.typ in - 1773 | if isId t1' && isMId mt1 - 1774 | then - 1775 | begin - 1776 | dprint (fun () -> "[unifyMMVarTerm] 200 - id/m_id"); - ... - 1793 | (* with | NotInvertible -> Error.raise_violation "Unification violation" *) - 1794 | (* This might actually need to add a constraint, in which case "NotInvertible" seems - 1795 | the wrong kind of exception... *) - 1796 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1810-1882, characters 4-76: - 1810 | ....let ClTyp (_, cPsi1) = mmvar.typ in - 1811 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub mt1) in - 1812 | (* cD |- mtt1 : cD0 and cD ; cPsi |- t1' : cPsi1 *) - 1813 | let (flat_cPsi, conv_list) = ConvSigma.flattenDCtx cD0 cPsi in - 1814 | let s_tup = ConvSigma.gen_tup_sub conv_list in (* flat_cPsi |- s_tup : cPsi *) - ... - 1879 | p.fmt "[unifyMMVarTermProj]: tM2 (after pruning) = %a" - 1880 | (P.fmt_ppr_lf_normal cD0 flat_cPsi P.l0) tM2' - 1881 | end; - 1882 | instantiateMMVar (mmvar.instantiation, sM2', mmvar.constraints.contents) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1885-1918, characters 4-102: - 1885 | ....let ClTyp (tp1, cPsi1) = mmvar1.typ in - 1886 | let (s', cPsi') = intersection (Context.dctxToHat cPsi) (Whnf.normSub t1') (Whnf.normSub t2') cPsi1 in - 1887 | (* if cD ; cPsi |- t1' <= cPsi1 and cD ; cPsi |- t2' <= cPsi1 - 1888 | then cD ; cPsi1 |- s' <= cPsi' *) - 1889 | let (mt', cD') = m_intersection (Whnf.cnormMSub mt1) (Whnf.cnormMSub mt2) mmvar1.cD in - ... - 1915 | [|w[s']/u|](u[t1]) = [t1](w[s']) - 1916 | [|w[s']/u|](u[t2]) = [t2](w[s']) - 1917 | *) - 1918 | instantiateMMVarWithMMVar mmvar1.instantiation loc (w, (mt', s')) tp1' mmvar1.constraints.contents - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/unify.ml", lines 1934-1975, characters 7-12: - 1934 | .......let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in - 1935 | dprnt "(000) MVar-MVar"; - 1936 | (* by invariant of whnf: - 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id - 1938 | r1 and r2 are uninstantiated (None) - ... - 1972 | begin - 1973 | let id = next_constraint_id () in - 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) - 1975 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 1933-1975, characters 7-12: - 1933 | .......let ClTyp (MTyp tP1, cPsi1) = mmvar1.typ in - 1934 | let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in - 1935 | dprnt "(000) MVar-MVar"; - 1936 | (* by invariant of whnf: - 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id - ... - 1972 | begin - 1973 | let id = next_constraint_id () in - 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) - 1975 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/unify.ml", lines 2439-2452, characters 4-52: - 2439 | ....match (spine1, spine2) with - 2440 | | ((Nil, _), (Nil, _)) -> () - 2441 | - 2442 | | ((SClo (tS1, s1'), s1), sS) -> - 2443 | unifySpine mflag cD0 cPsi (tS1, comp s1' s1) sS - ... - 2449 | (* dprint (fun () -> "[unifySpine] " ^ P.normalToString cD0 cPsi (tM1, s1) ^ - 2450 | " == " ^ P.normalToString cD0 cPsi (tM2, s2));*) - 2451 | unifyTerm mflag cD0 cPsi (tM1, s1) (tM2, s2); - 2452 | unifySpine mflag cD0 cPsi (tS1, s1) (tS2, s2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Nil, _), (App (_, _), _)) - - File "src/core/unify.ml", lines 2659-2710, characters 7-61: - 2659 | .......let CTyp schema1, CTyp schema2 = mmvar1.typ, mmvar2.typ in - 2660 | if mmvar1.instantiation == mmvar2.instantiation - 2661 | then - 2662 | if Option.equal Id.cid_schema_equal schema1 schema2 - 2663 | then - ... - 2707 | Error.raise_violation - 2708 | "Case where both meta-substitutions associated with \ - 2709 | context variables are not pattern substitutions \ - 2710 | should not happen and is not implemented for now" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CTyp schema1, ClTyp (_, _)) - - File "src/core/unify.ml", lines 2714-2747, characters 7-61: - 2714 | .......let CTyp s_cid = mmvar.typ in - 2715 | if isPatMSub theta - 2716 | then - 2717 | begin - 2718 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub theta) in - ... - 2744 | Error.raise_violation - 2745 | "Case where both meta-substitutions associated with \ - 2746 | context variables are not pattern substitutions \ - 2747 | should not happen and is not implemented for now" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (_, _) - - File "src/core/unify.ml", lines 2785-2786, characters 4-43: - 2785 | ....let Decl { typ = cT; _ } = cdecl in - 2786 | unifyMObj cD (mO, t) (mO', t') (cT, mt) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/unify.ml", lines 2820-2832, characters 7-53: - 2820 | .......let Comp.PiKind (_, cdecl, cK') = cK in - 2821 | let mOt = Whnf.cnormMetaObj (mO, t) in - 2822 | (* let mOt' = Whnf.cnormMetaObj (mO', t') in *) - 2823 | unifyMetaObj cD (mO, t) (mO', t') (cdecl, mt); - 2824 | let mt' = MDot (Comp.metaObjToMFront mOt, mt) in - ... - 2829 | P.(fmt_ppr_cmp_meta_typ cD) (Whnf.cnormMTyp (mT', t')) - 2830 | end; - 2831 | unifyMetaTyp cD (mT, t) (mT', t'); - 2832 | unifyMetaSpine cD (mS, t) (mS', t') (cK', mt') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Ctype _ - - File "src/core/unify.ml", lines 2837-2840, characters 4-81: - 2837 | ....function - 2838 | | (MTyp tA1, MTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) - 2839 | | (PTyp tA1, PTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) - 2840 | | (STyp (_, cPhi1), STyp (_, cPhi2)) -> unifyDCtx1 Unification cD cPhi1 cPhi2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MTyp tA1, (PTyp _|STyp (_, _))) - - File "src/core/unify.ml", line 2836, characters 17-28: - 2836 | and unifyClTyp Unification cD cPsi = - ^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Matching - - File "src/core/unify.ml", line 2842, characters 18-29: - 2842 | and unifyCLFTyp Unification cD ctyp1 ctyp2 = - ^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Matching - - File "src/core/unify.ml", lines 2938-2941, characters 4-62: - 2938 | ....match (itM1, itM2) with - 2939 | | (INorm tM1, INorm tM2) -> unifyTerm Unification cD cPsi (tM1, id) (tM2, id) - 2940 | | (IHead tH1, IHead tH2) -> unifyHead Unification cD cPsi tH1 tH2 - 2941 | | (ISub s1, ISub s2) -> unifySub Unification cD cPsi s1 s2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (INorm tM1, (IHead _|ISub _|ICtx _)) - - File "src/core/unify.ml", lines 2950-2962, characters 7-10: - 2950 | .......begin match !cnstr with - 2951 | | Queued id -> - 2952 | forceCnstr mflag (nextCnstr ()) - 2953 | | Eqn (c_id, cD, cPsi, INorm tM1, INorm tM2) -> - 2954 | solveConstraint cnstr; - ... - 2959 | solveConstraint cnstr; - 2960 | unifyHead mflag cD cPsi h1 h2; - 2961 | forceCnstr mflag (nextCnstr ()) - 2962 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) - - File "src/core/unify.ml", lines 2994-3029, characters 7-100: - 2994 | .......let Eqn (_, cD, cPsi, itM1, itM2) as c' = !c in - 2995 | solveConstraint c; - 2996 | dprintf - 2997 | begin fun p -> - 2998 | p.fmt "[forceGlobalCnstr'] @[<v>processing nontrivial constraint\ - ... - 3026 | *) - 3027 | if solvedCnstrs (!globalCnstrs) - 3028 | then (resetGlobalCnstrs (); forceGlobalCnstr' cnstrs) - 3029 | else raise (GlobalCnstrFailure (Location.ghost, "[forceGlobalCnstr'] Constraints generated")) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Queued _ - - File "src/core/unify.ml", lines 3202-3204, characters 8-68: - 3202 | ........match (m1, m2) with - 3203 | | (MObj tM1, MObj tM2) -> unify Empty cPsi (tM1, id) (tM2,id) - 3204 | | (PObj h, PObj h') -> unifyHead Unification Empty cPsi h h' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MObj tM1, (PObj _|SObj _)) - - File "src/core/unify.ml", lines 3208-3217, characters 4-49: - 3208 | ....match (m1, m2) with - 3209 | | (CObj cPsi, CObj cPhi) -> - 3210 | unifyDCtx1 - 3211 | Unification - 3212 | Empty - 3213 | (Whnf.cnormDCtx (cPsi, Whnf.m_id)) - 3214 | (Whnf.cnormDCtx (cPhi, Whnf.m_id)) - 3215 | | (ClObj (phat1, m1), ClObj (phat2, m2)) -> - 3216 | (* unify_phat phat1 phat2; *) - 3217 | unifyClObj (Context.hatToDCtx phat1) m1 m2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CObj cPsi, (MUndef|ClObj (_, _)|MV _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Opsem.cmx -c -impl src/core/opsem.ml) - File "src/core/opsem.ml", lines 80-83, characters 2-30: - 80 | ..match cM' with - 81 | | LF.ClObj (phat, LF.MObj tM) -> (loc, cM') - 82 | | LF.ClObj (phat, LF.PObj h) -> (loc, cM') - 83 | | LF.CObj cPsi -> (loc, cM') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClObj (_, SObj _) - - File "src/core/opsem.ml", lines 121-137, characters 7-17: - 121 | .......function - 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch - 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) - 124 | when Id.cid_comp_dest_equal cid cid' -> - 125 | Value (eval_exp e (theta, eta)) (* should we append theta' and eta'? *) - ... - 134 | | Value v -> Value v - 135 | end - 136 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, ps), e, _, _), br) -> - 137 | trim br - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ConsValBranch (((PatNil|PatApp (_, _, _)), _, _, _), _) - - File "src/core/opsem.ml", lines 119-142, characters 5-8: - 119 | .....let Comp.FunValue fbr = eval_exp e (theta, eta) in - 120 | let rec trim = - 121 | function - 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch - 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) - ... - 139 | begin match trim fbr with - 140 | | FunBranch fr -> Comp.FunValue fr - 141 | | Value v -> v - 142 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (FnValue (_, _, _, _)|ThmValue (_, _, _, _)|MLamValue (_, _, _, _)| - CtxValue (_, _, _, _)|BoxValue (_, _)|ConstValue _|DataValue (_, _)| - TupleValue (T (_, _, _))) - - File "src/core/opsem.ml", lines 91-290, characters 2-50: - 91 | ..match i with - 92 | | Comp.Const (_, cid) -> - 93 | dprint (fun () -> "[eval_exp] Const " ^ R.render_cid_prog cid); - 94 | begin match (Store.Cid.Comp.get cid).Store.Cid.Comp.Entry.prog with - 95 | | Some (Comp.ThmValue (cid, Comp.Program e', theta', eta')) -> - ... - 287 | eval_branches loc vscrut branches (theta, eta) - 288 | - 289 | | Comp.Hole (_) -> - 290 | Error.raise_violation "Source contains holes" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MApp (_, _, (_, ClObj (_, SObj _)), _, _) - - File "src/core/opsem.ml", lines 321-325, characters 2-36: - 321 | ..match (cObj, cObj') with - 322 | | (LF.MObj tM, LF.MObj tM') -> - 323 | Unify.unify LF.Empty cPsi' (tM, Substitution.LF.id) (tM', Substitution.LF.id) - 324 | | (LF.PObj h, LF.PObj h') -> - 325 | Unify.unifyH LF.Empty phat h h' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MObj tM, (PObj _|SObj _)) - - File "src/core/opsem.ml", lines 437-458, characters 4-10: - 437 | ....function - 438 | | Comp.NilValBranch -> FunBranch (Comp.NilValBranch) - 439 | | Comp.ConsValBranch ((Comp.PatApp (_, p, Comp.PatNil), e, theta, eta), brs) -> - 440 | begin try - 441 | let eta' = match_pattern (v, eta) (p, theta) in - ... - 455 | eval_branch brs - 456 | | Unify.Failure msg -> (dprint (fun () -> "Branch failed : " ^ msg); - 457 | eval_branch brs) - 458 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ConsValBranch (((PatNil|PatObs (_, _, _, _)), _, _, _), _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Lfcheck.cmx -c -impl src/core/lfcheck.ml) - File "src/core/lfcheck.ml", lines 225-230, characters 2-19: - 225 | ..function - 226 | | Null -> Ctxsub.ctxShift cPhi (* S.LF.id *) - 227 | | DDec (cPsi', TypDecl (n, tA)) -> - 228 | let s = (ctxToSub' cPhi cPsi' : sub) in - 229 | let u = Whnf.etaExpandMV cPhi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in - 230 | Dot (Obj u, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi', TypDeclOpt _) - - File "src/core/lfcheck.ml", lines 246-330, characters 2-55: - 246 | ..match (sM, sA) with - 247 | | ((Lam (loc, name, tM), s1), (PiTyp ((TypDecl _ as tX, _, _), tB), s2)) -> (* Offset by 1 *) - 248 | check cD - 249 | (DDec (cPsi, S.LF.decSub tX s2)) - 250 | (tM, S.LF.dot1 s1) - ... - 327 | raise (Error (loc, (CheckError (cD, cPsi, sM, sA)))) - 328 | end - 329 | | ((Root (loc, _, _, _), _ (* id *)), _ ) -> - 330 | raise (Error (loc, CheckError (cD, cPsi, sM, sA))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Clo _, _), _) - - File "src/core/lfcheck.ml", lines 361-370, characters 4-23: - 361 | ....match (tS, sA) with - 362 | | ((Nil, _), sP) -> sP - 363 | - 364 | | ((SClo (tS, s'), s), sA) -> - 365 | syn (tS, S.LF.comp s' s) sA - 366 | - 367 | | ((App (tM, tS), s1), (PiTyp ((TypDecl (_, tA1), _, _), tB2), s2)) -> - 368 | check cD cPsi (tM, s1) (tA1, s2); - 369 | let tB2 = Whnf.whnfTyp (tB2, Dot (Obj (Clo (tM, s1)), s2)) in - 370 | syn (tS, s1) tB2 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((App (tM, tS), s1), (PiTyp ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfcheck.ml", line 346, characters 16-50: - 346 | and syn cD cPsi (Root (loc, h, tS, _), s (* id *)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)), _) - - File "src/core/lfcheck.ml", lines 393-394, characters 5-7: - 393 | .....let TypDecl (_, tA) = ctxDec cPsi k' in - 394 | tA - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfcheck.ml", lines 400-409, characters 10-25: - 400 | ..........let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in - 401 | dprintf - 402 | begin fun p -> - 403 | p.fmt "[InferHead] @[<v>%a |- %a@,where %a has type %a@]" - 404 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi - 405 | (P.fmt_ppr_lf_head cD cPsi P.l0) head - 406 | (P.fmt_ppr_lf_head cD cPsi P.l0) tuple_head - 407 | (P.fmt_ppr_lf_typ_rec cD cPsi P.l0) recA - 408 | end; - 409 | (recA, S.LF.id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfcheck.ml", lines 411-413, characters 10-19: - 411 | ..........let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in - 412 | checkSub loc cD cPsi s Subst cPsi'; - 413 | (recA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _) - - File "src/core/lfcheck.ml", lines 398-414, characters 7-64: - 398 | .......match tuple_head with - 399 | | BVar k' -> - 400 | let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in - 401 | dprintf - 402 | begin fun p -> - ... - 411 | let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in - 412 | checkSub loc cD cPsi s Subst cPsi'; - 413 | (recA, s) - 414 | | FPVar (name, _) -> raise (Error (loc, LeftoverFV name)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfcheck.ml", lines 446-457, characters 5-17: - 446 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in - 447 | dprintf - 448 | begin fun p -> - 449 | let f = P.fmt_ppr_lf_dctx cD P.l0 in - 450 | p.fmt "[inferHead] @[<v>%a@,%a |- %a <= %a@]" - ... - 454 | f cPsi' - 455 | end; - 456 | checkSub loc cD cPsi s Subst cPsi' ; - 457 | TClo (tA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/lfcheck.ml", lines 461-474, characters 5-37: - 461 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in - 462 | dprintf - 463 | begin fun p -> - 464 | let f = P.fmt_ppr_lf_mctx P.l0 in - 465 | p.fmt "[inferHead] @[<v>MMVar %a@,cD = %a@,t' = %a@,cD' = %a@]" - ... - 471 | checkMSub loc cD t' mmvar.cD; - 472 | dprint (fun () -> "[inferHead] MMVar - msub done \n"); - 473 | checkSub loc cD cPsi r Subst (Whnf.cnormDCtx (cPsi', t')) ; - 474 | TClo (Whnf.cnormTyp (tA, t'), r) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/lfcheck.ml", lines 391-506, characters 2-41: - 391 | ..match (head, cl) with - 392 | | (BVar k', _) -> - 393 | let TypDecl (_, tA) = ctxDec cPsi k' in - 394 | tA - 395 | - ... - 503 | TClo (tA, s) - 504 | - 505 | | (FVar name, _) | (FMVar (name, _), _) | (FPVar (name, _), _) -> - 506 | raise (Error (loc, LeftoverFV name)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MVar (Inst _, _), Subst) - (However, some guarded clause may match this value.) - - File "src/core/lfcheck.ml", lines 509-528, characters 2-13: - 509 | ..match cPsi with - 510 | | Null -> true (* we need to succeed because coverage should detect that - 511 | it is not inhabited *) - 512 | - 513 | | CtxVar ctx_var -> - ... - 525 | - 526 | | DDec (rest, TypDecl _) -> - 527 | canAppear cD rest head sA loc - 528 | || false........................................... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (rest, TypDeclOpt _) - - File "src/core/lfcheck.ml", lines 643-655, characters 2-23: - 643 | ..match sS1, sK with - 644 | | (Nil, _), sK -> - 645 | sK - 646 | - 647 | | (SClo (tS, s'), s), sK -> - ... - 652 | synKSpine cD cPsi (tS, s1) (kK, Dot (Obj (Clo (tM, s1)), s2)) - 653 | - 654 | | (App _, _), (Typ, _) -> - 655 | raise SpineMismatch - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((App (_, _), _), (PiKind ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfcheck.ml", lines 664-681, characters 2-47: - 664 | ..match tA with - 665 | | Atom (loc, a, tS) -> - 666 | let tK = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in - 667 | begin - 668 | try - ... - 678 | checkTyp cD cPsi (tA, s); - 679 | checkTyp cD (DDec (cPsi, TypDecl (x, TClo (tA, s)))) (tB, S.LF.dot1 s) - 680 | - 681 | | Sigma arec -> checkTypRec cD cPsi (arec, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfcheck.ml", lines 710-714, characters 2-53: - 710 | ..function - 711 | | Typ -> () - 712 | | PiKind ((TypDecl (x, tA), _, _), kind) -> - 713 | checkTyp cD cPsi (tA, S.LF.id); - 714 | checkKind cD (DDec (cPsi, TypDecl (x, tA))) kind - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - - File "src/core/lfcheck.ml", lines 724-725, characters 2-47: - 724 | ..match decl with - 725 | | TypDecl (_, tA) -> checkTyp cD cPsi (tA, s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfcheck.ml", lines 734-754, characters 2-7: - 734 | ..match cPsi with - 735 | | Null -> () - 736 | | DDec (cPsi, tX) -> - 737 | checkDCtx cD cPsi; - 738 | checkDec cD cPsi (tX, S.LF.id) - ... - 751 | (P.fmt_ppr_lf_mctx P.l0) cD - 752 | end; - 753 | ignore (Whnf.mctxLookup cD k); - 754 | () - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/lfcheck.ml", lines 962-963, characters 5-47: - 962 | .....let Some (ICtx cPhi) = mmvar.instantiation.contents in - 963 | checkSchema loc cD cPhi schema_name schema - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (INorm _|IHead _|ISub _) - - File "src/core/lfcheck.ml", lines 1019-1027, characters 2-57: - 1019 | ..match (sArec, sBrec) with - 1020 | | ((SigmaLast _, _), (SigmaLast _, _)) -> - 1021 | None - 1022 | - 1023 | | ((SigmaElem (_, _, recA), s), (SigmaLast _, _)) -> - 1024 | Some (recA, s) - 1025 | - 1026 | | ((SigmaElem (_, _, recA), s), (SigmaElem (_, _, recB), s')) -> - 1027 | elemPostfix (recA, S.LF.dot1 s) (recB, S.LF.dot1 s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((SigmaLast (_, _), _), (SigmaElem (_, _, _), _)) - - File "src/core/lfcheck.ml", lines 1075-1101, characters 2-69: - 1075 | ..match (cM, cTt) with - 1076 | | (CObj cPsi, (CTyp (Some w), _)) -> - 1077 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get w in - 1078 | checkSchema loc cD cPsi name schema - 1079 | - ... - 1098 | let mtyp1 = Whnf.cnormMTyp (mtyp1, t) in - 1099 | let (_, mtyp2) = Whnf.mctxLookup cD u in - 1100 | if Bool.not (Whnf.convMTyp mtyp1 mtyp2) - 1101 | then Error.raise_violation ("Contextual substitution ill-typed") - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CObj cPsi, (CTyp None, _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Total.cmx -c -impl src/core/total.ml) - File "src/core/total.ml", lines 31-45, characters 6-9: - 31 | ......begin match (x, args) with - 32 | | (_, []) -> - 33 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n Report as a bug." - 34 | | (Comp.M (cM, _ ), (Comp.M (cM', _ ) :: _)) -> - 35 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \nBeluga cannot establish that the given recursive call is a size-preserving variant of it.\nArgument found: %a@\nArgument expected: %a@" - ... - 42 | - 43 | | (Comp.V _, _) -> - 44 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n\n Found computation-level variable while generated recursive call expected a meta-object.\n\nCheck specified totality declaration." - 45 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (M (_, _), (E|DC)::_) - - File "src/core/total.ml", lines 138-141, characters 2-56: - 138 | ..function - 139 | | LF.Empty -> LF.Empty - 140 | | LF.Dec (cG, Comp.CTypDecl (x, tau, _)) -> - 141 | LF.Dec (mark_gctx cG, Comp.CTypDecl (x, tau, true)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - - File "src/core/total.ml", lines 155-157, characters 2-40: - 155 | ..function - 156 | | None -> " _ " - 157 | | Some (Comp.Arg x) -> string_of_int x - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (Lex _|Simul _) - - File "src/core/total.ml", line 249, characters 30-37: - 249 | let xs = List.map (fun (Arg x) -> x) xs in - ^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lex _|Simul _) - - File "src/core/total.ml", lines 245-258, characters 4-41: - 245 | ....match dec.order with - 246 | | `inductive (Arg x) -> - 247 | (dec.name, Some [x], (tau, Whnf.m_id)) - 248 | | `inductive (Lex xs) -> - 249 | let xs = List.map (fun (Arg x) -> x) xs in - ... - 255 | | `not_recursive - 256 | | `trust - 257 | | `partial -> - 258 | (dec.name, None, (tau, Whnf.m_id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - `inductive (Simul _) - - File "src/core/total.ml", line 331, characters 19-54: - 331 | let gen_var loc cD (LF.Decl { name = x; typ = cU; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/total.ml", lines 404-413, characters 2-31: - 404 | ..function - 405 | | [] -> [] - 406 | | Comp.M (cM, cU) :: args -> - 407 | if uninstantiated_arg cM - 408 | then Comp.DC :: generalize args - 409 | else Comp.M (cM, cU) :: generalize args - 410 | | Comp.V x :: args -> - 411 | Comp.V x :: generalize args - 412 | | Comp.DC :: args -> - 413 | Comp.DC :: generalize args - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - E::_ - - File "src/core/total.ml", line 445, characters 19-25: - 445 | let existsElem b (1, n) (LF.SchElem (some_part, block_part)) = - ^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (0, _) - - File "src/core/total.ml", lines 509-511, characters 6-47: - 509 | ......let LF.ClTyp (LF.MTyp tA, cPsi) = cU in - 510 | (Unify.unifyMetaTyp cD (cU , Whnf.m_id) (cU0, Whnf.m_id); - 511 | gen_meta_obj (k, Substitution.LF.id) cU) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/total.ml", lines 544-592, characters 2-30: - 544 | ..function - 545 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) - 546 | | (1, (Comp.TypPiBox (_, LF.Decl { typ = cU'; _ }, tau), theta)) -> - 547 | let cU0 = Whnf.cnormMTyp (cU', theta) in - 548 | begin - ... - 589 | - 590 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> - 591 | let (spine, tau_r) = rec_spine cD (k, cU) (n - 1, (tau2, theta)) in - 592 | (Comp.DC :: spine, tau_r) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (2, - ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| - TypCross (_, _)|TypClo (_, _)|TypInd _), - _)) - - File "src/core/total.ml", lines 595-619, characters 2-30: - 595 | ..function - 596 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) - 597 | - 598 | | (1, (Comp.TypPiBox _, _)) -> - 599 | raise Not_compatible (* Error *) - ... - 616 | - 617 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> - 618 | let (spine, tau_r) = rec_spine' cD (x, ttau0) (n - 1, (tau2, theta)) in - 619 | (Comp.DC :: spine, tau_r) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (1, - ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| - TypCross (_, _)|TypClo (_, _)|TypInd _), - _)) - - File "src/core/total.ml", lines 622-713, characters 2-43: - 622 | ..match cD' with - 623 | | LF.Empty -> cIH - 624 | - 625 | | LF.Dec (cD', LF.Decl { name = u; typ = cU; inductivity = Inductivity.Not_inductive; _ }) -> - 626 | dprintf - ... - 710 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d@\n" j); - 711 | let cIH' = mk_all (cIH, j) mf_list in - 712 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d" (j + 1)); - 713 | gen_rec_calls cD cIH' (cD', j + 1) mfs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt _) - - File "src/core/total.ml", lines 725-791, characters 2-47: - 725 | ..match cG0 with - 726 | | LF.Empty -> cIH - 727 | | LF.Dec (cG', Comp.CTypDecl (x, tau0, false)) -> - 728 | gen_rec_calls' cD cG cIH (cG', j + 1) mfs - 729 | - ... - 788 | mk_all cIH' mf_list - 789 | in - 790 | let cIH' = mk_all cIH mf_list in - 791 | gen_rec_calls' cD cG cIH' (cG', j + 1) mfs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, CTypDeclOpt _) - - File "src/core/total.ml", lines 860-868, characters 2-69: - 860 | ..match cPsi with - 861 | (* cPsi |- tA *) - 862 | | LF.Null -> None - 863 | | LF.CtxVar _ -> None - 864 | | LF.DDec (cPsi, LF.TypDecl (_, tB)) -> - 865 | if Whnf.convTyp (tA, Substitution.LF.invShift) (tB, Substitution.LF.id) - 866 | then Some k - 867 | else - 868 | pos cPsi (Whnf.normTyp (tA, Substitution.LF.invShift)) (k + 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi, TypDeclOpt _) - - File "src/core/total.ml", lines 1087-1111, characters 5-8: - 1087 | .....begin - 1088 | match prefixDCtx cD cPsi cPsi0 (* cPsi0 = cPsi, cPsi1 *) , - 1089 | prefix_hat - 1090 | (Whnf.cnorm_psihat phat Whnf.m_id) - 1091 | (Whnf.cnorm_psihat phat' Whnf.m_id) - ... - 1108 | end ; - 1109 | (l, LF.ClObj (Context.extend_hatctx k phat0, LF.MObj (Whnf.norm (tM, dot_k s_proj k)))) , LF.ClTyp (Whnf.normClTyp (tA , dot_k s_proj k), padctx cPsi' k) - 1110 | end - 1111 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Some k', None) - - File "src/core/total.ml", lines 1121-1124, characters 5-87: - 1121 | .....let LF.Root (_, tH', _, _) = - 1122 | Whnf.norm (LF.Root (l, tH, LF.Nil, Plicity.explicit), s_proj) - 1123 | in - 1124 | (l, LF.ClObj (phat0, LF.PObj tH')) , LF.ClTyp (Whnf.normClTyp (tA, s_proj), cPsi') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/total.ml", lines 1134-1140, characters 2-65: - 1134 | ..match args with - 1135 | | [] -> [] - 1136 | | Comp.DC :: args -> Comp.DC :: shiftArgs cD args (cPsi', s_proj, cPsi) - 1137 | | Comp.V x :: args -> Comp.V x :: shiftArgs cD args (cPsi', s_proj, cPsi) - 1138 | | Comp.M (cM, cU ) :: args -> - 1139 | let cM' , cU'= shiftMetaObj cD (cM , cU) (cPsi', s_proj, cPsi) in - 1140 | Comp.M (cM', cU') :: shiftArgs cD args (cPsi', s_proj, cPsi) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - E::_ - - File "src/core/total.ml", lines 1316-1337, characters 2-40: - 1316 | ..function - 1317 | | Comp.TypBase (loc, c, _) -> - 1318 | Bool.not (Id.cid_comp_typ_equal a c) - 1319 | && begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with - 1320 | | Sgn.Positivity -> true - ... - 1334 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && no_occurs a tau2 - 1335 | | Comp.TypCross (_, taus) -> List2.for_all (no_occurs a) taus - 1336 | | Comp.TypPiBox (_, _, tau') -> no_occurs a tau' - 1337 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1340-1360, characters 2-40: - 1340 | ..function - 1341 | | Comp.TypBase (loc, c, _) -> - 1342 | Id.cid_comp_typ_equal a c - 1343 | || begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with - 1344 | | Sgn.Positivity -> true - ... - 1357 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && check_positive a tau2 - 1358 | | Comp.TypCross (_, taus) -> List2.for_all (check_positive a) taus - 1359 | | Comp.TypPiBox (_, _, tau') -> check_positive a tau' - 1360 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1364-1372, characters 2-40: - 1364 | ..function - 1365 | | Comp.TypBase _ -> true - 1366 | | Comp.TypCobase _ -> true - 1367 | | Comp.TypDef _ -> raise Unimplemented - 1368 | | Comp.TypBox _ -> true - 1369 | | Comp.TypArr (_, tau1, tau2) -> check_positive a tau1 && positive a tau2 - 1370 | | Comp.TypCross (_, taus) -> List2.for_all (positive a) taus - 1371 | | Comp.TypPiBox (_, _, tau') -> positive a tau' - 1372 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1492-1531, characters 2-27: - 1492 | ..match tau1 with - 1493 | | Comp.TypBase (loc, c, mS1) -> - 1494 | if Id.cid_comp_typ_equal a c - 1495 | then - 1496 | begin - ... - 1528 | | Comp.TypBox _ - 1529 | | Comp.TypClo _ - 1530 | | Comp.TypCobase _ - 1531 | | Comp.TypDef _ -> true - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - - File "src/core/total.ml", lines 1555-1580, characters 8-48: - 1555 | ........function - 1556 | | Comp.TypBase _ - 1557 | | Comp.TypCobase _ - 1558 | | Comp.TypBox _ -> true - 1559 | - ... - 1577 | | Comp.TypPiBox (_, dec, tau') -> strat (LF.Dec (cD0, dec)) tau' - 1578 | - 1579 | | Comp.TypDef _ - 1580 | | Comp.TypClo _ -> raise Unimplemented - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypInd _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Coverage.cmx -c -impl src/core/coverage.ml) - File "src/core/coverage.ml", line 76, characters 26-46: - 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) - ^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/coverage.ml", lines 75-78, characters 2-5: - 75 | ..let Some (CTypDecl (_, tau, _)) = - 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) - 77 | in - 78 | tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (CTypDeclOpt _) - - File "src/core/coverage.ml", line 195, characters 20-45: - 195 | let gen_str cD cPsi (LF.Atom (_, a, _) as tP) = - ^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) - - File "src/core/coverage.ml", lines 214-218, characters 4-74: - 214 | ....match tA with - 215 | | LF.Atom _ -> LF.Root (Location.ghost, tH, tS, Plicity.explicit) - 216 | | LF.PiTyp ((LF.TypDecl (x, tB0), _, _), tB) -> - 217 | let tM = eta (tB0, s) LF.Nil in - 218 | LF.Lam (Location.ghost, x, eta (tB, S.LF.dot1 s) (LF.App (tM, tS))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/coverage.ml", lines 271-281, characters 4-58: - 271 | ....function - 272 | | MetaSub (cPsi, s, LF.STyp (_, cPhi)) -> - 273 | fprintf ppf "%a |- %a : %a" - 274 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi - 275 | (P.fmt_ppr_lf_sub cD cPsi P.l0) s - ... - 278 | fprintf ppf "%a |- %a : %a" - 279 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi - 280 | (P.fmt_ppr_lf_normal cD cPsi P.l0) tR - 281 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp sA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MetaSub (cPsi, s, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 304-308, characters 4-73: - 304 | ....function - 305 | | CovCtx cPsi -> fmt_ppr_covctx cD ppf cPsi - 306 | | CovSub (cPsi, s, LF.STyp (_, cPhi)) -> fmt_ppr_covsub cD ppf (cPsi, s, cPhi) - 307 | | CovGoal (cPsi, tR, sA) -> fmt_ppr_covgoal cD ppf (cPsi, tR, sA) - 308 | | CovPatt (cG, patt, ttau) -> fmt_ppr_covpatt cD ppf (cG, patt, ttau) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CovSub (cPsi, s, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 483-484, characters 7-73: - 483 | .......let Comp.TypBox (_, mT) = tau_sc in - 484 | check_meta_obj cD_p mO (Whnf.cnormMTyp (mT, t)) && is_id cD_p t cD - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| - TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) - - File "src/core/coverage.ml", lines 545-546, characters 9-44: - 545 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 543-547, characters 7-10: - 543 | .......begin - 544 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in - 545 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - 547 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 580-619, characters 5-8: - 580 | .....let LF.MPVar (_, s') as tH' = Whnf.cnormHead (tH', t) in - 581 | dprintf - 582 | begin fun p -> - 583 | p.fmt "[pre_match_head] @[<v>pvar - case\ - 584 | @,pattern: @[@[%a@]@ |- @[%a@]@]\ - ... - 616 | end; - 617 | SplitCand - 618 | (* CtxSplitCand (pre_match_dctx cD cD_p cPsi cPsi_p [] []) *) - 619 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (BVar _|Const _|MMVar (({instantiation={ _ }; constraints={ _ }; _ }, _), _)| - MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)|FVar _|FMVar (_, _)| - FPVar (_, _)|HClo (_, _, _)| - HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))) - - File "src/core/coverage.ml", lines 638-639, characters 9-44: - 638 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 636-640, characters 7-10: - 636 | .......begin - 637 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in - 638 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in - 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) - 640 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 695-708, characters 5-59: - 695 | .....let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in - 696 | let covGoal' = - 697 | CovGoal - 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) - 699 | , tM, (tB, S.LF.dot1 s) - ... - 705 | , tN, (tB', S.LF.dot1 s') - 706 | ) - 707 | in - 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) - - File "src/core/coverage.ml", lines 694-708, characters 5-59: - 694 | .....let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in - 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in - 696 | let covGoal' = - 697 | CovGoal - 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) - ... - 705 | , tN, (tB', S.LF.dot1 s') - 706 | ) - 707 | in - 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) - - File "src/core/coverage.ml", lines 692-737, characters 2-8: - 692 | ..match (tM, tN) with - 693 | | (LF.Lam (_, x, tM), LF.Lam (_, _, tN)) -> - 694 | let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in - 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in - 696 | let covGoal' = - ... - 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) - 735 | - 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) - 737 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, x, tM), (Root (_, _, _, _)|LFHole (_, _, _)|Clo _|Tuple (_, _))) - - File "src/core/coverage.ml", lines 684-737, characters 2-8: - 684 | ..let MetaPatt (cPhi, tN, sA') = patt in - 685 | dprintf - 686 | begin fun p -> - 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ - 688 | @,pattern: @[%a@]@]" - ... - 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) - 735 | - 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) - 737 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaSub (_, _, _)|GenPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 683-737, characters 2-8: - 683 | ..let CovGoal (cPsi, tM, sA) = covGoal in - 684 | let MetaPatt (cPhi, tN, sA') = patt in - 685 | dprintf - 686 | begin fun p -> - 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ - ... - 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) - 735 | - 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) - 737 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 744-758, characters 5-18: - 744 | .....let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in - 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in - 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in - 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in - 748 | let sC2' = (tC2, LF.Dot (LF.Obj (tM'), s')) in - ... - 755 | (cPsi, tS, sB2') - 756 | (cPsi', tS', sC2') - 757 | matchCands' - 758 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 743-758, characters 5-18: - 743 | .....let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in - 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in - 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in - 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in - 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in - ... - 755 | (cPsi, tS, sB2') - 756 | (cPsi', tS', sC2') - 757 | matchCands' - 758 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 740-758, characters 2-18: - 740 | ..match (tS, tS') with - 741 | | (LF.Nil, LF.Nil) -> (matchCands, splitCands) - 742 | | (LF.App (tM, tS), LF.App (tM', tS')) -> - 743 | let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in - 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in - ... - 755 | (cPsi, tS, sB2') - 756 | (cPsi', tS', sC2') - 757 | matchCands' - 758 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Nil, (App (_, _)|SClo _)) - - File "src/core/coverage.ml", lines 793-797, characters 5-63: - 793 | .....let LF.TypDecl (_, tA1) = tdecl1 in - 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in - 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in - 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in - 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 792-797, characters 5-63: - 792 | .....let LF.TypDecl (_, tA0) = tdecl0 in - 793 | let LF.TypDecl (_, tA1) = tdecl1 in - 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in - 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in - 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in - 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 763-816, characters 2-74: - 763 | ..match ((s0, cPhi0), (s1, cPhi1)) with - 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) - 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> - 766 | if n = k - 767 | then (matchCands, splitCands) - ... - 813 | - 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) - 815 | - 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Shift _, _), - (Dot - (Head - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)| - FVar _|FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), - _), - _)) - - File "src/core/coverage.ml", lines 762-816, characters 2-74: - 762 | ..let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in - 763 | match ((s0, cPhi0), (s1, cPhi1)) with - 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) - 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> - 766 | if n = k - ... - 813 | - 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) - 815 | - 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MetaSub (cPsi1, s1, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 761-816, characters 2-74: - 761 | ..let CovSub (cPsi0, s0, (LF.STyp (r0, cPhi0) as sT0)) = covGoal in - 762 | let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in - 763 | match ((s0, cPhi0), (s1, cPhi1)) with - 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) - 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> - ... - 813 | - 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) - 815 | - 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CovSub (cPsi0, s0, (MTyp _|PTyp _)) - - File "src/core/coverage.ml", lines 819-830, characters 2-57: - 819 | ..match (f0, f1) with - 820 | | (LF.Head h0, LF.Head h1) -> - 821 | let tM0 = eta_expand (h0, tA0) in - 822 | let tM1 = eta_expand (h1, tA1) in - 823 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in - ... - 827 | | (LF.Obj tM0, LF.Obj tM1) -> - 828 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in - 829 | let patt = MetaPatt (cPhi1, tM1, (tA1, S.LF.id)) in - 830 | pre_match cD cD_p covGoal patt matchCands splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Head h0, (Undef|Obj _)) - - File "src/core/coverage.ml", lines 839-851, characters 5-18: - 839 | .....let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in - 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in - 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in - 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in - 843 | let sK2' = (tK2, LF.Dot (LF.Obj tM', s')) in - ... - 848 | (cPsi, tS, sK1') - 849 | (cPsi', tS', sK2') - 850 | matchCands' - 851 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 838-851, characters 5-18: - 838 | .....let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in - 839 | let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in - 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in - 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in - 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in - ... - 848 | (cPsi, tS, sK1') - 849 | (cPsi', tS', sK2') - 850 | matchCands' - 851 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 834-851, characters 2-18: - 834 | ..match ((tS1, sK1), (tS2, sK2)) with - 835 | | ((LF.Nil, (LF.Typ, _)), (LF.Nil, (LF.Typ, _))) -> - 836 | (matchCands, splitCands) - 837 | | ((LF.App (tM, tS), sK), (LF.App (tM', tS'), sK')) -> - 838 | let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in - ... - 848 | (cPsi, tS, sK1') - 849 | (cPsi', tS', sK2') - 850 | matchCands' - 851 | splitCands' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Nil, (Typ, _)), (Nil, (PiKind (_, _), _))) - - File "src/core/coverage.ml", lines 860-903, characters 2-17: - 860 | ..match (Whnf.whnfTyp sA, Whnf.whnfTyp sB) with - 861 | | ((LF.Atom (_, a, tS1), s1), (LF.Atom (loc, b, tS2), s2)) -> - 862 | let tK1 = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in - 863 | let tK2 = (Store.Cid.Typ.get b).Store.Cid.Typ.Entry.kind in - 864 | let tS1' = Whnf.normSpine (tS1, s1) in - ... - 900 | (trec1, s1) - 901 | (trec2, s2) - 902 | matchCands - 903 | splitCands - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((Atom (_, a, tS1), s1), ((PiTyp (_, _)|Sigma _|TClo _), _)) - - File "src/core/coverage.ml", lines 907-927, characters 2-12: - 907 | ..match (srec1, srec2) with - 908 | | ((LF.SigmaLast (_, tA1), s1), (LF.SigmaLast (_, tA2), s2)) -> - 909 | pre_match_typ cD cD_p (cPsi, (tA1, s1)) (cPhi, (tA2, s2)) matchCands splitCands - 910 | - 911 | | ((LF.SigmaElem (x1, tA1, trec1), s1), (LF.SigmaElem (x2, tA2, trec2), s2)) -> - ... - 924 | (LF.DDec (cPsi, LF.TypDecl (x1, LF.TClo (tA1, s1)))) - 925 | (LF.DDec (cPhi, LF.TypDecl (x2, LF.TClo (tA2, s2)))) - 926 | (trec1, S.LF.dot1 s1) (trec2, S.LF.dot1 s2) - 927 | mC sC - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((SigmaLast (_, tA1), s1), (SigmaElem (_, _, _), _)) - - File "src/core/coverage.ml", lines 952-1004, characters 2-31: - 952 | ..match ((mO, mt), (mO_p, mtp)) with - 953 | | LF.((CObj cPsi, _), (CObj cPsi', _)) -> - 954 | pre_match_dctx cD cD_p cPsi cPsi' mC sC - 955 | | LF.((ClObj (_, clobj), ClTyp (cltyp, cPsi)), (ClObj (_, clobj'), ClTyp (cltyp', cPsi'))) -> - 956 | match ((clobj, cltyp), (clobj', cltyp')) with - ... - 1001 | (mobj cD_p) (loc', mO_p) - 1002 | (mtyp cD_p) mtp - 1003 | in - 1004 | Error.raise_violation s - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((CObj cPsi, _), ((MUndef|ClObj (_, _)|MV _), _)) - - File "src/core/coverage.ml", lines 1092-1104, characters 5-10: - 1092 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1095 | let t2 = LF.MDot (mO, t) in - 1096 | let t2' = LF.MDot (mO', t') in - ... - 1101 | (pS, (tau2, t2)) - 1102 | (pS', (tau2', t2')) - 1103 | mC1 - 1104 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1091-1104, characters 5-10: - 1091 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1092 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1095 | let t2 = LF.MDot (mO, t) in - ... - 1101 | (pS, (tau2, t2)) - 1102 | (pS', (tau2', t2')) - 1103 | mC1 - 1104 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1110-1122, characters 5-10: - 1110 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1113 | let t2 = LF.MDot (mO, t) in - 1114 | let t2' = LF.MDot (mO', t') in - ... - 1119 | (pS, (tau2, t2)) - 1120 | (pS', (tau2', t2')) - 1121 | mC1 - 1122 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1109-1122, characters 5-10: - 1109 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1110 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in - 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in - 1113 | let t2 = LF.MDot (mO, t) in - ... - 1119 | (pS, (tau2, t2)) - 1120 | (pS', (tau2', t2')) - 1121 | mC1 - 1122 | sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1128-1134, characters 5-84: - 1128 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1129 | let tau1 = LF.CTyp w in - 1130 | let tau1' = LF.CTyp w' in - 1131 | let t2 = LF.MDot (mO, t) in - 1132 | let t2' = LF.MDot (mO', t')in - 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in - 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1127-1134, characters 5-84: - 1127 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1128 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1129 | let tau1 = LF.CTyp w in - 1130 | let tau1' = LF.CTyp w' in - 1131 | let t2 = LF.MDot (mO, t) in - 1132 | let t2' = LF.MDot (mO', t')in - 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in - 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1139-1147, characters 5-51: - 1139 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in - 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in - 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in - 1143 | let t2 = LF.MDot (mO, t) in - 1144 | let t2' = LF.MDot (mO', t') in - 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in - 1146 | match_spines (cD, cG) (cD_p, cG_p) - 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1138-1147, characters 5-51: - 1138 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in - 1139 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in - 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in - 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in - 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in - 1143 | let t2 = LF.MDot (mO, t) in - 1144 | let t2' = LF.MDot (mO', t') in - 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in - 1146 | match_spines (cD, cG) (cD_p, cG_p) - 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/coverage.ml", lines 1186-1224, characters 2-8: - 1186 | ..match Whnf.whnfTyp sA with - 1187 | | (LF.PiTyp ((LF.TypDecl (u, tA), _, _), tB), s) -> - 1188 | (* cPsi' |- Pi x:A.B <= typ - 1189 | cPsi |- s <= cPsi' - 1190 | cPsi |- tN <= [s]tA - ... - 1221 | Some LF.Nil - 1222 | with - 1223 | | U.Failure _ -> None - 1224 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp ((TypDeclOpt _, _, _), _), _) - - File "src/core/coverage.ml", lines 1343-1349, characters 2-29: - 1343 | ..let LF.TypDecl (_, tA) = Context.ctxDec cPsi i in (* x_i : tA in cPsi *) - 1344 | (* We call expand_head_sigma here because it might be *projections* - 1345 | of the bound variable that are relevant to the matching. - 1346 | *) - 1347 | expand_head_sigma (LF.BVar i, tA) - 1348 | |> List.map (fun (tH, tA) -> (tH, tA, 0)) - 1349 | |> genAllObj (cD, cPsi, tP) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", line 1484, characters 17-61: - 1484 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), ms) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', ((Null|CtxVar _), _, (_, _)), _) - - File "src/core/coverage.ml", lines 1468-1493, characters 2-14: - 1468 | ..match tA with - 1469 | | LF.Atom _ -> - 1470 | genPVar cov_problem @ genBVars cov_problem - 1471 | | LF.Sigma trec -> - 1472 | Error.raise_not_implemented "[genBCovGoals] not implemented for Sigma types" - ... - 1490 | in - 1491 | (cD', cg', ms) - 1492 | end - 1493 | cg_list - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/coverage.ml", line 1544, characters 17-60: - 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', ((Null|CtxVar _), _, (_, _)), _) - - File "src/core/coverage.ml", lines 1541-1552, characters 5-16: - 1541 | .....let LF.TypDecl (x, _) = tdecl in - 1542 | let cov_goals = genCovGoals (cD, LF.DDec (cPsi, tdecl), tB) in - 1543 | List.map - 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> - 1545 | ( cD' - ... - 1549 | , t - 1550 | ) - 1551 | end - 1552 | cov_goals - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 1512-1552, characters 2-16: - 1512 | ..match tA with - 1513 | | LF.Atom (_, a, tS) -> - 1514 | let g_pv = genPVar cov_problem in (* (cD', cg, ms) list *) - 1515 | dprintf - 1516 | begin fun p -> - ... - 1549 | , t - 1550 | ) - 1551 | end - 1552 | cov_goals - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/coverage.ml", lines 1582-1700, characters 5-8: - 1582 | .....begin match mc with - 1583 | | Eqn (CovSub (cPsi, s, sT), MetaSub (cPsi_p, s_p, sT_p)) -> - 1584 | let cT = LF.ClTyp (sT, cPsi) in - 1585 | let cT_p = LF.ClTyp (sT_p, cPsi_p) in - 1586 | let cM = (Location.ghost, LF.ClObj (Context.dctxToHat cPsi, LF.SObj s)) in - ... - 1697 | NotSolvable - 1698 | end - 1699 | end - 1700 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Eqn (CovSub (cPsi, s, sT), (MetaPatt (_, _, _)|GenPatt (_, _, _))) - - File "src/core/coverage.ml", lines 1725-1730, characters 5-11: - 1725 | .....let CovGoal (cPsi', tR', sA') as covG = CovGoal (cPsi, tR, (tA, S.LF.id)) in - 1726 | (* let MetaPatt (cPhi, _, sB') = patt in *) - 1727 | (* let (mL', sL') = pre_match_typ cD cD_p (cPsi, sA') (cPhi, sB') matchL' splitL' in *) - 1728 | (* let (mL', sL') = pre_match_dctx cD cD_p cPsi cPhi matchL' splitL' in *) - 1729 | let result = pre_match cD cD_p covG patt matchL' splitL' in - 1730 | result - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 1719-1741, characters 2-94: - 1719 | ..match splitL with - 1720 | | [] -> (matchL, []) - 1721 | | Split (CovGoal (cPsi, tR, sA), patt) :: splits -> - 1722 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in - 1723 | let tA = Whnf.normTyp sA in - ... - 1738 | pre_match_dctx cD cD_p cPsi' cPsi_patt matchL' splitL' - 1739 | | SplitPat ((Comp.PatFVar (loc, x), (tau, t)), pPatt_p) :: splits -> - 1740 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in - 1741 | (matchL', SplitPat ((Comp.PatFVar (loc, x), (tau, Whnf.mcomp t ms)), pPatt_p) :: splitL') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Split ((CovCtx _|CovPatt (_, _, _)), _)::_ - - File "src/core/coverage.ml", lines 1973-2000, characters 5-6: - 1973 | .....let (cPsi, (LF.Atom (_, a, _) as tP, s)) = - 1974 | Whnf.lowerTyp (LF.CtxVar (LF.CtxOffset (k + d))) (tA, s') - 1975 | in - 1976 | (* bp : Context substitution associated with declaration is off by 1 *) - 1977 | let (ss', cPsi') = Subord.thin' cD'' a cPsi in - ... - 1997 | in - 1998 | ( LF.Dec (cD'', mdec) - 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) - 2000 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cPsi, ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _)) - - File "src/core/coverage.ml", lines 1964-2000, characters 2-6: - 1964 | ..match decls with - 1965 | | LF.Empty -> (cD', S.LF.id) - 1966 | | LF.(Dec (decls, TypDecl (x, tA))) -> - 1967 | let x = NameGen.renumber names x in - 1968 | let names = x :: names in - ... - 1997 | in - 1998 | ( LF.Dec (cD'', mdec) - 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) - 2000 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (decls, TypDeclOpt _) - - File "src/core/coverage.ml", line 1963, characters 28-52: - 1963 | let rec decTomdec names cD' (LF.CtxOffset k as cpsi) (d, decls) = - ^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) - - File "src/core/coverage.ml", line 2096, characters 17-48: - 2096 | let genCtx names (LF.Dec (cD', LF.Decl _) as cD) cpsi = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt { _ }) - - File "src/core/coverage.ml", line 2123, characters 23-82: - 2123 | let genContextGoals cD (x, LF.CTyp (Option.Some schema_cid), plicity, inductivity) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (x, CTyp None, _, _) - - File "src/core/coverage.ml", lines 2144-2178, characters 5-87: - 2144 | .....let LF.TypDecl (x, tA) = decl in - 2145 | let s = LF.SVar (2, 0, S.LF.id) in - 2146 | let mT = LF.ClTyp (LF.STyp (r0, cPhi'), cPsi) in - 2147 | let name = Whnf.newMTypName mT in - 2148 | let cD' = - ... - 2175 | in - 2176 | let cPsi' = Whnf.cnormDCtx (cPsi, LF.MShift 2) in - 2177 | let cPhi'' = Whnf.cnormDCtx (cPhi, LF.MShift 2) in - 2178 | [(cD'', CovSub (cPsi', LF.Dot (LF.Obj tM, s), LF.STyp (r0, cPhi'')), LF.MShift 2)] - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/coverage.ml", lines 2186-2239, characters 2-8: - 2186 | ..match cT with - 2187 | | LF.ClTyp (clTyp, cPsi) -> - 2188 | begin match clTyp with - 2189 | | LF.MTyp tA -> - 2190 | dprintf - ... - 2236 | , Atomic - 2237 | ) - 2238 | end - 2239 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp _ - - File "src/core/coverage.ml", lines 2249-2250, characters 11-60: - 2249 | ...........let LF.Decl { name = x; typ = cU; plicity; inductivity } = d in - 2250 | genContextGoals cD' (x, cU, plicity, inductivity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/coverage.ml", lines 2242-2278, characters 2-58: - 2242 | ..match (cv_list, cD) with - 2243 | | ([], _) -> NoCandidate - 2244 | | ([LF.CtxOffset j], LF.Dec (cD', d)) -> - 2245 | if j = k - 2246 | then - ... - 2275 | SomeCtxCands ctx_goals' - 2276 | end - 2277 | else - 2278 | best_ctx_cand (cD', cv_list) (k + 1) (d :: cD_tail) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxOffset j::[], Empty) - - File "src/core/coverage.ml", lines 2308-2309, characters 25-35: - 2308 | .........................let LF.Root (_, tH, _, _) = tR in - 2309 | LF.PObj tH - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/coverage.ml", lines 2302-2309, characters 22-35: - 2302 | ......................match cT with - 2303 | (* gonna be a ClTyp because we're in the CovGoal branch *) - 2304 | | LF.ClTyp (LF.MTyp _, _) -> LF.MObj tR - 2305 | | LF.ClTyp (LF.PTyp _, _) -> - 2306 | (* ensure that PTyp is added as a PObj to the - 2307 | msub; otherwise normalization WILL crash. *) - 2308 | let LF.Root (_, tH, _, _) = tR in - 2309 | LF.PObj tH - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/core/coverage.ml", lines 2294-2331, characters 17-50: - 2294 | .................match cg with - 2295 | | CovGoal (cPsi', tR, sA') -> - 2296 | dprintf - 2297 | begin fun p -> - 2298 | p.fmt "[best_cand] generated covgoal @[%a@]" - ... - 2328 | , Whnf.cnormClTyp (sT, LF.MShift k) - 2329 | ) - 2330 | in - 2331 | TermCandidate (cD'', cg', ms0). - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovPatt (_, _, _)) - - File "src/core/coverage.ml", lines 2335-2348, characters 11-17: - 2335 | ...........match best_cand (cD', mvlist') (k + 1) (md :: cD_tail) with - 2336 | | NoCandidate -> SomeTermCands (dep0, cov_goals0) - 2337 | | SomeTermCands (dep, cov_goals) -> - 2338 | begin match dep, dep0 with - 2339 | | Dependent, Atomic -> SomeTermCands (dep, cov_goals) - ... - 2345 | then SomeTermCands (dep, cov_goals) - 2346 | else SomeTermCands (dep0, cov_goals0) - 2347 | *) - 2348 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - SomeCtxCands _ - - File "src/core/coverage.ml", lines 2282-2356, characters 2-55: - 2282 | ..match (mv_list, cD) with - 2283 | | ([], _) -> NoCandidate - 2284 | | (LF.Offset j :: mvlist', LF.(Dec (cD', (Decl { typ = cT; _ } as md)))) -> - 2285 | if k = j - 2286 | then - ... - 2353 | best_cand (cD', mvlist') (k + 1) (md :: cD_tail) - 2354 | end - 2355 | else - 2356 | best_cand (cD', mv_list) (k + 1) (md :: cD_tail) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Offset j::mvlist', Dec (cD', DeclOpt _)) - - File "src/core/coverage.ml", lines 2430-2438, characters 7-13: - 2430 | .......match cl with - 2431 | | LF.PTyp _ -> - 2432 | let v = Whnf.newMPVar (Some u) (LF.Empty, cPsi', tP') plicity inductivity in - 2433 | LF.(PObj (mpvar ((v, Whnf.m_id), S.LF.id))) - 2434 | | LF.MTyp _ -> - 2435 | LF.MObj - 2436 | (ConvSigma.etaExpandMMVstr - 2437 | Location.ghost LF.Empty cPsi' (tP', S.LF.id) plicity (Some u) (u :: names) - 2438 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/coverage.ml", line 2581, characters 16-42: - 2581 | begin fun (CovGoal (cPsi', tR, sA')) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/coverage.ml", lines 2630-2632, characters 10-46: - 2630 | ..........match tC with - 2631 | | MTyp _ -> fun sA -> MTyp (TClo sA) - 2632 | | PTyp _ -> fun sA -> PTyp (TClo sA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/coverage.ml", lines 2626-2667, characters 5-8: - 2626 | .....begin match mT with - 2627 | | LF.(ClTyp (tC, cPsi)) -> - 2628 | let f = - 2629 | let open LF in - 2630 | match tC with - ... - 2664 | , t - 2665 | ) - 2666 | end - 2667 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp None - - File "src/core/coverage.ml", lines 2714-2762, characters 2-55: - 2714 | ..function - 2715 | | [] -> vlist - 2716 | | Split (CovGoal (_, LF.Root (_, LF.MVar (u, _), _, _), _), _) :: sl -> - 2717 | let (pvlist, cvlist, mvlist) = vlist in - 2718 | if List.mem u mvlist - ... - 2759 | let (pvlist, cvlist, mvlist) = vlist in - 2760 | if List.mem x pvlist - 2761 | then mvInSplit cD vlist sl - 2762 | else mvInSplit cD (x :: pvlist, cvlist, mvlist) sl - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - SplitCtx ((Null|DDec (_, _)), _)::_ - - File "src/core/coverage.ml", line 2773, characters 30-44: - 2773 | begin fun (LF.Offset k) (LF.Offset k') -> - ^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Inst {instantiation={ _ }; constraints={ _ }; _ } - - File "src/core/coverage.ml", line 2773, characters 16-29: - 2773 | begin fun (LF.Offset k) (LF.Offset k') -> - ^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Inst {instantiation={ _ }; constraints={ _ }; _ } - - File "src/core/coverage.ml", line 2784, characters 33-50: - 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> - ^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) - - File "src/core/coverage.ml", line 2784, characters 16-32: - 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> - ^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) - - File "src/core/coverage.ml", line 2867, characters 55-73: - 2867 | Prettycov.fmt_ppr_cov_goals (List.map (fun (TermCandidate cg) -> cg) cgoals) - ^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxCandidate (_, _, _) - - File "src/core/coverage.ml", lines 2903-2908, characters 2-33: - 2903 | ..function - 2904 | | Comp.PatNil -> Comp.PatNil - 2905 | | Comp.PatApp (loc, pat, pS) -> - 2906 | let pat' = subst_pattern (pat_r, pv) pat in - 2907 | let pS' = subst_pattern_spine (pat_r, pv) pS in - 2908 | Comp.PatApp (loc, pat', pS') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - - File "src/core/coverage.ml", line 2979, characters 32-45: - 2979 | let best_pv_cand names (cD, cG) (x :: pvlist) = - ^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/coverage.ml", lines 3002-3013, characters 2-40: - 3002 | ..match sl with - 3003 | | [] -> pvlist - 3004 | | Split (CovGoal _, _) :: sl -> pvInSplitCand sl pvlist - 3005 | | Split (CovSub _, _) :: sl -> pvInSplitCand sl pvlist - 3006 | | SplitCtx _ :: sl -> pvInSplitCand sl pvlist - ... - 3010 | ); - 3011 | if List.mem x pvlist - 3012 | then pvInSplitCand sl pvlist - 3013 | else pvInSplitCand sl (x :: pvlist) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Split ((CovCtx _|CovPatt (_, _, _)), _)::_ - - File "src/core/coverage.ml", lines 3223-3231, characters 2-27: - 3223 | ..let CovPatt (cG', pat', ttau') = covGoal in - 3224 | dprintf - 3225 | begin fun p -> - 3226 | p.fmt "[gen_candidates] @[<v>pat = @[%a@]@,pat' = @[%a@]@]" - 3227 | (P.fmt_ppr_cmp_pattern cD_p cG_p P.l0) pat - 3228 | (P.fmt_ppr_cmp_pattern cD_p cG' P.l0) pat' - 3229 | end; - 3230 | let (ml, sl) = match_pattern (cD, cG') (cD_p, cG_p) (pat', ttau') (pat, ttau) [] [] in - 3231 | Cand (cD_p, cG_p, ml, sl) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovGoal (_, _, (_, _))|CovCtx _|CovSub (_, _, _)) - - File "src/core/coverage.ml", line 3222, characters 33-66: - 3222 | let gen_candidate loc cD covGoal (cD_p, GenPatt (cG_p, pat, ttau)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_p, (MetaPatt (_, _, (_, _))|MetaSub (_, _, _))) - - File "src/core/coverage.ml", lines 3399-3434, characters 2-50: - 3399 | ..function - 3400 | | LF.Empty -> false - 3401 | | LF.Dec (cD', (LF.Decl { typ = LF.ClTyp (LF.MTyp tA, cPsi); _} as cdecl)) -> - 3402 | begin - 3403 | try - ... - 3431 | print_string "Unable to prove given type is empty\n"; check_emptiness cD' - 3432 | end - 3433 | - 3434 | | LF.Dec (cD', LF.Decl _) -> check_emptiness cD' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cD', DeclOpt _) - - File "src/core/coverage.ml", lines 3437-3447, characters 2-8: - 3437 | ..function - 3438 | | LF.Empty -> false - 3439 | | LF.Dec (cG, Comp.CTypDecl (_, tau, _)) -> - 3440 | begin - 3441 | try - ... - 3444 | | _ -> check_empty_comp names cD cG - 3445 | with - 3446 | | _ -> check_empty_comp names cD cG - 3447 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG, CTypDeclOpt _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Interactive.cmx -c -impl src/core/interactive.ml) - File "src/core/interactive.ml", lines 202-213, characters 10-26: - 202 | ..........let Cover.CovGoal (cPsi', tR, sA') = cg in - 203 | let ms' = LF.MDot (LF.ClObj (Context.dctxToHat cPsi', LF.MObj tR), ms) in - 204 | let k = List.length cD_tail in - 205 | let (cD'', ms0) = Coverage.addToMCtx cDg' (cD_tail, ms') in - 206 | let cg' = - ... - 210 | , (Whnf.cnormTyp (Whnf.normTyp sA', LF.MShift k), S.LF.id) - 211 | ) - 212 | in - 213 | (cD'', cg', ms0) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) - - File "src/core/interactive.ml", line 183, characters 18-73: - 183 | let genCGoals cD' (LF.Decl { name =n; typ = mtyp; plicity; inductivity }) cD_tail = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Check.cmx -c -impl src/core/check.ml) - File "src/core/check.ml", lines 471-475, characters 4-46: - 471 | ....function - 472 | | I.Root (_, h, tS, _) -> fmv_spine (fmv_head cD h) tS - 473 | | I.Lam (_, _, tM) -> fmv_normal cD tM - 474 | | I.LFHole _ -> cD - 475 | | I.Tuple (_, tuple) -> fmv_tuple cD tuple - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Clo _ - - File "src/core/check.ml", lines 490-492, characters 4-55: - 490 | ....function - 491 | | I.Nil -> cD - 492 | | I.App (tM, tS) -> fmv_spine (fmv_normal cD tM) tS - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - SClo _ - - File "src/core/check.ml", lines 500-503, characters 4-61: - 500 | ....function - 501 | | I.Null -> cD - 502 | | I.CtxVar (I.CtxOffset k) -> mark_ind cD k - 503 | | I.DDec (cPsi, decl) -> fmv_decl (fmv_dctx cD cPsi) decl - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/check.ml", lines 511-514, characters 4-38: - 511 | ....function - 512 | | I.Atom (_, _, tS) -> fmv_spine cD tS - 513 | | I.PiTyp ((decl, _, _), tA) -> fmv_typ (fmv_decl cD decl) tA - 514 | | I.Sigma trec -> fmv_trec cD trec - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/check.ml", lines 534-538, characters 4-68: - 534 | ....function - 535 | | (_, I.CObj (cPsi)) -> fmv_dctx cD cPsi - 536 | | (_, I.ClObj (phat, I.MObj tM)) -> fmv_normal cD tM - 537 | | (_, I.ClObj (phat, I.PObj h)) -> fmv_head (fmv_hat cD phat) h - 538 | | (_, I.ClObj (phat, I.SObj s)) -> fmv_subst (fmv_hat cD phat) s - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, (MUndef|MV _)) - - File "src/core/check.ml", lines 553-556, characters 4-43: - 553 | ....function - 554 | | PatNil -> cD - 555 | | PatApp (_, pat, pat_spine) -> - 556 | fmv_pat_spine (fmv cD pat) pat_spine - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PatObs (_, _, _, _) - - File "src/core/check.ml", lines 561-595, characters 4-10: - 561 | ....match (t, cD) with - 562 | | (I.MShift k, I.Empty) -> cD1' - 563 | | (I.MShift k, cD) - 564 | when k < 0 -> - 565 | Error.raise_violation "Contextual substitution ill-formed" - ... - 592 | else - 593 | id_map_ind cD1' ms cD - 594 | | _ -> id_map_ind cD1' ms cD - 595 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MDot (_, _), Dec (cD, DeclOpt _)) - - File "src/core/check.ml", line 618, characters 11-38: - 618 | |> fun (CTypDecl (u, tau, wf_tag)) -> - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/check.ml", lines 747-771, characters 6-12: - 747 | ......match cPsi0 with - 748 | | Int.LF.Null -> () (* raise (Error (Location.ghost, IllegalParamTyp (cD, cPsi, tA))) *) - 749 | | Int.LF.CtxVar psi -> - 750 | (* tA is an instance of a schema block *) - 751 | let { Store.Cid.Schema.Entry.name; schema = Int.LF.Schema elems } = - ... - 768 | Unify.unifyTyp cD cPsi (tA, Substitution.LF.id) (tB0, Substitution.LF.id) - 769 | with - 770 | | _ -> checkParamTypeValid' (cPsi0', n + 1) - 771 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (cPsi0', TypDeclOpt _) - - File "src/core/check.ml", lines 776-796, characters 4-68: - 776 | ....match (mS, cKt) with - 777 | | (MetaNil, (Ctype _, _)) -> () - 778 | | (MetaApp (mO, mT, mS, plicity_app), (PiKind (_, I.Decl { typ = ctyp; plicity = plicity_pi; inductivity; _ }, cK), t)) -> - 779 | if Plicity.(plicity_app <> plicity_pi) - 780 | then Error.raise_violation "[checkMetaSpine] plicity mismatch"; - ... - 793 | Location.print_short loc - 794 | ) - 795 | end; - 796 | checkMetaSpine loc cD mS (cK, I.MDot (metaObjToMFront mO, t)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaNil, (PiKind (_, _, _), _)) - - File "src/core/check.ml", line 822, characters 20-56: - 822 | let checkCDecl cD (I.Decl { name = x; typ = ctyp; _ }) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/check.ml", lines 834-868, characters 4-35: - 834 | ....function - 835 | | TypBase (loc, c, mS) -> - 836 | let { Store.Cid.CompTyp.Entry.kind = cK; _ } = Store.Cid.CompTyp.get c in - 837 | checkMetaSpine loc cD mS (cK, C.m_id) - 838 | - ... - 865 | end; - 866 | checkTyp (I.Dec (cD, cdecl)) tau' - 867 | - 868 | | TypInd tau -> checkTyp cD tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDef (_, _, _)|TypClo (_, _)) - - File "src/core/check.ml", line 880, characters 21-39: - 880 | let extend_mctx cD (x, (I.Decl d), t) = - ^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (x, DeclOpt { _ }, _) - - File "src/core/check.ml", lines 899-916, characters 12-15: - 899 | ............begin match e2 with - 900 | | Box (_, cM, cU) | AnnBox (_, cM, cU) -> - 901 | dprintf - 902 | begin fun p -> - 903 | p.fmt "[useIH] @[<v>check whether compatible IH exists@,\ - ... - 913 | | Option.None -> Total.filter cD cG cIH (loc, E) - 914 | end - 915 | | Hole _ -> Total.drop_arg cIH - 916 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, _)|LetTuple (_, _, _)| - Let (_, _, _)|Case (_, _, _, _)|Impossible (_, _)) - - File "src/core/check.ml", lines 1114-1276, characters 4-45: - 1114 | ....function - 1115 | | Var (loc, x) as e -> - 1116 | let (f,tau', _) = lookup cG x in - 1117 | Typeinfo.Comp.add loc (Typeinfo.Comp.mk_entry cD (tau', C.m_id)) - 1118 | (Format.asprintf "Var %a" (P.fmt_ppr_cmp_exp cD cG P.l0) e); - ... - 1273 | - 1274 | | AnnBox (_, cM, cT) -> - 1275 | checkMetaObj cD cM cT C.m_id; - 1276 | (None, TypBox (getLoc cM, cT), C.m_id) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|LetTuple (_, _, _)|Let (_, _, _)| - Box (_, _, _)|Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)) - - File "src/core/check.ml", lines 1350-1357, characters 7-10: - 1350 | .......begin match (tau, theta) with - 1351 | | (TypArr (_, tau1, tau2), theta) -> - 1352 | checkPattern cD cG pat (tau1, theta); - 1353 | synPatSpine cD cG pat_spine (tau2, theta) - 1354 | | (TypPiBox (_, cdecl, tau), theta) -> - 1355 | let theta' = checkPatAgainstCDecl cD pat (cdecl, theta) in - 1356 | synPatSpine cD cG pat_spine (tau, theta') - 1357 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| - TypCross (_, _)|TypClo (_, _)|TypInd _), - _) - - File "src/core/check.ml", line 1373, characters 53-86: - 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (DeclOpt { _ }, _) - - File "src/core/check.ml", line 1373, characters 30-52: - 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = - ^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| - PatAnn (_, _, _, _)) - - File "src/core/check.ml", lines 1665-1667, characters 4-42: - 1665 | ....let { cD = cD'; cG = cG'; cIH = I.Empty } = h in - 1666 | let (cD, cG) = validate_contexts loc (cD, cD') (cG, cG') in - 1667 | proof mcid cD cG cIH total_decs p ttau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} - - File "src/core/check.ml", lines 1678-1743, characters 4-13: - 1678 | ....match d with - 1679 | | Intros hyp -> - 1680 | let tau = Whnf.cnormCTyp ttau in - 1681 | let (cD', cG', cIH', tau', t) = unroll cD cG cIH tau in - 1682 | dprintf - ... - 1740 | end; - 1741 | proof mcid cD cG cIH total_decs p (tau, Whnf.m_id) - 1742 | end - 1743 | args - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ImpossibleSplit _ - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Lfrecon.cmx -c -impl src/core/lfrecon.ml) - File "src/core/lfrecon.ml", lines 253-262, characters 2-29: - 253 | ..function - 254 | | Apx.LF.BVar _ -> "BVar" - 255 | | Apx.LF.Const _ -> "Const" - 256 | | Apx.LF.MVar _ -> "MVar" - 257 | | Apx.LF.PVar (Apx.LF.Offset _, _) -> "PVar Offset " - 258 | | Apx.LF.PVar (Apx.LF.MInst _, _) -> "PVar PInst " - 259 | | Apx.LF.Proj (head, _) -> "Proj " ^ what_head head - 260 | | Apx.LF.FVar _ -> "FVar" - 261 | | Apx.LF.FMVar _ -> "FMVar" - 262 | | Apx.LF.FPVar _ -> "FPVar" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Hole - - File "src/core/lfrecon.ml", lines 275-276, characters 5-19: - 275 | .....let (None, d) = Context.dctxToHat cPsi in - 276 | Int.LF.Shift d - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Some _, _) - - File "src/core/lfrecon.ml", lines 311-333, characters 8-80: - 311 | ........let CTyp s_cid = mmvar1.typ in - 312 | if d = d' - 313 | then - 314 | begin - 315 | begin match c_var with - ... - 330 | true - 331 | end - 332 | else - 333 | Error.raise_not_implemented "[unify_phat] ctx_var with a full context" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (_, _) - - File "src/core/lfrecon.ml", lines 358-359, characters 9-42: - 358 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid); _ }) = Store.FCVar.get n in - 359 | Store.Cid.Schema.get_schema s_cid - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=CTyp None; _ }) - - File "src/core/lfrecon.ml", lines 352-366, characters 2-92: - 352 | ..match ctxvar with - 353 | | Some (Int.LF.CtxOffset _ as phi) -> - 354 | Store.Cid.Schema.get_schema (Context.lookupCtxVarSchema cD phi) - 355 | | Some (Int.LF.CtxName n) -> - 356 | begin - ... - 363 | - 364 | | Some Int.LF.(CInst ({ typ = CTyp (Some s_cid); _ }, _)) -> - 365 | Store.Cid.Schema.get_schema s_cid - 366 | | None -> Error.raise_violation "No context variable for which we could retrieve a schema" - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (CInst ({typ=CTyp None; _ }, _)) - - File "src/core/lfrecon.ml", lines 372-376, characters 2-44: - 372 | ..function - 373 | | Int.LF.Atom _ -> m - 374 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA) -> - 375 | dprint (fun () -> "eta FMV - add Lam "); - 376 | Apx.LF.Lam (loc, x, addPrefix loc m tA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 385-389, characters 4-62: - 385 | ....function - 386 | | Int.LF.Atom _ -> (k, s) - 387 | | Int.LF.PiTyp (_, tA) -> - 388 | let (k', s') = go (k + 1) s tA in - 389 | (k' - 1, Apx.LF.Dot (Apx.LF.Head (Apx.LF.BVar k'), s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/lfrecon.ml", lines 391-395, characters 2-18: - 391 | ..match tA, s with - 392 | | Int.LF.Atom _, _ -> (k, s) - 393 | | Int.LF.PiTyp _, None -> - 394 | let (k', s') = go k Apx.LF.Id tA in - 395 | (k', Some s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiTyp (_, _), Some _) - - File "src/core/lfrecon.ml", line 399, characters 20-40: - 399 | let etaExpandMV loc (Apx.LF.MVar (x, s)) tA = - ^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Hole|BVar _|Const _|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| - FPVar (_, _)) - - File "src/core/lfrecon.ml", lines 406-410, characters 4-52: - 406 | ....function - 407 | | Int.LF.Atom _ -> (k, tS) - 408 | | Int.LF.PiTyp (_, tA') -> - 409 | let tN = Int.LF.Root (loc, Int.LF.BVar k, Int.LF.Nil, Plicity.explicit) in - 410 | etaExpSpine (k + 1) (Int.LF.App (tN, tS)) tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/lfrecon.ml", lines 414-417, characters 4-54: - 414 | ....match tA with - 415 | | Int.LF.Atom _ -> tM - 416 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> - 417 | Int.LF.Lam (loc, x, etaExpPrefix loc (tM, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 422-424, characters 4-24: - 422 | ....match h with - 423 | | Int.LF.BVar x -> Int.LF.BVar (x + k - 1) - 424 | | Int.LF.FVar _ -> h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 457-461, characters 4-55: - 457 | ....function - 458 | | Int.LF.Atom _ -> (k, tS) - 459 | | Int.LF.PiTyp (_, tA') -> - 460 | let tN = Apx.LF.Root (loc, Apx.LF.BVar k, Apx.LF.Nil) in - 461 | etaExpApxSpine (k + 1) (Apx.LF.App (tN, tS)) tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Sigma _|TClo _) - - File "src/core/lfrecon.ml", lines 464-468, characters 4-57: - 464 | ....match tA with - 465 | | Int.LF.Atom _ -> tM - 466 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> - 467 | dprint (fun () -> "eta - add Lam "); - 468 | Apx.LF.Lam (loc, x, etaExpApxPrefix loc (tM, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 613-614, characters 2-33: - 613 | ..let Int.LF.TypDecl (_, Int.LF.Sigma recA) = tp in - 614 | getProjIndex loc cD cPsi recA k - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 617-630, characters 2-19: - 617 | ..match h with - 618 | | Apx.LF.BVar k -> Apx.LF.BVar (ConvSigma.map conv_list k) - 619 | - 620 | | Apx.LF.Proj (Apx.LF.BVar k, p) -> - 621 | let tp = - ... - 627 | let j = getProjIndexFromType loc cD cPsi tp p in - 628 | dprintf (fun p -> p.fmt "flattenProjPat Proj Case: k = %d j = %d@\n" k j); - 629 | let k' = ConvSigma.map conv_list k - j + 1 in - 630 | Apx.LF.BVar k' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Proj - ((Hole|Const _|MVar (_, _)|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| - FPVar (_, _)), - _) - - File "src/core/lfrecon.ml", lines 637-643, characters 7-41: - 637 | .......function - 638 | | Apx.LF.Id -> Apx.LF.Id - 639 | | Apx.LF.EmptySub -> Apx.LF.EmptySub - 640 | | Apx.LF.Dot (Apx.LF.Head h, s) -> - 641 | let s' = go s in - 642 | let h' = flattenProjPatHead loc cD h conv_list cPsi in - 643 | Apx.LF.Dot (Apx.LF.Head h', s') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dot (Obj _, _) - - File "src/core/lfrecon.ml", lines 679-691, characters 2-38: - 679 | ..match s with - 680 | | Apx.LF.Id -> s - 681 | - 682 | | Apx.LF.EmptySub -> s - 683 | - ... - 688 | Apx.LF.Dot (Apx.LF.Head h, flattenSub s) - 689 | - 690 | | Apx.LF.Dot (Apx.LF.Obj (Apx.LF.Tuple (_, tM)), s) -> - 691 | flattenVarTuple tM (flattenSub s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dot (Obj (Lam (_, _, _)|Root (_, _, _)|LFHole (_, _)|Ann (_, _, _)), _) - - File "src/core/lfrecon.ml", lines 697-698, characters 2-77: - 697 | ..function - 698 | | Apx.LF.Root (_, Apx.LF.BVar k, Apx.LF.Nil) -> Apx.LF.Head (Apx.LF.BVar k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Root (_, BVar k, App (_, _)) - - File "src/core/lfrecon.ml", lines 827-829, characters 5-60: - 827 | .....let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in - 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in - 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (x, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 822-829, characters 2-60: - 822 | ..function - 823 | | Apx.LF.BVar k -> Context.ctxDec cPsi k, Int.LF.BVar k - 824 | | Apx.LF.Proj (h, nj) -> - 825 | let (tp, h') = synHead cD loc cPsi h in - 826 | let j = getProjIndexFromType loc cD cPsi tp nj in - 827 | let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in - 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in - 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Hole|Const _|MVar (_, _)|PVar (_, _)|FVar _|FMVar (_, _)|FPVar (_, _)) - - File "src/core/lfrecon.ml", lines 858-867, characters 5-8: - 858 | .....begin match synHead cD loc cPsi h with - 859 | | (Int.LF.TypDecl (x, tA), h') -> - 860 | let tA' = - 861 | pruningTyp loc cD cPsi (Context.dctxToHat cPsi) - 862 | (tA, S.LF.id) (Int.LF.MShift 0, ss) - 863 | in - 864 | ( Int.LF.DDec (cPhi, Int.LF.TypDecl (x, tA')) - 865 | , Int.LF.Dot (Int.LF.Head h', s') - 866 | ) - 867 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypDeclOpt _, _) - - File "src/core/lfrecon.ml", lines 884-890, characters 2-66: - 884 | ..function - 885 | | Apx.LF.Typ -> Int.LF.Typ - 886 | | Apx.LF.PiKind ((Apx.LF.TypDecl (x, a), depend, plicity), k) -> - 887 | let tA = elTyp Pi (*cD=*)Int.LF.Empty cPsi a in - 888 | let cPsi' = Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) in - 889 | let tK = elKind cD cPsi' k in - 890 | Int.LF.PiKind ((Int.LF.TypDecl (x, tA), depend, plicity), tK) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiKind ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 909-925, characters 2-25: - 909 | ..function - 910 | | Apx.LF.Atom (loc, a, s) -> - 911 | let { Store.Cid.Typ.Entry.kind = tK; implicit_arguments = i; _ } = Store.Cid.Typ.get a in - 912 | let s' = mkShift recT cPsi in - 913 | (* let s' = S.LF.id in *) - ... - 922 | - 923 | | Apx.LF.Sigma typRec -> - 924 | let typRec' = elTypRec recT cD cPsi typRec in - 925 | Int.LF.Sigma typRec' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/lfrecon.ml", lines 977-1023, characters 2-34: - 977 | ..match (m, sA) with - 978 | | (Apx.LF.Lam (loc, x, m), (Int.LF.PiTyp ((Int.LF.TypDecl _ as decl, _, _), tB), s)) -> - 979 | (* cPsi' = cPsi, x:tA *) - 980 | let cPsi' = Int.LF.DDec (cPsi, S.LF.decSub decl s) in - 981 | let tM = elTerm recT cD cPsi' m (tB, S.LF.dot1 s) in - ... - 1020 | | (Apx.LF.LFHole (loc, m_name), tA) -> - 1021 | let id = Holes.allocate () in - 1022 | let name = HoleId.name_of_option m_name in - 1023 | Int.LF.LFHole (loc, id, name) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _), (PiTyp ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfrecon.ml", lines 1081-1091, characters 9-12: - 1081 | .........let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in - 1082 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in - 1083 | begin - 1084 | try - 1085 | Unify.unifyTyp cD cPsi sQ sP; - ... - 1088 | | Unify.Failure msg -> - 1089 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1090 | | _ -> throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1091 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 1213-1280, characters 9-12: - 1213 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.MTyp tQ, cPhi); _ }) = Store.FCVar.get u in - 1214 | dprintf - 1215 | begin fun p -> - 1216 | p.fmt "[elTerm'] @[<v>FMV %a of type %a[%a]@,in cD_d = %a@,and cD = %a@]" - 1217 | Name.pp u - ... - 1277 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) - 1278 | |_ -> - 1279 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) - 1280 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 1476-1500, characters 9-12: - 1476 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp tA, cPhi); _ }) = Store.FCVar.get p in - 1477 | let d = Context.length cD - Context.length cD_d in - 1478 | let (tA, cPhi) = - 1479 | if d = 0 - 1480 | then (tA, cPhi) - ... - 1497 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) - 1498 | | _ -> - 1499 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) - 1500 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 1571-1607, characters 9-12: - 1571 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp ((Int.LF.Sigma typRec) as tA), cPhi); _ }) = - 1572 | Store.FCVar.get p - 1573 | in - 1574 | let d = Context.length cD - Context.length cD_d in - 1575 | let (tA, cPhi) = - ... - 1604 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1605 | | _ -> - 1606 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1607 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, - Decl - {typ=ClTyp (PTyp (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 1808-1813, characters 10-13: - 1808 | ..........begin match S.LF.bvarSub k s'' with - 1809 | | Int.LF.Head (Int.LF.BVar j) -> - 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) - 1811 | | Int.LF.Head (Int.LF.PVar (p, r')) -> - 1812 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r' s''), tS, Plicity.explicit) - 1813 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1806-1817, characters 7-10: - 1806 | .......begin match h with - 1807 | | Int.LF.BVar k -> - 1808 | begin match S.LF.bvarSub k s'' with - 1809 | | Int.LF.Head (Int.LF.BVar j) -> - 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) - ... - 1814 | | Int.LF.PVar (p, r) -> - 1815 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r s''), tS, Plicity.explicit) - 1816 | (* | Int.LF.Proj (Int.LF.PVar (p, r), i) -> Int.LF.Root (loc, Int.LF) *) - 1817 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1857-1879, characters 5-8: - 1857 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = - 1858 | try - 1859 | Context.ctxSigmaDec cPsi x - 1860 | with - 1861 | | _ -> - ... - 1876 | with - 1877 | | Unify.Failure msg -> - 1878 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) - 1879 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 1882-1910, characters 5-8: - 1882 | .....begin - 1883 | match Whnf.mctxPDec cD p with - 1884 | | (_, Int.LF.Sigma recA, cPsi') -> - 1885 | let t' = elSub loc recT cD cPsi t Int.LF.Subst cPsi' in - 1886 | let k = getProjIndex loc cD cPsi recA proj in - ... - 1907 | end - 1908 | | (_, Int.LF.PiTyp _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantPi)) - 1909 | | (_, Int.LF.Atom _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantAtom)) - 1910 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, TClo _, _) - - File "src/core/lfrecon.ml", lines 1941-1951, characters 12-15: - 1941 | ............begin match S.LF.bvarSub y s'' with - 1942 | | Int.LF.Head (Int.LF.BVar x) -> - 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) - 1944 | | Int.LF.Head (Int.LF.PVar (p, r')) -> - 1945 | Int.LF.Root - ... - 1948 | , tS - 1949 | , Plicity.explicit - 1950 | ) - 1951 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Head - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1939-1959, characters 9-12: - 1939 | .........begin match h with - 1940 | | Int.LF.BVar y -> - 1941 | begin match S.LF.bvarSub y s'' with - 1942 | | Int.LF.Head (Int.LF.BVar x) -> - 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) - ... - 1956 | , tS - 1957 | , Plicity.explicit - 1958 | ) - 1959 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)) - - File "src/core/lfrecon.ml", lines 1044-1980, characters 2-25: - 1044 | ..match r with - 1045 | | Apx.LF.Ann (_loc, m, a) -> - 1046 | elTerm' recT cD cPsi m sP - 1047 | - 1048 | | Apx.LF.LFHole (location, m_name) -> - ... - 1977 | - 1978 | | Apx.LF.Root (loc, h, _) -> - 1979 | dprintf (fun p -> p.fmt "[elTerm' **] h = %s@\n" (what_head h)); - 1980 | throw loc CompTypAnn - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|Tuple (_, _)) - - File "src/core/lfrecon.ml", lines 2102-2104, characters 5-65: - 2102 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in - 2103 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in - 2104 | (Int.LF.Root (loc, Int.LF.BVar x, tS, Plicity.explicit), sQ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 2159-2169, characters 5-82: - 2159 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = Context.ctxSigmaDec cPsi x in - 2160 | let k = getProjIndex loc cD cPsi recA proj in - 2161 | let sA = - 2162 | try - 2163 | Int.LF.getType (Int.LF.BVar x) (recA, S.LF.id) k - ... - 2166 | throw loc (ProjNotValid (cD, cPsi, k, (Int.LF.Sigma recA, S.LF.id))) - 2167 | in - 2168 | let (tS, sQ) = elSpine loc recT cD cPsi spine sA in - 2169 | (Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit), sQ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) - - File "src/core/lfrecon.ml", lines 2276-2310, characters 11-14: - 2276 | ...........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.STyp (cl0, cPhi0), cPsi0); _ }) = - 2277 | Store.FCVar.get s_name - 2278 | in - 2279 | svar_le (cl0, cl); - 2280 | let d = Context.length cD - Context.length cD_d in - ... - 2307 | with - 2308 | | Unify.Failure msg -> - 2309 | throw loc (IllTypedSubVar (cD, cPsi, cPhi)) - 2310 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) - - File "src/core/lfrecon.ml", lines 2514-2516, characters 9-40: - 2514 | .........let Int.LF.TypDecl (_, tA') = Context.ctxDec (Whnf.cnormDCtx (cPsi, Whnf.m_id)) x in - 2515 | dprint (fun () -> "[elHead] done"); - 2516 | (Int.LF.BVar x, (tA', S.LF.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 2574-2576, characters 9-59: - 2574 | .........let (offset, Int.LF.ClTyp (Int.LF.MTyp tP, cPhi)) = Whnf.mctxMVarPos cD u in - 2575 | let s' = elSub loc recT cD cPsi s Int.LF.Subst cPhi in - 2576 | (Int.LF.MVar (Int.LF.Offset offset, s'), (tP, s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (offset, ClTyp ((PTyp _|STyp (_, _)), _)) - - File "src/core/lfrecon.ml", lines 2583-2585, characters 5-41: - 2583 | .....let (offset, Int.LF.ClTyp (Int.LF.PTyp tA, cPhi)) = Whnf.mctxMVarPos cD p in - 2584 | let s' = elSub loc recT cD cPsi s cl cPhi in - 2585 | (Int.LF.PVar (offset, s'), (tA, s')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (offset, ClTyp ((MTyp _|STyp (_, _)), _)) - - File "src/core/lfrecon.ml", lines 2643-2674, characters 4-36: - 2643 | ....match (sA, recT) with - 2644 | | ((Int.LF.PiTyp ((Int.LF.TypDecl (n, tA), _, _), tB), s), Pi) -> - 2645 | (* cPsi' |- tA <= typ - 2646 | * cPsi |- s <= cPsi' cPsi |- tN <= [s]A - 2647 | * - ... - 2671 | in - 2672 | - 2673 | let (spine', sP) = elSpineI loc recT cD cPsi spine (i - 1) (tB, Int.LF.Dot (Int.LF.Obj tN, s)) in - 2674 | (Int.LF.App (tN, spine'), sP) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((PiTyp ((TypDeclOpt _, _, _), _), _), _) - - File "src/core/lfrecon.ml", lines 2705-2708, characters 4-25: - 2705 | ....function - 2706 | | Int.LF.Atom _ -> 0 - 2707 | | Int.LF.PiTyp (_, tB2) -> 1 + typLength tB2 - 2708 | | Int.LF.Sigma _ -> 0........................................................ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/lfrecon.ml", lines 2725-2732, characters 4-32: - 2725 | ....match (spine, Whnf.whnfTyp sA) with - 2726 | | (Apx.LF.Nil, sP) -> - 2727 | (Int.LF.Nil, sP) (* errors are postponed to reconstruction phase *) - 2728 | - 2729 | | (Apx.LF.App (m, spine), (Int.LF.PiTyp ((Int.LF.TypDecl (_, tA), _, _), tB), s)) -> - 2730 | let tM = elTerm recT cD cPsi m (tA, s) in - 2731 | let (tS, sP) = elSpine loc recT cD cPsi spine (tB, Int.LF.Dot (Int.LF.Obj tM, s)) in - 2732 | (Int.LF.App (tM, tS), sP) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (App (m, spine), (PiTyp ((TypDeclOpt _, _, _), _), _)) - - File "src/core/lfrecon.ml", lines 2741-2760, characters 4-30: - 2741 | ....match (sK, recT) with - 2742 | | ((Int.LF.PiKind ((Int.LF.TypDecl (n, tA), _, _), tK), s), Pi) -> - 2743 | (* let sshift = mkShift recT cPsi in *) - 2744 | (* let tN = Whnf.etaExpandMV Int.LF.Null (tA, s) sshift in *) - 2745 | let tN = Whnf.etaExpandMV cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in - ... - 2757 | Whnf.etaExpandMMV Location.ghost cD cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive - 2758 | in - 2759 | let spine' = elKSpineI loc recT cD cPsi spine (i - 1) (tK, Int.LF.Dot (Int.LF.Obj tN, s)) in - 2760 | Int.LF.App (tN, spine') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ((PiKind ((TypDeclOpt _, _, _), _), _), _) - - File "src/core/lfrecon.ml", lines 2834-2863, characters 5-32: - 2834 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in - 2835 | (* cPsi |- tA : type - 2836 | * cPsi |- s' : cPsi' - 2837 | *) - 2838 | let ss = S.LF.invert s' in - ... - 2860 | in - 2861 | - 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in - 2863 | (Int.LF.App (tN', tS), tB') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/lfrecon.ml", lines 2824-2863, characters 2-32: - 2824 | ..match (spine, sP) with - 2825 | | (Apx.LF.Nil, _) -> - 2826 | let ss = S.LF.invert s' in - 2827 | let tQ = pruningTyp Location.ghost cD cPsi (Context.dctxToHat cPsi) sP (Int.LF.MShift 0, ss) in - 2828 | (* PROBLEM: [s'][ss] [s]P is not really P; in fact [ss][s]P may not exist; - ... - 2860 | in - 2861 | - 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in - 2863 | (Int.LF.App (tN', tS), tB') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (App (Root (loc, BVar x, App (_, _)), _), _) - - File "src/core/lfrecon.ml", lines 2943-2998, characters 5-8: - 2943 | .....begin match instantiation.contents with - 2944 | | None -> - 2945 | begin - 2946 | try - 2947 | let tA = Store.FVar.get x in - ... - 2995 | | _ -> - 2996 | throw loc (UnboundName x) - 2997 | end - 2998 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (IHead _|ISub _|ICtx _) - - File "src/core/lfrecon.ml", lines 2939-2998, characters 2-8: - 2939 | ..function - 2940 | | [] -> () - 2941 | | ((_, Apx.LF.(Root (loc, FVar x, spine)), - 2942 | Int.LF.(Inst {instantiation; typ = ClTyp (MTyp tP, cPsi); _})) :: cnstrs) -> - 2943 | begin match instantiation.contents with - ... - 2995 | | _ -> - 2996 | throw loc (UnboundName x) - 2997 | end - 2998 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Root (loc, FVar x, spine), - Inst {instantiation=instantiation; typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }):: - _ - - File "src/core/lfrecon.ml", lines 3020-3025, characters 7-99: - 3020 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = - 3021 | lookup_fcvar loc u - 3022 | in - 3023 | let cPhi = weakenAppropriately cD_d cPhi in - 3024 | let s'' = elSub loc cPsi s cPhi in - 3025 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FMVar (u, s''), Nil, Plicity.explicit)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 3027-3033, characters 7-98: - 3027 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (PTyp tA, cPhi); _ })) = - 3028 | lookup_fcvar loc x - 3029 | in - 3030 | let cPhi = weakenAppropriately cD_d cPhi in - 3031 | let s'' = elSub loc cPsi s cPhi in - 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in - 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) - - File "src/core/lfrecon.ml", lines 3017-3033, characters 4-98: - 3017 | ....match tM, Int.LF.(v.typ) with - 3018 | | Apx.LF.(Root (loc, FMVar (u, s), _nil_spine)), Int.LF.(ClTyp (MTyp _, cPsi)) -> - 3019 | assert (match _nil_spine with Apx.LF.Nil -> true | _ -> false); - 3020 | let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = - 3021 | lookup_fcvar loc u - ... - 3030 | let cPhi = weakenAppropriately cD_d cPhi in - 3031 | let s'' = elSub loc cPsi s cPhi in - 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in - 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Root (_, FMVar (u, s), _nil_spine), ClTyp ((PTyp _|STyp (_, _)), _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Reconstruct.cmx -c -impl src/core/reconstruct.ml) - File "src/core/reconstruct.ml", lines 55-179, characters 20-41: - 55 | ....................function - 56 | | NotImplemented f -> - 57 | Format.dprintf "@[<v 2>Not implemented:@,@[%a@]@]" - 58 | f () - 59 | | MCtxIllformed cD -> - ... - 176 | @, @[%a@]\ - 177 | @]" - 178 | P.(fmt_ppr_cmp_meta_obj cD l0) mC_p - 179 | P.(fmt_ppr_cmp_meta_obj cD l0) mC - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - IllegalSubstMatch - - File "src/core/reconstruct.ml", lines 217-218, characters 2-45: - 217 | ..function - 218 | | Int.LF.Decl d -> Name.mk_some_name d.name - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/reconstruct.ml", lines 258-267, characters 4-26: - 258 | ....match tau, n with - 259 | | _, 0 -> 0 - 260 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; inductivity = Inductivity.Inductive; _ }, tau), n -> - 261 | Error.raise_violation (Format.asprintf "[%s] impossible LF.Inductive" __FUNCTION__) - 262 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Implicit; _ }, tau), n -> - 263 | 1 + skip tau n (* implicits are free *) - 264 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Explicit; _ }, tau), n -> - 265 | 1 + skip tau (n - 1) (* explicits pi-types cost 1 *) - 266 | | I.TypArr (_, _, tau), n -> - 267 | 1 + skip tau (n - 1).............................. - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypPiBox (_, DeclOpt _, _), 1) - - File "src/core/reconstruct.ml", lines 292-298, characters 9-92: - 292 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid'); _ }) = Store.FCVar.get psi in - 293 | if Id.cid_schema_equal s_cid s_cid' - 294 | then Int.LF.CtxVar (Int.LF.CtxName psi) - 295 | else - 296 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get s_cid in - 297 | let c_var' = Int.LF.CtxName psi in - 298 | Check.LF.(CtxVarMismatch (cD, c_var', name, schema) |> throw (Name.location psi)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_, Decl {typ=CTyp None; _ }) - - File "src/core/reconstruct.ml", lines 343-361, characters 7-10: - 343 | .......let Int.LF.CTyp (Some s_cid) = Int.LF.(v.typ) in - 344 | begin - 345 | let cPsi = elDCtxAgainstSchema loc Lfrecon.Pibox cD cPsi s_cid in - 346 | Unify.instantiateCtxVar (Int.LF.(v.instantiation), cPsi); - 347 | match Context.ctxVar cPsi with - ... - 358 | } - 359 | ) - 360 | | _ -> () - 361 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTyp None - - File "src/core/reconstruct.ml", lines 396-400, characters 2-23: - 396 | ..match cG, k with - 397 | | Int.LF.Dec (_cG', Int.Comp.CTypDecl (_, tau, _)), 1 -> - 398 | Whnf.cnormCTyp (tau, Whnf.m_id) - 399 | | Int.LF.Dec (cG', Int.Comp.CTypDecl (_, _tau, _)), k -> - 400 | lookup cG' (k - 1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dec (cG', CTypDeclOpt _), _) - - File "src/core/reconstruct.ml", lines 410-416, characters 2-32: - 410 | ..function - 411 | | Apx.LF.Empty -> Int.LF.Empty - 412 | | Apx.LF.Dec (ctx, Apx.LF.TypDecl (name, typ)) -> - 413 | let ctx' = elTypDeclCtx cD ctx in - 414 | let tA = Lfrecon.elTyp Lfrecon.Pi cD (Context.projectCtxIntoDctx ctx') typ in - 415 | let typDecl' = Int.LF.TypDecl (name, tA) in - 416 | Int.LF.Dec (ctx', typDecl') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (ctx, TypDeclOpt _) - - File "src/core/reconstruct.ml", line 459, characters 20-52: - 459 | let elCDecl recT cD (Apx.LF.Decl (u, ctyp, plicity)) = - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt _ - - File "src/core/reconstruct.ml", lines 519-557, characters 4-26: - 519 | ....function - 520 | | (Int.LF.Typ, _s) -> - 521 | Int.LF.Nil - 522 | - 523 | | (Int.LF.(PiKind ((TypDecl (u, tA1), depend, plicity), kK), s)) -> - ... - 554 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp (tA1, s)) - 555 | end; - 556 | let tS = genSpine (kK, Int.LF.Dot (Int.LF.Obj tR, s)) in - 557 | Int.LF.App (tR, tS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind ((TypDeclOpt _, _, _), _), _) - - File "src/core/reconstruct.ml", lines 563-575, characters 2-8: - 563 | ..function - 564 | | Int.LF.Atom (_, a, _) -> - 565 | mgAtomicTyp cD cPsi a (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind - 566 | - 567 | | Int.LF.Sigma trec -> - ... - 572 | Int.LF.PiTyp - 573 | ( (tdecl', depend, plicity) - 574 | , mgTyp cD (Int.LF.DDec (cPsi, tdecl')) tA - 575 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TClo _ - - File "src/core/reconstruct.ml", lines 578-580, characters 2-41: - 578 | ..function - 579 | | Int.LF.TypDecl (x, tA) -> - 580 | Int.LF.TypDecl (x, mgTyp cD cPsi tA) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypDeclOpt _ - - File "src/core/reconstruct.ml", lines 637-640, characters 5-18: - 637 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = - 638 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) - 639 | in - 640 | Int.LF.PObj h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Root (_, h, (App (_, _)|SClo (_, _)), _) - - File "src/core/reconstruct.ml", lines 647-650, characters 5-18: - 647 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = - 648 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) - 649 | in - 650 | Int.LF.PObj h - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Root (_, h, (App (_, _)|SClo (_, _)), _) - - File "src/core/reconstruct.ml", lines 711-727, characters 2-104: - 711 | ..match (s, cKt) with - 712 | | (Apx.Comp.MetaNil, (Int.Comp.Ctype _, _)) -> - 713 | Int.Comp.MetaNil - 714 | - 715 | | (Apx.Comp.MetaNil, (Int.Comp.PiKind (_, cdecl, _cK), theta)) -> - ... - 724 | - 725 | | (Apx.Comp.MetaApp (m, s), (Int.Comp.PiKind (_, Int.LF.Decl { typ = ctyp; _ }, cK), theta)) -> - 726 | let (mO, t') = elMetaObjCTyp loc cD m theta ctyp in - 727 | Int.Comp.MetaApp(mO, Whnf.cnormMTyp (ctyp, theta), elMetaSpine loc cD s (cK, t'), Plicity.explicit) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (MetaApp (_, _), (PiKind (_, DeclOpt _, _), _)) - - File "src/core/reconstruct.ml", lines 798-803, characters 4-65: - 798 | ....function - 799 | | (Int.Comp.Ctype _, _t) -> Int.Comp.MetaNil - 800 | | (Int.Comp.PiKind (loc', Int.LF.Decl { name = u; typ = cU; plicity; inductivity }, cK), t) -> - 801 | let (mO, t') = Whnf.dotMMVar loc cD t (u, cU, plicity, inductivity) in - 802 | let mS = genMetaSpine (cK, t') in - 803 | Int.Comp.MetaApp (mO, Whnf.cnormMTyp (cU, t), mS, plicity) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PiKind (loc', DeclOpt _, _), _) - - File "src/core/reconstruct.ml", lines 830-842, characters 2-49: - 830 | ..match cPsi with - 831 | | Int.LF.CtxVar (Int.LF.CtxOffset psi_var) -> - 832 | let (n, sW) = Whnf.mctxCDec cD psi_var in - 833 | let v = - 834 | let open Int.LF in - ... - 839 | | Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) -> - 840 | let cPsi' = mgCtx cD' (cD, cPsi) in - 841 | let tA' = mgTyp cD' cPsi' tA in - 842 | Int.LF.DDec (cPsi', Int.LF.TypDecl (x, tA')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/reconstruct.ml", lines 921-939, characters 7-54: - 921 | .......let Int.Comp.TypBox (_, mT) = tau_p' in - 922 | dprintf - 923 | begin fun p -> - 924 | p.fmt "[synPatRefine] @[<v>unifying scrutinee and pattern:\ - 925 | @,mC = @[%a@]\ - ... - 936 | (mT, Whnf.m_id) - 937 | with - 938 | | Unify.Failure msg -> - 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| - TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) - - File "src/core/reconstruct.ml", lines 916-939, characters 4-54: - 916 | ....match caseT with - 917 | | DataObj -> () (* not dependent pattern matching; nothing to do *) - 918 | | IndexObj (Int.Comp.(PatMetaObj (_, mC_p) | PatAnn (_, PatMetaObj (_, mC_p), _, _)), mC) -> - 919 | let mC_p = Whnf.cnormMetaObj (mC_p, Whnf.m_id) in - 920 | (* tau_p' _has_ to be a box type if caseT is an IndexObj *) - ... - 936 | (mT, Whnf.m_id) - 937 | with - 938 | | Unify.Failure msg -> - 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - IndexObj - (PatAnn - (_, - (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, _)| - PatAnn (_, _, _, _)), _, _), - _) - - File "src/core/reconstruct.ml", lines 1369-1376, characters 7-22: - 1369 | .......match id with - 1370 | | None -> true - 1371 | | Some Apx.LF.Id -> true - 1372 | | Some Apx.LF.EmptySub -> - 1373 | let (_, cPsi, _, cPhi) = Whnf.mctxSDec cD k in - 1374 | match cPhi, cPsi with - 1375 | | Int.LF.Null, Int.LF.Null -> true - 1376 | | _ -> false - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Some (Dot (_, _)|SVar (_, _)|FSVar (_, _)) - - File "src/core/reconstruct.ml", lines 1393-1416, characters 6-9: - 1393 | ......let Apx.LF.MInst (Int.LF.SObj s0, Int.LF.ClTyp (Int.LF.STyp (cl, cPsi), cPhi)) = s in - 1394 | let cPhi2 = Lfrecon.elDCtx Lfrecon.Pibox cD phi2 in - 1395 | let s' = Lfrecon.elSub loc Lfrecon.Pibox cD cPhi2 s' cl cPhi in - 1396 | let s0' = Substitution.LF.comp s0 s' in - 1397 | begin match s0' with - ... - 1413 | else - 1414 | throw loc IllegalSubstMatch - 1415 | | _ -> throw loc IllegalSubstMatch - 1416 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MInst (SObj s0, ClTyp ((MTyp _|PTyp _), _)) - - File "src/core/reconstruct.ml", lines 1421-1442, characters 5-8: - 1421 | .....begin - 1422 | match cpsi with - 1423 | | Apx.LF.CtxVar (ctxvar) -> - 1424 | let c_var = Lfrecon.elCtxVar ctxvar in - 1425 | let cM = (loc', Int.LF.CObj (Int.LF.CtxVar c_var)) in - ... - 1439 | end - 1440 | |> throw loc - 1441 | end - 1442 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Null|CtxHole|DDec (_, _)) - - File "src/core/reconstruct.ml", lines 1194-1458, characters 2-6: - 1194 | ..match i with - 1195 | | Apx.Comp.Var (loc, offset) -> - 1196 | let tau = lookup cG offset in - 1197 | dprintf - 1198 | begin fun p -> - ... - 1455 | , ( Int.Comp.TypCross (loc, ttaus') - 1456 | , C.m_id - 1457 | ) - 1458 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Box - (_, (_, ClObj (_, Dot (Head h, (Id|Dot (_, _)|SVar (_, _)|FSVar (_, _)))))) - - File "src/core/reconstruct.ml", lines 1524-1600, characters 2-8: - 1524 | ..match (pat, ttau) with - 1525 | | (Apx.Comp.PatVar (loc, name, x), (tau, theta)) -> - 1526 | let tau' = Whnf.cnormCTyp (tau, theta) in - 1527 | dprintf - 1528 | begin fun p -> - ... - 1597 | | Unify.Failure msg -> - 1598 | dprint (fun () -> "Unify Error: " ^ msg); - 1599 | raise (Check.Comp.Error (loc, Check.Comp.SynMismatch (cD, ttau, ttau'))) - 1600 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatFVar (_, _), _) - - File "src/core/reconstruct.ml", lines 1603-1613, characters 2-57: - 1603 | ..function - 1604 | | Apx.Comp.PatAnn (loc, pat, tau) -> - 1605 | let tau' = elCompTyp cD tau in - 1606 | let (cG', pat') = elPatChk cD cG pat (tau', Whnf.m_id) in - 1607 | (cG', Int.Comp.PatAnn (loc, pat', tau', Plicity.explicit), (tau', Whnf.m_id)) - ... - 1610 | let { Store.Cid.CompConst.Entry.typ = tau; _ } = Store.Cid.CompConst.get c in - 1611 | dprintf (fun p -> p.fmt "[elPat] PatConst = %s@\n" (R.render_cid_comp_const c)); - 1612 | let (cG1, pat_spine', ttau') = elPatSpine cD cG pat_spine (tau, Whnf.m_id) in - 1613 | (cG1, Int.Comp.PatConst (loc, c, pat_spine'), ttau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PatMetaObj (_, _)|PatFVar (_, _)|PatVar (_, _, _)|PatTuple (_, _)) - - File "src/core/reconstruct.ml", lines 1690-1733, characters 5-8: - 1690 | .....begin match ttau with - 1691 | | (Int.Comp.TypCobase (_, _, _), _) -> - 1692 | let { Store.Cid.CompDest.Entry.name - 1693 | ; mctx = cD' - 1694 | ; obs_type = tau0 - ... - 1730 | let (cG', pat_spine', ttau2) = elPatSpine cD cG pat_spine ttau' in - 1731 | (cG', Int.Comp.PatApp (loc, pat', pat_spine'), ttau2) - 1732 | (* | _ -> raise (Error (loc, TypMismatch (cD, ttau, (tau1, Whnf.m_id)))) *) - 1733 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypPiBox (_, Decl {name=u; typ=cU; plicity=Explicit; _ }, _), _) - - File "src/core/reconstruct.ml", lines 1749-1756, characters 5-68: - 1749 | .....let Int.Comp.TypBox (_, Int.LF.ClTyp (Int.LF.MTyp _tQ, cPsi_s)) = tau_s in - 1750 | let cPsi = inferCtxSchema loc (cD_s, cPsi_s) (cD, psi) in - 1751 | let tP = Lfrecon.elTyp (Lfrecon.Pibox) cD cPsi a in - 1752 | let tau' = Int.Comp.TypBox(loc', Int.LF.ClTyp (Int.LF.MTyp tP, cPsi)) in - 1753 | let ttau' = (tau', Whnf.m_id) in - 1754 | let (cG', pat') = elPatChk cD Int.LF.Empty pat' ttau' in - 1755 | (* Return annotated pattern? Int.Comp.PatAnn (l, pat', tau') *) - 1756 | (cG', Int.Comp.PatAnn (l, pat', tau', Plicity.explicit), ttau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypBox (_, ClTyp ((PTyp _|STyp (_, _)), _)) - - File "src/core/reconstruct.ml", lines 1784-1801, characters 10-13: - 1784 | ..........begin match mT with - 1785 | | Int.LF.(MTyp (Atom _ | Sigma _ as tA))-> - 1786 | let cPsi' = inferCtxSchema loc (cD_s, cPsi) (cD, psi) in - 1787 | let tP' = mgTyp cD cPsi' tA in - 1788 | (loc', Int.LF.ClTyp (Int.LF.MTyp tP', cPsi')) - ... - 1798 | fixParamTyp in check.ml, and it is only used for - 1799 | coverage checking. *) - 1800 | Error.raise_violation "[recPatObj'] scrutinee PTyp should be impossible" - 1801 | end - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MTyp (TClo _) - - File "src/core/reconstruct.ml", lines 2084-2106, characters 2-5: - 2084 | ..let { I.cD = cD'; cG = cG'; cIH = Int.LF.Empty } as h' = - 2085 | elHypotheses h - 2086 | in - 2087 | dprintf - 2088 | begin fun p -> - ... - 2103 | ( loc - 2104 | , h' - 2105 | , elProof cD cG label p ttau - 2106 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} - - File "src/core/reconstruct.ml", lines 2288-2301, characters 11-29: - 2288 | ...........match k, tA' with - 2289 | | Some k, Int.LF.Sigma tRec -> - 2290 | (* Compute the type of the kth projection of tRec. *) - 2291 | Int.LF.getType h (tRec, LF.id) k - 2292 | |> Whnf.normTyp - ... - 2298 | A projected case #n.k is required. - 2299 | *) - 2300 | assert false - 2301 | | None, tA' -> tA' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Some k, (Atom (_, _, _)|PiTyp (_, _)|TClo _)) - - File "src/core/reconstruct.ml", lines 2339-2420, characters 7-56: - 2339 | .......let Int.LF.MTyp tP = cU in - 2340 | let (cD', (cPsi', tR_p, tA_p), t) = - 2341 | match Coverage.genObj (cD, cPsi, tP) (Int.LF.Const cid, tA, k) with - 2342 | | None -> assert false - 2343 | (* FIXME: throw an appropriate error - ... - 2417 | cD_b |- [t o t']tau <= type - 2418 | *) - 2419 | in - 2420 | I.SplitBranch (l', (Int.LF.Empty, pat), t', hyp') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PTyp _|STyp (_, _)) - - File "src/core/reconstruct.ml", lines 2428-2463, characters 7-57: - 2428 | .......let Int.LF.MTyp tA = cU in - 2429 | let (cD', (cPsi', tM, sA), t) = - 2430 | match Coverage.genBVar (cD, cPsi, tA) 1 with - 2431 | | [x] -> x - 2432 | | _ -> - ... - 2460 | let l' = `bvar in - 2461 | let pb' = I.SubgoalPath.(append pb (build_meta_split i l')) in - 2462 | let hyp' = elHypothetical cD_b cG_b pb' hyp ttau_b in - 2463 | I.SplitBranch (l', (Int.LF.Empty, pat'), t', hyp') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (PTyp _|STyp (_, _)) - - File "src/core/reconstruct.ml", lines 2545-2547, characters 5-44: - 2545 | .....let Some w = w in - 2546 | let ctx_branches = List.map (make_ctx_branch w) bs in - 2547 | I.ContextSplit (i, tau_i, ctx_branches) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/reconstruct.ml", lines 2562-2568, characters 5-17: - 2562 | .....let (cD', cG', Int.LF.Empty, tau', _) = - 2563 | Check.Comp.unroll cD cG Int.LF.Empty (Whnf.cnormCTyp ttau) - 2564 | in - 2565 | let hyp = - 2566 | elHypothetical cD' cG' I.SubgoalPath.(append pb build_intros) hyp (tau', Whnf.m_id) - 2567 | in - 2568 | I.Intros hyp - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD', cG', Dec (_, WfRec (_, _, _)), _, _) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Logic.cmx -c -impl src/core/logic.ml) - File "src/core/logic.ml", lines 190-203, characters 4-36: - 190 | ....match tN with - 191 | | LF.Lam (l, n, tN') -> - 192 | begin - 193 | incr lR; - 194 | let tM = LF.Lam (l, n, shiftNormal tN' k) in - ... - 200 | | LF.Clo (tN, s) -> - 201 | LF.Clo (shiftNormal tN k, s) - 202 | | LF.Tuple (l, tP) -> - 203 | LF.Tuple (l, shiftTuple tP k) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - LFHole (_, _, _) - - File "src/core/logic.ml", lines 241-251, characters 4-8: - 241 | ....match tA with - 242 | | LF.PiTyp ((tD, _, Plicity.Implicit), tA') -> - 243 | typToClause' (LF.DDec (eV, tD)) cG tA' (cS, dS, dR) - 244 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> - 245 | typToClause' eV (Conjunct (cG, typToGoal tA (cS, dS, dR))) - ... - 248 | { tHead = (Shift.shiftAtom tA (-cS, -dS, dR)) - 249 | ; eVars = eV - 250 | ; subGoals = cG - 251 | } - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, Explicit), _) - - File "src/core/logic.ml", lines 297-306, characters 4-30: - 297 | ....match tA with - 298 | | LF.PiTyp ((tdec, _, Plicity.Implicit), tA') -> - 299 | All (tdec, typToGoal tA' (cS, dS, dR + 1)) - 300 | | LF.PiTyp ((LF.TypDecl (x, tA) as tdec, _, Plicity.Explicit), tB) -> - 301 | Impl ((typToRes tA (cS, dS, dR), tdec), typToGoal tB (cS, dS, dR + 1)) - 302 | | LF.Atom _ -> - 303 | Atom (Shift.shiftAtom tA (-cS, -dS, dR)) - 304 | | LF.TClo (tA, s) -> - 305 | dprintf begin fun p -> p.fmt "[typToGoal] TClo" end; - 306 | raise NotImplementedYet - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, Explicit), _) - - File "src/core/logic.ml", lines 309-315, characters 4-47: - 309 | ....match tM with - 310 | | LF.PiTyp ((tD, _, Plicity.Implicit), tM') -> - 311 | Exists (tD, typToRes tM' (cS, dS, dR + 1)) - 312 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> - 313 | And (typToGoal tA (cS, dS, dR), typToRes tB (cS + 1, dS + 1, dR + 1)) - 314 | | LF.Atom _ -> - 315 | Head (Shift.shiftAtom tM (-cS, -dS, dR)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, Explicit), _) - - File "src/core/logic.ml", lines 326-348, characters 4-34: - 326 | ....match tau with - 327 | | Comp.TypBox (_loc, LF.ClTyp (LF.MTyp tA, cPsi)) -> - 328 | (* Invariant: tA will always be atomic in our implementation *) - 329 | Box (cPsi, Atom tA, Some M) - 330 | (* possibly needs to have PiBox variables shifted; - ... - 345 | let typ_dec = Comp.CTypDecl (name, tau1 , true) in - 346 | Implies ((cr1, typ_dec), cg2) - 347 | | Comp.TypBase (_, comp_cid, s) -> - 348 | Atomic (comp_cid, msToAs s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - TypBox (_, CTyp _) - - File "src/core/logic.ml", lines 351-358, characters 4-47: - 351 | ....match tau with - 352 | | Comp.TypBox (_) | Comp.TypBase(_) -> - 353 | Base tau - 354 | | Comp.TypArr (_, tau1, tau2) -> - 355 | CAnd (comptypToCompGoal tau1, comptypToCompRes tau2) - 356 | | Comp.TypPiBox (_, typ_dec, tau') -> - 357 | CExists (typ_dec, comptypToCompRes tau') - 358 | | Comp.TypInd tau' -> comptypToCompRes tau' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) - - File "src/core/logic.ml", lines 394-402, characters 4-30: - 394 | ....match box with - 395 | | Box (cPsi, Atom tA, Some M) -> - 396 | let loc = Location.ghost in - 397 | let ctyp = LF.ClTyp (LF.MTyp tA, cPsi) in - 398 | Comp.TypBox (loc, ctyp) - 399 | | Box (cPsi, Atom tA, Some P) -> - 400 | let loc = Location.ghost in - 401 | let ctyp = LF.ClTyp (LF.PTyp tA, cPsi) in - 402 | Comp.TypBox (loc, ctyp) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Box (_, Atom _, None) - - File "src/core/logic.ml", lines 412-416, characters 4-34: - 412 | ....match atomic with - 413 | | Atomic (cid, aS) -> - 414 | let loc = Location.ghost in - 415 | let mS = asToMs aS in - 416 | Comp.TypBase (loc, cid, mS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Box (_, _, _)|Implies ((_, _), _)|Forall (_, _)) - - File "src/core/logic.ml", lines 434-443, characters 4-10: - 434 | ....match tA with - 435 | | LF.Atom _ -> - 436 | let u = LF.Inst (Whnf.newMMVar None (cD, cPsi, LF.TClo (tA, s)) Plicity.implicit Inductivity.not_inductive) in - 437 | LF.Root (Location.ghost, LF.MVar (u, S.id), LF.Nil, Plicity.explicit) - 438 | | LF.PiTyp ((LF.TypDecl (x, tA) as tD, _, _), tB) -> - 439 | LF.Lam - 440 | ( Location.ghost - 441 | , x - 442 | , etaExpand cD (LF.DDec (cPsi, S.decSub tD s)) (tB, S.dot1 s) - 443 | ) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - PiTyp ((TypDeclOpt _, _, _), _) - - File "src/core/logic.ml", lines 462-470, characters 4-68: - 462 | ....match eV with - 463 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> - 464 | let (s', fS') = dctxToSub cD cPsi (eV', s) fS in - 465 | let tM' = etaExpand cD cPsi (tA, s') in - 466 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) - 467 | | LF.Null -> (s, fS) - 468 | | LF.CtxVar _ -> - 469 | invalid_arg - 470 | "Logic.Convert.dctxToSub: Match conflict with LF.CtxVar _." - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (eV', TypDeclOpt _) - - File "src/core/logic.ml", lines 475-481, characters 4-28: - 475 | ....match eV with - 476 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> - 477 | let (s', fS') = dctxToSub' cD cPsi (eV', s) fS in - 478 | let tM' = etaExpand cD cPsi (tA, s') in - 479 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) - 480 | | LF.Null -> (s, fS) - 481 | | LF.CtxVar _ -> (s, fS) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DDec (eV', TypDeclOpt _) - - File "src/core/logic.ml", lines 500-501, characters 6-52: - 500 | ......match lst with - 501 | | (cPsi, k) :: lst' -> (shift lst' (-1), cPsi) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 510-513, characters 6-20: - 510 | ......match dctx with - 511 | | LF.DDec (dctx', _) -> find_ctxvar_offset dctx' - 512 | | LF.CtxVar (LF.CtxOffset k) -> k - 513 | | LF.Null -> 0 - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CtxVar (CtxName _|CInst _) - - File "src/core/logic.ml", lines 697-709, characters 9-47: - 697 | .........(match mtyp with - 698 | | LF.ClTyp (LF.MTyp _, _) -> - 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in - 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in - 701 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) - ... - 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) - 707 | ((x, (loc, mfront)) :: xs) - 708 | | LF.CTyp cid_opt -> - 709 | comptypToMQuery' (tau', i-1) ms xs) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/core/logic.ml", lines 696-709, characters 9-47: - 696 | .........let LF.Decl { name = x; typ = mtyp; plicity; inductivity } = mdecl in - 697 | (match mtyp with - 698 | | LF.ClTyp (LF.MTyp _, _) -> - 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in - 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in - ... - 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) - 707 | ((x, (loc, mfront)) :: xs) - 708 | | LF.CTyp cid_opt -> - 709 | comptypToMQuery' (tau', i-1) ms xs) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - DeclOpt { _ } - - File "src/core/logic.ml", lines 1084-1094, characters 4-72: - 1084 | ....match r with - 1085 | | Head tH -> - 1086 | fmt_ppr_typ cD cPsi ppf (tH, s) - 1087 | | And (g, r') -> - 1088 | fprintf ppf "%a -> %a" - ... - 1091 | | Exists (LF.TypDecl (_, _tA) as tD, r') -> - 1092 | fprintf ppf "(∃%a. %a)" - 1093 | (fmt_ppr_decl cD cPsi) (tD, s) - 1094 | (fmt_ppr_res cD (LF.DDec (cPsi, S.decSub tD s))) (r', S.dot1 s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Exists (TypDeclOpt _, _) - - File "src/core/logic.ml", lines 1305-1332, characters 4-19: - 1305 | ....match s with - 1306 | | LF.Shift _ -> true - 1307 | | LF.Dot (LF.Head (((LF.MMVar ((mmvar, ms'), s)) as hd)), s') -> - 1308 | if uninstantiated hd then false - 1309 | else check_sub s' - ... - 1329 | if uninstantiated hd then false - 1330 | else check_sub s' - 1331 | | LF.Dot (_, s') -> - 1332 | check_sub s' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/logic.ml", lines 1337-1339, characters 6-48: - 1337 | ......match cD with - 1338 | | LF.Dec (_, LF.Decl d) when k = 1 -> d.plicity - 1339 | | LF.Dec (cD', _) -> get_plicity cD' (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/logic.ml", lines 1394-1412, characters 4-30: - 1394 | ....match g with - 1395 | | Atom tA -> - 1396 | matchAtom dPool cD (cPsi, k) (tA, s) sc (currDepth, maxDepth) - 1397 | - 1398 | | Impl ((r, (LF.TypDecl (x, _) as tD)), g') -> - ... - 1409 | So we just prove the conclusion in an extended context. *) - 1410 | gSolve dPool cD (LF.DDec (cPsi, S.decSub tD s), k + 1) (g', S.dot1 s) - 1411 | (fun (u, tM) -> sc (u, LF.Lam (Location.ghost, x, tM))) - 1412 | (currDepth, maxDepth) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Impl ((r, TypDeclOpt _), _) - - File "src/core/logic.ml", lines 1444-1446, characters 17-29: - 1444 | .................match cltyp with - 1445 | | LF.MTyp tau -> tau - 1446 | | LF.PTyp tau -> tau - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 1439-1483, characters 4-96: - 1439 | ....match cD with - 1440 | | LF.Empty -> raise NoSolution - 1441 | | LF.Dec (cD', LF.Decl { typ = LF.CTyp _ ; _}) -> - 1442 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) - 1443 | | LF.Dec (cD', LF.Decl { typ = LF.ClTyp (cltyp, cPsi); plicity; _ }) -> - ... - 1480 | end - 1481 | with - 1482 | | U.Failure _ -> - 1483 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, DeclOpt _) - - File "src/core/logic.ml", lines 1496-1600, characters 4-76: - 1496 | ....match s with - 1497 | | LF.Shift _ -> - 1498 | dprintf begin fun p -> - 1499 | p.fmt "[trivially_prove] s_all = %a" - 1500 | (P.fmt_ppr_lf_sub cD cPhi P.l0) s_all - ... - 1597 | with - 1598 | | U.Failure _ | NoSolution -> raise NoSolution) - 1599 | | LF.Dot (_, s') -> - 1600 | trivially_prove s' s_all cD (goal, cPhi, s_goal) dPool u (curr_sub+1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) - - File "src/core/logic.ml", lines 2260-2263, characters 4-25: - 2260 | ....match cG with - 2261 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) when k = 1 -> name - 2262 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) -> - 2263 | get_name (k-1) cG' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG', CTypDeclOpt _) - - File "src/core/logic.ml", lines 2337-2340, characters 4-21: - 2337 | ....match cdecl with - 2338 | | Comp.CTypDecl (_, tau, _) -> - 2339 | let cc = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in - 2340 | (cc, k, Boxed) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/logic.ml", lines 2416-2417, characters 9-57: - 2416 | .........let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in - 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Full (Full (_, ({ _ }, _, _)), ({ _ }, _, _)) - - File "src/core/logic.ml", lines 2407-2418, characters 6-33: - 2407 | ......match (cP, cG) with - 2408 | | (Emp, LF.Dec(cG', cdecl)) -> - 2409 | let cc = decToCC cdecl 1 in - 2410 | let cP_ret' = shift_cPool cP_ret 1 in - 2411 | update cP cG' (prependToCPool cc cP_ret') (k+1) - ... - 2415 | if pos' = k then unbox cc else cc in - 2416 | let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in - 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) - 2418 | | (Emp, LF.Empty) -> cP_ret - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Full (cP', cc), Empty) - - File "src/core/logic.ml", lines 2470-2476, characters 6-36: - 2470 | ......match tA with - 2471 | | LF.Atom (l, cid, sp) -> - 2472 | LF.Atom (l, cid, remove_sp sp) - 2473 | | LF.PiTyp ((td, depend, plicity), tA') -> - 2474 | LF.PiTyp ((td, depend, plicity), remove_typ tA) - 2475 | | LF.TClo (tA', s) -> - 2476 | LF.TClo (remove_typ tA', s) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Sigma _ - - File "src/core/logic.ml", lines 2495-2508, characters 6-49: - 2495 | ......match tau with - 2496 | | Comp.TypBase (l, cid, mS) -> - 2497 | Comp.TypBase (l, cid, remove_mS mS) - 2498 | | Comp.TypBox (l, mT) -> - 2499 | (match mT with - ... - 2505 | | Comp.TypArr (l, tau1, tau2) -> - 2506 | Comp.TypArr (l, remove_tau tau1, remove_tau tau2) - 2507 | | Comp.TypPiBox (l, cdec, tau') -> - 2508 | Comp.TypPiBox (l, cdec, remove_tau tau') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)|TypInd _) - - File "src/core/logic.ml", lines 2731-2741, characters 9-52: - 2731 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in - 2732 | let mmvar' = - 2733 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity - 2734 | mmvar.LF.inductivity in - 2735 | let norm = LF.Root (noLoc, - ... - 2738 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in - 2739 | let x = Comp.M ((noLoc, mf), mT) in - 2740 | let (xs, sub) = gen_new_ih_args lst' ys in - 2741 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/logic.ml", lines 2752-2762, characters 9-52: - 2752 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in - 2753 | let mmvar' = - 2754 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity - 2755 | mmvar.LF.inductivity in - 2756 | let norm = LF.Root (noLoc, LF.MMVar - ... - 2759 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in - 2760 | let x = Comp.M ((noLoc, mf), mT) in - 2761 | let (xs, sub) = gen_new_ih_args lst' ys in - 2762 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((PTyp _|STyp (_, _)), _) - - File "src/core/logic.ml", lines 2771-2779, characters 9-58: - 2771 | .........let LF.ClTyp (LF.PTyp tA, cPsi) = mmvar.LF.typ in - 2772 | let mmvar' = - 2773 | Whnf.newMPVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity - 2774 | mmvar.LF.inductivity in - 2775 | let hd = LF.MPVar ((mmvar', LF.MShift 0), LF.Shift 0) in - 2776 | let mf = LF.ClObj (dctx_hat, LF.PObj hd) in - 2777 | let x = Comp.M ((noLoc, mf), mT) in - 2778 | let (xs, sub) = gen_new_ih_args lst' ys in - 2779 | (x :: xs, (mmvar.LF.mmvar_id, LF.head hd) :: sub) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp ((MTyp _|STyp (_, _)), _) - - File "src/core/logic.ml", lines 2842-2843, characters 11-44: - 2842 | ...........let (LF.Root(_, hd',_,_)) = sub_norm (LF.head hd) sub in - 2843 | (loc, LF.ClObj (dh, LF.PObj hd')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/logic.ml", lines 2920-2921, characters 6-42: - 2920 | ......match i with - 2921 | | Comp.Var(l, k) -> Comp.Var(l, k+1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, T (_, _, _))| - LetTuple (_, _, (T (_, _, _), _))|Let (_, _, (_, _))|Box (_, (_, _), _)| - Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)|DataConst (_, _)| - Obs (_, _, _, _)|Const (_, _)|Apply (_, _, _)|MApp (_, _, (_, _), _, _)| - AnnBox (_, (_, _), _)) - - File "src/core/logic.ml", lines 2977-2978, characters 6-37: - 2977 | ......match cltyp with - 2978 | | LF.MTyp tA | LF.PTyp tA -> tA - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 2998-3001, characters 6-58: - 2998 | ......match cG_a with - 2999 | | [] -> false - 3000 | | (Comp.CTypDecl (name2, _ ,_), _, _, _, _, _) :: cG_a' -> - 3001 | (Name.equal name name2) || (old_split name cG_a') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (CTypDeclOpt _, _, _, _, _, _)::_ - - File "src/core/logic.ml", lines 3005-3009, characters 6-37: - 3005 | ......match cG_a with - 3006 | | (Comp.CTypDecl (name2, _ ,_), _, con, _, thm, bool) :: cG_a' - 3007 | when Name.equal name name2 -> - 3008 | (con, thm, bool) - 3009 | | x :: xs -> find_split name xs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3013-3065, characters 6-30: - 3013 | ......match (cG, cPool) with - 3014 | | (LF.Dec(cG', - 3015 | ((Comp.CTypDecl (name, Comp.TypBox - 3016 | (_, LF.ClTyp (cltyp, cPsi)), _wf)) - 3017 | as cdecl)), - ... - 3062 | | (LF.Dec (cG', _), Full (cPool', _)) -> - 3063 | update (cG', cPool', ret) - 3064 | - 3065 | | (LF.Empty, Emp) -> ret - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Dec (cG', _), Emp) - - File "src/core/logic.ml", lines 3084-3087, characters 6-38: - 3084 | ......match cD_a with - 3085 | | (LF.Decl d, Option.Some _, _, _, _, _) as x :: cD_a' - 3086 | when Name.equal d.name n -> x - 3087 | | _ :: cD_a' -> retrieve n cD_a' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3103-3108, characters 21-41: - 3103 | .....................match cltyp with - 3104 | | LF.MTyp tA -> - 3105 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), - 3106 | LF.Nil, Plicity.explicit)) - 3107 | | LF.PTyp tA -> - 3108 | LF.PObj (LF.PVar (1, S.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3094-3118, characters 9-31: - 3094 | .........let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = - 3095 | retrieve name cD_a in - 3096 | let (con', bool') = - 3097 | if bool then - 3098 | try - ... - 3115 | let tdecl' = Whnf.cnormCDecl (tdecl, LF.MShift 1) in - 3116 | let x = (tdecl', Some i, con', 1, thm, bool') in - 3117 | let ret' = shift_cD_a ret in - 3118 | update cD' (x :: ret') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (DeclOpt { _ }, _, _, _, _, _) - - File "src/core/logic.ml", lines 3126-3131, characters 21-41: - 3126 | .....................match cltyp with - 3127 | | LF.MTyp tA -> - 3128 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), - 3129 | LF.Nil, Plicity.explicit)) - 3130 | | LF.PTyp tA -> - 3131 | LF.PObj (LF.PVar (1, S.id)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3090-3157, characters 6-23: - 3090 | ......match cD with - 3091 | | LF.Dec (cD', ((LF.Decl { name; typ = ((LF.ClTyp (cltyp, cPsi)) as ctyp) - 3092 | ; plicity = Plicity.Explicit; _ }) as tdecl)) - 3093 | when is_in name cD_a -> - 3094 | let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = - ... - 3154 | let x = (tdecl', None, con, 1, None, bool) in - 3155 | let ret' = shift_cD_a ret in - 3156 | update cD' (x :: ret') - 3157 | | LF.Empty -> ret - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (_, DeclOpt _) - - File "src/core/logic.ml", lines 3243-3251, characters 6-44: - 3243 | ......match cG_a with - 3244 | | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, true) :: cG_a' - 3245 | when Name.equal name n -> - 3246 | (tau, i, thm_var, - 3247 | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, false) - 3248 | :: cG_a', k) - 3249 | | x :: cG_a' -> - 3250 | let (tau, i, thm_var, cG_a'', pos) = remove_var name cG_a' in - 3251 | (tau, i, thm_var, x :: cG_a'', pos) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3256-3264, characters 6-39: - 3256 | ......match cD_a with - 3257 | | (LF.Decl d, Option.Some i, no, k, thm_var, true) - 3258 | :: cD_a' when Name.equal name d.name -> - 3259 | let tau = Comp.TypBox(noLoc, d.typ) in - 3260 | (tau, i, thm_var, (LF.Decl d, Option.some i, no, k, thm_var, false) - 3261 | :: cD_a') - 3262 | | x :: cD_a' -> - 3263 | let (tau, i, thm_var, cD_a'') = remove_mvar name cD_a' in - 3264 | (tau, i, thm_var, x :: cD_a'') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3330-3332, characters 9-42: - 3330 | .........let (Some n) = find_mvar k cD_a in - 3331 | let (tau, i, thm_var, cD_a') = remove_mvar n cD_a in - 3332 | (tau, i, thm_var, cD_a', cG_a, 0). - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 3358-3365, characters 8-50: - 3358 | ........match cG_a with - 3359 | | (((Comp.CTypDecl (name2, _ ,_)) as cdecl), _, con, _, thm, bool) - 3360 | :: cG_a' when Name.equal name name2 -> - 3361 | (cdecl, con, thm, bool, cG_a') - 3362 | | x :: xs -> - 3363 | let (tdecl, num, thm_var, bool, cG_a') = - 3364 | remove xs in - 3365 | (tdecl, num, thm_var, bool, x :: cG_a') - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 3374-3399, characters 7-25: - 3374 | .......(match cltyp with - 3375 | | LF.MTyp tA -> - 3376 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive } in - 3377 | let norm = - 3378 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in - ... - 3396 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in - 3397 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) - 3398 | :: (shift_cD_a cD_a) in - 3399 | (cD_a', cG_a')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3403-3428, characters 7-25: - 3403 | .......(match cltyp with - 3404 | | LF.MTyp _ -> - 3405 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.inductive } in - 3406 | let norm = - 3407 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in - ... - 3425 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in - 3426 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) - 3427 | :: (shift_cD_a cD_a) in - 3428 | (cD_a', cG_a')) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3489-3525, characters 7-31: - 3489 | .......(match cltyp with - 3490 | | LF.MTyp _ -> - 3491 | let norm = - 3492 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), - 3493 | LF.Nil, plicity) in - ... - 3522 | | false -> None - 3523 | in - 3524 | (tdecl', Some i, consOfLFTyp cltyp, 1, thm_var, true) - 3525 | :: (shift_cD_a cD_a)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - STyp (_, _) - - File "src/core/logic.ml", lines 3646-3651, characters 4-46: - 3646 | ....match cG with - 3647 | | LF.Empty -> cPool - 3648 | | LF.Dec (cG', Comp.CTypDecl (_, tau, _)) -> - 3649 | let clause = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in - 3650 | let cc = (clause, (lengthCPool cPool) + 1, Boxed) in - 3651 | gen_cPool cG' (prependToCPool cc cPool) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Dec (cG', CTypDeclOpt _) - - File "src/core/logic.ml", lines 3898-3900, characters 6-46: - 3898 | ......match cD with - 3899 | | LF.Dec (_, LF.Decl { name; _ }) when k = 1 -> name - 3900 | | LF.Dec (cD', _) -> find_name cD' (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/logic.ml", lines 4037-4047, characters 22-64: - 4037 | ......................match mobj with - 4038 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) - 4039 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) -> - 4040 | mmvar.LF.instantiation := - 4041 | Some (LF.INorm (LF.Root (noLoc, - ... - 4044 | | LF.PObj LF.MPVar ((mmvar, _), _) - 4045 | | LF.PObj LF.MMVar ((mmvar, _), _) -> - 4046 | mmvar.LF.instantiation := - 4047 | Some (LF.IHead (LF.MVar (LF.Offset k, LF.Shift 0))) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MObj - (Root - (_, - (BVar _|Const _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| - FPVar _|HClo (_, _, _)|HMClo (_, _)), _, _)) - - File "src/core/logic.ml", lines 4051-4057, characters 6-26: - 4051 | ......match ih_args with - 4052 | | (Comp.M ((_, LF.ClObj (_, ((LF.PObj hd) as mobj))), _)) :: xs -> - 4053 | if Solver.uninstantiated hd then mobj else grab xs - 4054 | | (Comp.M ((_, LF.ClObj (_, ((LF.MObj (LF.Root (_,hd,_,_))) as mobj))), _)) - 4055 | :: xs-> - 4056 | if Solver.uninstantiated hd then mobj else grab xs - 4057 | | _ :: xs -> grab xs - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - [] - - File "src/core/logic.ml", lines 4060-4064, characters 14-56: - 4060 | ..............match mobj with - 4061 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) - 4062 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) - 4063 | | LF.PObj LF.MPVar ((mmvar, _), _) - 4064 | | LF.PObj LF.MMVar ((mmvar, _), _) -> mmvar.LF.typ... - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - MObj - (Root - (_, - (BVar _|Const _|MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)| - FVar _|FMVar (_, _)|FPVar (_, _)|HClo (_, _, _)| - HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))), _, - _)) - - File "src/core/logic.ml", lines 4079-4090, characters 6-88: - 4079 | ......let Some cid = thm_cid in - 4080 | let i = Comp.Const(noLoc, cid) in - 4081 | let sc' = (fun e -> sc (Comp.Case (noLoc, - 4082 | Comp.PragmaNotCase, - 4083 | Whnf.cnormExp (fS i, LF.MShift 0), - ... - 4087 | pattern, - 4088 | LF.MShift 0, - 4089 | e)]))) in - 4090 | find_all_occurances dec (cG', cPool', cG_a') sc' cD thm_cid thm lst' cIH' cIH_all' - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 4126-4128, characters 21-40: - 4126 | .....................match (currDepth, maxDepth) with - 4127 | | (Some k, None) -> (k, 0) - 4128 | | (Some k1, Some k2) -> (k1, k2) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (None, _) - - File "src/core/logic.ml", lines 4290-4311, characters 9-83: - 4290 | .........let Some cid = thm_cid in - 4291 | let i = arg_builder (Comp.Const(noLoc, cid)) in - 4292 | let (ms', fS) = - 4293 | C.mctxToMSub cD (cMVars, LF.MShift 0) (fun s -> s) in - 4294 | let ms'' = rev_ms ms' 0 in - ... - 4308 | with - 4309 | | U.Failure _ | DepthReached _ | End_Of_Search -> - 4310 | focusIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc - 4311 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (thm, td, thm_cid)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 4595-4597, characters 6-57: - 4595 | ......match cG with - 4596 | | LF.Dec (_, Comp.CTypDecl (_, tau, _)) when k = 1 -> tau - 4597 | | LF.Dec (cG', _) -> find_comp_assumption cG' (k-1) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Empty - - File "src/core/logic.ml", lines 4895-4905, characters 10-31: - 4895 | ..........let [(cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, - 4896 | ms_b, pat, td_b, cid)] = blist in - 4897 | - 4898 | invert_all (cD, cD_a) (cG, cPool, cG_a) cIH_b - 4899 | (normCompGoal (cg, ms)) ms_b - ... - 4902 | [Comp.Branch(noLoc, LF.Empty, (cD, cG), pat, - 4903 | ms_b, e)]))) - 4904 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 4905 | (ind, thm, td, cid) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, ms_b, pat, td_b, cid):: - (_, _, _, _, _, _, _, _, _, _, _, _)::_ - - File "src/core/logic.ml", lines 4976-5015, characters 7-35: - 4976 | .......let Atom tA = g' in - 4977 | let cltyp = LF.MTyp tA in - 4978 | let sc' = - 4979 | (fun (cPsi', tM) -> - 4980 | let dctx_hat = Context.dctxToHat cPsi' in - ... - 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5014 | (ind, thm, td, thm_cid); - 5015 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Impl ((_, _), _)|All (_, _)) - - File "src/core/logic.ml", lines 4975-5015, characters 7-35: - 4975 | .......let Box(cPsi',g',_) = cg' in - 4976 | let Atom tA = g' in - 4977 | let cltyp = LF.MTyp tA in - 4978 | let sc' = - 4979 | (fun (cPsi', tM) -> - ... - 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5014 | (ind, thm, td, thm_cid); - 5015 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) - - File "src/core/logic.ml", lines 5024-5029, characters 11-51: - 5024 | ...........let LF.Root (_,hd,_,_) = tM in - 5025 | let dctx_hat = Context.dctxToHat cPsi' in - 5026 | let mfront = LF.ClObj (dctx_hat, LF.PObj hd) in - 5027 | let meta_obj = (noLoc, mfront) in - 5028 | let meta_typ = LF.ClTyp (cltyp, cPsi') in - 5029 | sc (Comp.Box(noLoc, meta_obj, meta_typ)). - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) - - File "src/core/logic.ml", lines 5020-5060, characters 7-34: - 5020 | .......let Atom tA = g' in - 5021 | let cltyp = LF.PTyp tA in - 5022 | let sc' = - 5023 | (fun (cPsi', tM) -> - 5024 | let LF.Root (_,hd,_,_) = tM in - ... - 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5059 | (ind, thm, td, thm_cid); - 5060 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Impl ((_, _), _)|All (_, _)) - - File "src/core/logic.ml", lines 5019-5060, characters 7-34: - 5019 | .......let Box(_,g',_) = cg' in - 5020 | let Atom tA = g' in - 5021 | let cltyp = LF.PTyp tA in - 5022 | let sc' = - 5023 | (fun (cPsi', tM) -> - ... - 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5059 | (ind, thm, td, thm_cid); - 5060 | raise End_Of_Search) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) - - File "src/core/logic.ml", lines 4969-5085, characters 4-30: - 4969 | ....match cg with - 4970 | | Box (cPsi, g, Some M) -> - 4971 | (* We apply the msub here in case there are FREE MVARS that - 4972 | appear from unify *) - 4973 | let ms = Whnf.cnormMSub ms in - ... - 5082 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc - 5083 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) - 5084 | (ind, thm, td, thm_cid); - 5085 | raise End_Of_Search - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - Box (_, _, None) - - File "src/core/logic.ml", lines 5223-5246, characters 7-36: - 5223 | .......let Some cid = thm_cid in - 5224 | let cIH_all' = Total.shift cIH_all in - 5225 | let cIH'' = Total.shift cIH' in - 5226 | let i = Comp.Const(noLoc, cid) in - 5227 | (try - ... - 5243 | | End_Of_Search | DepthReached _ -> - 5244 | blurIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc - 5245 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) - 5246 | (ind, thm, td, thm_cid)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5263-5286, characters 7-32: - 5263 | .......let Some cid = thm_cid in - 5264 | let i = Comp.Const(noLoc, cid) in - 5265 | let cIH'' = Total.shift cIH' in - 5266 | let cIH_all' = Total.shift cIH_all in - 5267 | let exp = Whnf.cnormExp (fS i, LF.MShift 0) in - ... - 5283 | in - 5284 | blurIH (cD, cD_a) (cG', cPool', cG_a') (cIH'', cIH_all') cg ms sc' - 5285 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) - 5286 | (ind, thm, td, thm_cid) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5393-5394, characters 6-46: - 5393 | ......match cp with - 5394 | | (_cc, _k, Boxed) -> (_cc, _k, Unboxed) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (_cc, _k, Unboxed) - - File "src/core/logic.ml", lines 5441-5458, characters 10-49: - 5441 | ..........match r with - 5442 | | LF.ClTyp (LF.MTyp _, cPsi) -> - 5443 | let tM = - 5444 | LF.Root - 5445 | ( noLoc - ... - 5455 | LF.ClObj (Context.dctxToHat (Whnf.cnormDCtx (cPsi, LF.MShift 1)), - 5456 | LF.PObj hd) - 5457 | | LF.CTyp _ -> - 5458 | LF.CObj (LF.CtxVar (LF.CtxOffset 1)) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - ClTyp (STyp (_, _), _) - - File "src/core/logic.ml", lines 5549-5554, characters 7-37: - 5549 | .......let Comp.CTypDecl (name, _, _) = tdecl in - 5550 | let sc' = (fun e -> sc (Comp.Fn (noLoc, name, e))) in - 5551 | let cIH' = Total.shift cIH in - 5552 | uniform_right (cD, cD_a) (cG', cPool', cG_a') cIH' cg' ms sc' - 5553 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (k+1) - 5554 | (ind, thm, td, thm_cid) blur - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - CTypDeclOpt _ - - File "src/core/logic.ml", lines 5587-5590, characters 24-19: - 5587 | ........................match sp with - 5588 | | 0 -> Some 0 (* No splitting. *) - 5589 | | 1 -> None (* Only inversions. *) - 5590 | | 2 -> Some 1........................ - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - 3 - - File "src/core/logic.ml", lines 5795-5798, characters 9-40: - 5795 | .........let Some iterm = !(mmvar.LF.instantiation) in - 5796 | (match iterm with - 5797 | | LF.IHead hd -> hd - 5798 | | _ -> raise NotImplementedYet) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5800-5803, characters 9-40: - 5800 | .........let Some iterm = !(mmvar.LF.instantiation) in - 5801 | (match iterm with - 5802 | | LF.IHead hd -> hd - 5803 | | _ -> raise NotImplementedYet) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5805-5808, characters 9-40: - 5805 | .........let Some iterm = !(mmvar.LF.instantiation) in - 5806 | (match iterm with - 5807 | | LF.IHead hd -> hd - 5808 | | _ -> raise NotImplementedYet) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5834-5835, characters 11-16: - 5834 | ...........let Some iterm = !(mmvar.LF.instantiation) in - 5835 | iterm - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5837-5838, characters 11-16: - 5837 | ...........let Some iterm = !(mmvar.LF.instantiation) in - 5838 | iterm - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5840-5841, characters 11-16: - 5840 | ...........let Some iterm = !(mmvar.LF.instantiation) in - 5841 | iterm - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - None - - File "src/core/logic.ml", lines 5847-5849, characters 9-33: - 5847 | .........(match remove_head_mvars hd with - 5848 | | LF.IHead hd -> LF.Root (l, hd, remove_spine_mvars spine, p) - 5849 | | LF.INorm norm -> norm) - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (ISub _|ICtx _) - - File "src/core/logic.ml", lines 6066-6076, characters 8-33: - 6066 | ........match tau with - 6067 | | Comp.TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, _) -> Option.some n - 6068 | | Comp.TypPiBox (_, _, tau') -> ind_index tau' (n + 1) - 6069 | | Comp.TypInd (_) -> Option.some n - 6070 | | Comp.TypBox (_, _) -> Option.none - ... - 6073 | let ind = ind_index tau1 n in - 6074 | match ind with - 6075 | | Option.None -> ind_index tau2 (n + 1) - 6076 | | Option.Some _ -> ind - Warning 8 [partial-match]: this pattern-matching is not exhaustive. - Here is an example of a case that is not matched: - (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) - (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Load.cmx -c -impl src/core/load.ml) - File "src/core/load.ml", line 63, characters 33-47: - 63 | Parser.Parsing.(only signature_file) - ^^^^^^^^^^^^^^ - Error: This expression has type - "Synprs.signature_file Parser.Parsing.t" = - "Parser.Parsing.state -> - Parser.Parsing.state * (Synprs.signature_file, exn) result" - but an expression was expected of type - "Parser.Parsing.state -> Parser.Parsing.state * ('a, exn) result" - The layout of Synprs.signature_file is any - because the .cmi file for Synprs.signature_file is missing. - But the layout of Synprs.signature_file must be a sublayout of value. - No .cmi file found containing Synprs.signature_file. - Hint: Adding "synprs" to your dependencies might help. [ERROR] The compilation of beluga.1.1.2 failed at "dune build -p beluga -j 255 @install". #=== ERROR while compiling beluga.1.1.2 =======================================# # context 2.4.0~alpha2 | linux/x86_64 | ocaml-variants.5.2.0+flambda2 | file:///home/opam/opam-repository # path ~/.opam/5.2.0+flambda2/.opam-switch/build/beluga.1.1.2 # command ~/.opam/opam-init/hooks/sandbox.sh build dune build -p beluga -j 255 @install # exit-code 1 # env-file ~/.opam/log/beluga-8-31b25c.env # output-file ~/.opam/log/beluga-8-31b25c.out ### output ### # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/support/.support.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/byte/support__List1.cmo -c -impl src/support/list1.ml) # File "src/support/list1.ml", line 1, characters 33-40: # 1 | type +'a t = T of 'a * 'a list [@unboxed] # ^^^^^^^ # Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/support/.support.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/byte/support__List2.cmo -c -impl src/support/list2.ml) # File "src/support/list2.ml", line 1, characters 37-44: # 1 | type 'a t = T of 'a * 'a * 'a list [@unboxed] # ^^^^^^^ # Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/support/.support.objs/byte -I src/support/.support.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/native/support__List1.cmx -c -impl src/support/list1.ml) # File "src/support/list1.ml", line 1, characters 33-40: # 1 | type +'a t = T of 'a * 'a list [@unboxed] # ^^^^^^^ # Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/support/.support.objs/byte -I src/support/.support.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -intf-suffix .ml -no-alias-deps -open Support__ -o src/support/.support.objs/native/support__List2.cmx -c -impl src/support/list2.ml) # File "src/support/list2.ml", line 1, characters 37-44: # 1 | type 'a t = T of 'a * 'a * 'a list [@unboxed] # ^^^^^^^ # Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/syntax/syncom/.syncom.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/support/.support.objs/byte -intf-suffix .ml -no-alias-deps -open Syncom__ -o src/syntax/syncom/.syncom.objs/byte/syncom__Error.cmo -c -impl src/syntax/syncom/error.pp.ml) # File "src/syntax/syncom/error.ml", line 519, characters 2-27: # 519 | Printexc.register_printer (fun exn -> # ^^^^^^^^^^^^^^^^^^^^^^^^^ # Alert unsafe_multidomain: Stdlib.Printexc.register_printer # Use [Printexc.Safe.register_printer]. # # File "src/syntax/syncom/error.ml", line 526, characters 2-41: # 526 | Printexc.set_uncaught_exception_handler (fun exn backtrace -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Alert unsafe_multidomain: Stdlib.Printexc.set_uncaught_exception_handler # Use [Printexc.Safe.set_uncaught_exception_handler]. # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/syntax/synint/.synint.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/syntax/syncom/.syncom.objs/byte -no-alias-deps -o src/syntax/synint/.synint.objs/byte/synint.cmo -c -impl src/syntax/synint/synint.ml) # File "src/syntax/synint/synint.ml", lines 629-632, characters 4-60: # 629 | ....function # 630 | | PatNil -> PatNil # 631 | | PatApp (loc, p, pS) -> # 632 | PatApp (loc, strip_pattern p, strip_pattern_spine pS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/support/.support.objs/byte -I src/support/.support.objs/native -intf-suffix .ml -no-alias-deps -open Syncom__ -o src/syntax/syncom/.syncom.objs/native/syncom__Error.cmx -c -impl src/syntax/syncom/error.pp.ml) # File "src/syntax/syncom/error.ml", line 519, characters 2-27: # 519 | Printexc.register_printer (fun exn -> # ^^^^^^^^^^^^^^^^^^^^^^^^^ # Alert unsafe_multidomain: Stdlib.Printexc.register_printer # Use [Printexc.Safe.register_printer]. # # File "src/syntax/syncom/error.ml", line 526, characters 2-41: # 526 | Printexc.set_uncaught_exception_handler (fun exn backtrace -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Alert unsafe_multidomain: Stdlib.Printexc.set_uncaught_exception_handler # Use [Printexc.Safe.set_uncaught_exception_handler]. # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/syntax/synext/.synext.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/syntax/syncom/.syncom.objs/byte -intf-suffix .ml -no-alias-deps -open Synext__ -o src/syntax/synext/.synext.objs/byte/synext__Synext_precedence.cmo -c -impl src/syntax/synext/synext_precedence.ml) # File "src/syntax/synext/synext_precedence.ml", line 253, characters 38-45: # 253 | type precedence = Static of Int.t [@unboxed] # ^^^^^^^ # Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -intf-suffix .ml -no-alias-deps -o src/syntax/synint/.synint.objs/native/synint.cmx -c -impl src/syntax/synint/synint.ml) # File "src/syntax/synint/synint.ml", lines 629-632, characters 4-60: # 629 | ....function # 630 | | PatNil -> PatNil # 631 | | PatApp (loc, p, pS) -> # 632 | PatApp (loc, strip_pattern p, strip_pattern_spine pS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Order.cmo -c -impl src/core/order.ml) # File "src/core/order.ml", lines 26-34, characters 2-23: # 26 | ..function # 27 | | I.Arg x -> Some [x] # 28 | | I.Lex xs -> # 29 | let f = # 30 | function # 31 | | I.Arg x -> Some x # 32 | | _ -> None (* We don't support nested lexicographic orders. *) # 33 | in # 34 | List.traverse f xs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Simul _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Erase.cmo -c -impl src/core/erase.ml) # File "src/core/erase.ml", lines 6-19, characters 2-33: # 6 | ..match (tau, n) with # 7 | | (_, 0) -> 0 # 8 | | (TypArr (_, _, tau), n) -> 1 + numeric_order_arg tau (n - 1) # 9 | | (TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, tau), n) -> # 10 | (* We count [Inductive] as 1 instead of throwing an error because # ... # 16 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Explicit; _ }, tau), n) -> # 17 | 1 + numeric_order_arg tau (n - 1) # 18 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Implicit; _ }, tau), n) -> # 19 | numeric_order_arg tau (n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypPiBox (_, DeclOpt _, _), 1) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Subord.cmo -c -impl src/core/subord.ml) # File "src/core/subord.ml", lines 98-101, characters 7-43: # 98 | .......function # 99 | | Atom _ -> [tA] # 100 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> # 101 | extract_neg tA1 @ extract_pos tA2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/subord.ml", lines 103-106, characters 7-43: # 103 | .......function # 104 | | Atom _ -> [] # 105 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> # 106 | extract_pos tA1 @ extract_neg tA2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/subord.ml", lines 85-112, characters 2-47: # 85 | ..match tA with # 86 | | Atom (_, a, _) -> # 87 | Store.Cid.Typ.freeze a; # 88 | if List.exists # 89 | begin fun type_in_basis -> # ... # 109 | If we keep this, then we might not strengthen enough... -bp*) # 110 | List.fold_left (fun l tA -> relevant tA basis @ l) [] (extract_neg tA1) # 111 | @ relevant tA2 basis # 112 | | Sigma typRec -> relevantTypRec typRec basis # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/subord.ml", lines 159-161, characters 9-71: # 159 | .........match psi with # 160 | | CtxOffset _ -> Context.lookupCtxVarSchema cD psi # 161 | | CInst ({ typ = CTyp (Some cid_schema); _ }, _) -> cid_schema # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CInst ({typ=CTyp None; _ }, _) # # File "src/core/subord.ml", lines 155-187, characters 4-10: # 155 | ....match cPsi with # 156 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) # 157 | | CtxVar psi -> # 158 | let schema = # 159 | match psi with # ... # 184 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) # 185 | let thin_s_inv = Substitution.LF.invert thin_s in # 186 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) # 187 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/subord.ml", line 189, characters 8-45: # 189 | inner (match tP with Atom (_, a, _) -> [a]) cPsi # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) # # File "src/core/subord.ml", lines 215-216, characters 16-21: # 215 | ................let (_, Decl { typ = CTyp (Some s_cid); _ }) = Store.FCVar.get psi in # 216 | s_cid # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=CTyp None; _ }) # # File "src/core/subord.ml", lines 205-238, characters 4-10: # 205 | ....match Whnf.cnormDCtx (cPsi, MShift 0) with # 206 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) # 207 | | CtxVar psi -> # 208 | begin # 209 | try # ... # 235 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) # 236 | let thin_s_inv = Substitution.LF.invert thin_s in # 237 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) # 238 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/subord.ml", lines 249-251, characters 11-24: # 249 | ...........let (_, Decl { typ = CTyp _; _ }) = Store.FCVar.get psi in # 250 | p.fmt "[thin'] CtxName psi = %a FOUND" # 251 | Name.pp psi # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=ClTyp (_, _); _ }) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Context.cmo -c -impl src/core/context.ml) # File "src/core/context.ml", lines 90-104, characters 4-24: # 90 | ....function # 91 | | (DDec (_, TypDecl (x, tA')), 1) -> # 92 | TypDecl (x, TClo (tA', Shift k)) # 93 | # 94 | | (DDec (cPsi', TypDecl _), k') -> # ... # 101 | ctxDec' (cPsi', k'-1) # 102 | # 103 | | (CtxVar (CInst ({instantiation = {contents = Some (ICtx cPsi)}; _}, _)), k) -> # 104 | ctxDec' (cPsi, k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxVar # (CInst ({instantiation={contents=Some (INorm _|IHead _|ISub _)}; _ }, _)), # _) # # File "src/core/context.ml", lines 124-134, characters 4-24: # 124 | ....function # 125 | | (DDec (_, TypDecl (x, Sigma tArec)), 1) -> # 126 | TypDecl (x, Sigma (sigmaShift tArec (Shift k))) # 127 | # 128 | | (DDec (cPsi', TypDecl (_, Sigma _)), k') -> # ... # 131 | | (DDec (cPsi', TypDecl _), k') -> # 132 | ctxDec' (cPsi', k' - 1) # 133 | | (CtxVar (CInst ({ instantiation = {contents = Some (ICtx cPhi) }; _ }, _)) , k) -> # 134 | ctxDec' (cPhi, k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (DDec (cPsi', TypDeclOpt _), _) # # File "src/core/context.ml", lines 361-364, characters 2-49: # 361 | ..match (cPsi, k) with # 362 | | (DDec (_, TypDecl (x, _)), 1) -> x # 363 | | (DDec (_, TypDeclOpt x), 1) -> x # 364 | | (DDec (cPsi, _), k) -> getNameDCtx cPsi (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Null|CtxVar _), _) # # File "src/core/context.ml", lines 367-371, characters 2-27: # 367 | ..match (cD, k) with # 368 | | (Dec (_, Decl { name = u; _ }), 1) -> u # 369 | | (Dec (_, DeclOpt { name = u; _ }), 1) -> u # 370 | | (Dec (cD, _), k) -> # 371 | getNameMCtx cD (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Empty, _) # # File "src/core/context.ml", lines 374-377, characters 2-45: # 374 | ..match (cG, k) with # 375 | | (Dec (_, Comp.CTypDecl (x, _ , _)), 1) -> x # 376 | | (Dec (_, Comp.CTypDeclOpt x), 1) -> x # 377 | | (Dec (cG, _), k) -> getNameCtx cG (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Empty, _) # # File "src/core/context.ml", lines 401-403, characters 4-58: # 401 | ....function # 402 | | CtxVar ctx_var -> DDec (CtxVar ctx_var, new_typ_decl) # 403 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Null # # File "src/core/context.ml", lines 409-411, characters 4-58: # 409 | ....function # 410 | | CtxVar ctx_var -> Null # 411 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Null # # File "src/core/context.ml", lines 436-439, characters 2-28: # 436 | ..match (cD, psi_offset) with # 437 | | (Dec (_, Decl { typ = CTyp (Some cid_schema); _ }), 1) -> cid_schema # 438 | | (Dec (cD, _) , i) -> # 439 | lookupSchema cD (i - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Empty, _) # # File "src/core/context.ml", lines 446-453, characters 7-10: # 446 | .......begin match cvar with # 447 | | CtxName phi when Name.(psi = phi) -> (psi, schemaName) # 448 | | CtxName _ -> lookup cD (offset + 1) # 449 | | CtxOffset n -> # 450 | if n - offset = 1 # 451 | then (psi, schemaName) # 452 | else lookup cD (offset + 1) # 453 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CInst _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -intf-suffix .ml -no-alias-deps -open Synext__ -o src/syntax/synext/.synext.objs/native/synext__Synext_precedence.cmx -c -impl src/syntax/synext/synext_precedence.ml) # File "src/syntax/synext/synext_precedence.ml", line 253, characters 38-45: # 253 | type precedence = Static of Int.t [@unboxed] # ^^^^^^^ # Warning 53 [misplaced-attribute]: the "unboxed" attribute cannot appear in this context # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Ctxsub.cmo -c -impl src/core/ctxsub.ml) # File "src/core/ctxsub.ml", lines 46-65, characters 2-36: # 46 | ..match sA' with # 47 | | (PiTyp ((decl, _, _), tA'), s') -> # 48 | let (tM , sAmv) = # 49 | lowerMVar # 50 | (DDec (cPsi, Substitution.LF.decSub decl s')) # ... # 62 | , Nil # 63 | , Plicity.explicit # 64 | ) , # 65 | ClTyp(MTyp (TClo sA') , cPsi)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _, _) # # File "src/core/ctxsub.ml", lines 88-158, characters 2-89: # 88 | ..function # 89 | | Null -> # 90 | (* Substitution.LF.id --changed 2010-07-26*) # 91 | (cD, ctxShift psi, 0) # 92 | # ... # 155 | # 156 | | DDec (_, TypDecl _) -> # 157 | (* For the moment, assume tA atomic. *) # 158 | Error.raise_not_implemented "[ctxToSub_mclosed] non-atomic cPsi entry not supported" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (_, TypDeclOpt _) # # File "src/core/ctxsub.ml", lines 174-216, characters 2-11: # 174 | ..function # 175 | | Null -> # 176 | (* Substitution.LF.id --changed 2010-07-26*) # 177 | ctxShift cPhi # 178 | # ... # 213 | (* dprint (fun () -> "shifted = " ^ subToString shifted);*) # 214 | let result = Dot (front, s) in # 215 | dprintf (fun p -> p.fmt "result = %a@\n" pp_sub result); # 216 | result # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi', TypDeclOpt _) # # File "src/core/ctxsub.ml", lines 250-255, characters 2-59: # 250 | ..function # 251 | | Empty -> MShift (Context.length cD0) # 252 | | Dec (cD', Decl { name = n; typ = mtyp; plicity; inductivity }) -> # 253 | let t = mctxToMMSub cD0 cD' in # 254 | let mtyp' = Whnf.cnormMTyp (mtyp, t) in # 255 | MDot (mdeclToMMVar cD0 n mtyp' plicity inductivity, t) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt _) # # File "src/core/ctxsub.ml", lines 261-263, characters 2-35: # 261 | ..function # 262 | | t when n <= 0 -> t # 263 | | MDot (_, t') -> drop (n - 1) t' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MShift _ # (However, some guarded clause may match this value.) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Substitution.cmo -c -impl src/core/substitution.ml) # File "src/core/substitution.ml", lines 105-124, characters 4-44: # 105 | ....match (n, s) with # 106 | | (_, Undefs) -> Undef # 107 | | (1, Dot (ft, _s)) -> ft # 108 | | (n, Dot (_ft, s)) -> bvarSub (n - 1) s # 109 | | (n, Shift k) -> Head (BVar (n + k)) # ... # 121 | Free BVar (n + k) ... -bp *) # 122 | Head (HClo (n + k, s, sigma)) # 123 | | (n, MSVar (k, ((s, t), sigma))) -> # 124 | Head (HMClo (n + k, ((s, t), sigma))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, (EmptySub|FSVar (_, _))) # # File "src/core/substitution.ml", lines 156-159, characters 12-73: # 156 | ............function # 157 | | (Last u, 1) -> u # 158 | | (Cons (u, _), 1) -> u # 159 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last u, 0) # # File "src/core/substitution.ml", lines 166-169, characters 12-73: # 166 | ............function # 167 | | (Last u, 1) -> u # 168 | | (Cons (u, _), 1) -> u # 169 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last u, 0) # # File "src/core/substitution.ml", lines 147-194, characters 7-10: # 147 | .......begin match bvarSub n s with # 148 | | Head (BVar x) -> # 149 | Head (Proj (BVar x, k)) # 150 | # 151 | | Head (PVar _ as h) -> # ... # 191 | | Head (AnnH _ ) -> failwith "Found head that is AnnH" # 192 | | Head (MMVar _ ) -> failwith "Found head that is MMVar" # 193 | | Head _ -> failwith "Found head that is not a BVar or PVar" # 194 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/substitution.ml", lines 203-206, characters 12-73: # 203 | ............function # 204 | | (Last u, 1) -> (u, s) # 205 | | (Cons (u, _), 1) -> (u, s) # 206 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last u, 0) # # File "src/core/substitution.ml", lines 197-210, characters 7-10: # 197 | .......begin match frontSub (Head h) s with # 198 | | Head h' -> # 199 | Head (Proj (h', k)) # 200 | # 201 | | Obj (Tuple (_, tuple)) -> # ... # 207 | in # 208 | (* Obj (Clo (nth s (tuple, k))) *) # 209 | Obj (Pair.fst (nth s (tuple, k))) # 210 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Obj (Lam (_, _, _)|Root (_, _, _, _)|LFHole (_, _, _)|Clo _) # # File "src/core/substitution.ml", lines 213-214, characters 7-26: # 213 | .......let Head h' = frontSub (Head h) s in # 214 | Head (AnnH (h', a)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undef|Obj _) # # File "src/core/substitution.ml", lines 138-221, characters 4-35: # 138 | ....match ft with # 139 | | Head (HClo (n, s', sigma)) -> Head (HClo (n, s', comp sigma s)) # 140 | | Head (HMClo (n, ((s', theta), sigma))) -> Head (HMClo (n, ((s', theta), comp sigma s))) # 141 | | Head (BVar n) -> bvarSub n s # 142 | | Head (FVar _) -> ft # ... # 218 | | Obj u -> Obj (Clo (u, s)) # 219 | | Undef -> Undef # 220 | | Head (MMVar (n, s')) -> Head (MMVar (n, comp s' s)) # 221 | | Head (FPVar (_n, _s' )) -> ft # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head (MPVar _|FMVar _) # # File "src/core/substitution.ml", line 263, characters 13-30: # 263 | let decSub (TypDecl (x, tA)) s = TypDecl (x, TClo (tA, s)) # ^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/substitution.ml", lines 292-300, characters 6-33: # 292 | ......match s with # 293 | | EmptySub -> None # 294 | | Undefs -> None # 295 | | Shift _ -> None # 296 | | Dot (Undef, s') -> lookup (n + 1) s' p # 297 | | Dot (Head (BVar k), s') -> # 298 | if k = p # 299 | then Some (Head (BVar n)) # 300 | else lookup (n + 1) s' p # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dot # (Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), # _) # # File "src/core/substitution.ml", lines 314-324, characters 6-37: # 314 | ......match s with # 315 | | EmptySub -> # 316 | invert'' maxoffset Undefs # 317 | | Undefs -> # 318 | invert'' maxoffset Undefs # ... # 321 | | Dot (Head (BVar k), s') -> # 322 | invert' (n + 1) s' (max k maxoffset) # 323 | | Dot (_, s') -> (* Is this really necessary? -ac *) # 324 | invert' (n + 1) s' maxoffset # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/substitution.ml", lines 335-350, characters 4-65: # 335 | ....match (s, cPsi) with # 336 | | (Shift _ (* 0 *), Null) -> # 337 | Null # 338 | | (Shift _, CtxVar psi) -> # 339 | CtxVar psi # ... # 347 | | (Dot (Undef, t), DDec (cPsi, _)) -> # 348 | strengthen t cPsi # 349 | | (Shift n, cPsi) -> # 350 | strengthen (Dot (Head (BVar (n + 1)), Shift (n + 1))) cPsi # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dot (Head (BVar _k), t), (Null|CtxVar _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Store.cmo -c -impl src/core/store.ml) # File "src/core/store.ml", lines 212-217, characters 6-45: # 212 | ......function # 213 | | Int.LF.Atom(_, b, _) -> # 214 | List.iter (fun a -> addSubord a b) acc ; [b] # 215 | # 216 | | Int.LF.PiTyp((Int.LF.TypDecl(_, tA1), _, _), tA2) -> # 217 | inspect (acc @ (inspect [] tA1)) tA2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/store.ml", lines 222-226, characters 6-56: # 222 | ......function # 223 | | Int.LF.Typ -> # 224 | List.iter (fun a -> addSubord a cid_tp) acc # 225 | | Int.LF.PiKind((Int.LF.TypDecl(_, tA1), _, _), tK2) -> # 226 | inspectKind cid_tp (acc @ (inspect [] tA1)) tK2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__ConvSigma.cmo -c -impl src/core/convSigma.ml) # File "src/core/convSigma.ml", lines 20-22, characters 2-54: # 20 | ..match (conv_list, k) with # 21 | | (d :: conv_list', 1) -> d # 22 | | (d :: conv_list', _) -> d + map conv_list' (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ([], _) # # File "src/core/convSigma.ml", lines 44-52, characters 2-21: # 44 | ..match tM with # 45 | | LF.Lam (loc, x, tN) -> # 46 | let tN' = strans_norm cD (LF.DDec (cPsi, LF.TypDeclOpt x)) (tN, S.LF.dot1 s) (1 :: conv_list) in # 47 | LF.Lam (loc, x, tN') # 48 | | LF.Root (loc, h, tS, plicity) -> # 49 | let h' = strans_head loc cD cPsi h conv_list in # 50 | let tS' = strans_spine cD cPsi (tS, s) conv_list in # 51 | LF.Root (loc, h', tS', plicity) # 52 | | LF.LFHole _ -> tM # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _|Tuple (_, _)) # # File "src/core/convSigma.ml", lines 55-101, characters 2-8: # 55 | ..match h with # 56 | | LF.BVar x -> LF.BVar (map conv_list x) # 57 | # 58 | | LF.MVar (LF.Offset u, sigma) -> # 59 | LF.MVar (LF.Offset u, strans_sub cD cPsi sigma conv_list) # ... # 98 | LF.BVar x' # 99 | with # 100 | | _ -> LF.Proj (LF.BVar x, j) # 101 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Proj # ((Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # HClo (_, _, _)|HMClo (_, _)), # _) # # File "src/core/convSigma.ml", lines 112-118, characters 2-26: # 112 | ..match mf with # 113 | | LF.ClObj (phat, LF.MObj tM) -> # 114 | LF.ClObj (phat, LF.MObj (strans_norm cD cPsi (tM, S.LF.id) conv_list )) # 115 | | LF.ClObj (phat, LF.PObj h) -> # 116 | LF.ClObj (phat, LF.PObj (strans_head Location.ghost cD cPsi h conv_list)) # 117 | | LF.MV u -> LF.MV u # 118 | | LF.MUndef -> LF.MUndef # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/convSigma.ml", lines 121-123, characters 2-55: # 121 | ..function # 122 | | (0, xs) -> n # 123 | | (k, x :: xs) -> shift_conv_list (n + x) (k - 1, xs) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, []) # # File "src/core/convSigma.ml", lines 163-170, characters 2-59: # 163 | ..match tA with # 164 | | LF.Atom (loc, a, tS ) -> # 165 | LF.Atom (loc, a, strans_spine cD cPsi (tS, s) conv_list ) # 166 | # 167 | | LF.PiTyp ((LF.TypDecl (x, tA), depend, plicity), tB) -> # 168 | let tA' = strans_typ cD cPsi (tA, s) conv_list in # 169 | let tB' = strans_typ cD cPsi (tB, S.LF.dot1 s) (1 :: conv_list) in # 170 | LF.PiTyp ((LF.TypDecl (x, tA'), depend, plicity), tB') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/convSigma.ml", lines 384-432, characters 2-24: # 384 | ..match Whnf.whnfTyp sA with # 385 | | LF.Sigma tRec as tA, s -> # 386 | (* FIXME: this doesn't do any strengthening !! -je *) # 387 | let tH = # 388 | mk_head ((new_mxvar n (cD, cPsi, LF.tclo tA s) plicity Inductivity.not_inductive, Whnf.m_id), s) # ... # 429 | let tN = # 430 | etaExpandStrGeneric new_mxvar mk_head loc cD cPsi' (tB, S.LF.dot1 s) plicity n (x :: names) # 431 | in # 432 | LF.Lam (loc, x, tN) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Prettyint.cmo -c -impl src/core/prettyint.ml) # File "src/core/prettyint.ml", lines 237-294, characters 4-39: # 237 | ....function # 238 | | LF.Atom (_, a, LF.Nil) -> # 239 | fprintf ppf "%s" # 240 | (R.render_cid_typ a) # 241 | # ... # 291 | | LF.TClo (typ, s) -> # 292 | fprintf ppf "TClo(%a,@ %a)" # 293 | (fmt_ppr_lf_typ cD cPsi lvl) typ # 294 | (fmt_ppr_lf_sub cD cPsi lvl) s # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/prettyint.ml", lines 434-545, characters 6-51: # 434 | ......function # 435 | | LF.HClo (h, s, sigma) -> # 436 | fprintf ppf "%s[%a[%a]]" # 437 | (R.render_bvar cPsi h) # 438 | (fmt_ppr_lf_offset cD) s # ... # 542 | (r_paren_if (paren s)) # 543 | # 544 | | LF.Proj (head, k) -> # 545 | fmt_head_with ("." ^ string_of_int k) head # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # AnnH (_, _) # # File "src/core/prettyint.ml", lines 769-771, characters 7-52: # 769 | .......match LF.(v.typ) with # 770 | | LF.ClTyp (_, cPsi) -> # 771 | fmt_ppr_lf_iterm LF.(v.cD) cPsi lvl ppf it # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/prettyint.ml", lines 785-794, characters 7-10: # 785 | .......begin match !g with # 786 | | None -> # 787 | fprintf ppf "?%a[%a]" # 788 | Name.pp LF.(v.name) # 789 | (fmt_ppr_lf_msub cD 0) theta # 790 | # 791 | | Some (LF.ICtx cPsi) -> # 792 | fprintf ppf "%a" # 793 | (fmt_ppr_lf_dctx LF.(v.cD) 0) (Whnf.cnormDCtx (cPsi, theta)) # 794 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/prettyint.ml", lines 878-890, characters 4-38: # 878 | ....function # 879 | | LF.Null -> () # 880 | # 881 | | LF.DDec (LF.Null, LF.TypDecl (x, tA)) -> # 882 | fprintf ppf "%a : %a" (* formerly "., %s : %a" -jd 2010-06-03 *) # ... # 887 | fprintf ppf "%a, %a : %a" # 888 | (ppr_typ_decl_dctx cD) cPsi # 889 | Name.pp x # 890 | (fmt_ppr_lf_typ cD cPsi 0) tA # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/prettyint.ml", lines 974-1006, characters 4-26: # 974 | ....function # 975 | | LF.Typ -> # 976 | fprintf ppf "type" # 977 | # 978 | | LF.PiKind ((LF.TypDecl (x, a), (Depend.Yes | Depend.Maybe), Plicity.Explicit), k) -> # ... # 1003 | (l_paren_if cond) # 1004 | (fmt_ppr_lf_typ LF.Empty cPsi 1) a # 1005 | (fmt_ppr_lf_kind (LF.DDec(cPsi, LF.TypDeclOpt x)) 0) k # 1006 | (r_paren_if cond) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # # File "src/core/prettyint.ml", lines 1097-1109, characters 4-40: # 1097 | ....function # 1098 | | LF.Queued id -> # 1099 | fprintf ppf "@[QUEUED %d@]" id # 1100 | | LF.(Eqn (id, cD, cPsi, INorm tM1, INorm tM2)) -> # 1101 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" # ... # 1106 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" # 1107 | id # 1108 | (fmt_ppr_lf_head cD cPsi l0) h1 # 1109 | (fmt_ppr_lf_head cD cPsi l0) h2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) # # File "src/core/prettyint.ml", lines 1147-1228, characters 4-39: # 1147 | ....function # 1148 | | Comp.TypBase (_, c, mS)-> # 1149 | let cond = lvl > 10 in # 1150 | fprintf ppf "%s@[<2>%s@[%a@]@]%s" # 1151 | (l_paren_if cond) # ... # 1225 | fprintf ppf "@[%a@]*" # 1226 | (fmt_ppr_cmp_typ cD 10) tau # 1227 | else # 1228 | fmt_ppr_cmp_typ cD lvl ppf tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDef (_, _, _) # # File "src/core/prettyint.ml", lines 1236-1241, characters 4-48: # 1236 | ....function # 1237 | | Comp.PatNil -> fprintf ppf "" # 1238 | | Comp.PatApp (_, pat, pat_spine) -> # 1239 | fprintf ppf "@[%a@]@ @[%a@]" # 1240 | (fmt_ppr_cmp_pattern cD cG (lvl + 1)) pat # 1241 | (fmt_ppr_pat_spine cD cG lvl) pat_spine # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # # File "src/core/prettyint.ml", lines 1245-1248, characters 6-65: # 1245 | ......match (ms, n) with # 1246 | | (_, 0) -> ms # 1247 | | (Comp.PatNil, _) -> ms # 1248 | | (Comp.PatApp (_, _, rest), n) -> dropSpineLeft rest (n-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatObs (_, _, _, _), 1) # # File "src/core/prettyint.ml", lines 1507-1550, characters 4-26: # 1507 | ....function # 1508 | | Comp.FunValue _ -> fprintf ppf " fn " # 1509 | | Comp.ThmValue _ -> fprintf ppf " rec " # 1510 | | Comp.MLamValue _ -> fprintf ppf " mlam " # 1511 | | Comp.CtxValue _ -> fprintf ppf " mlam " # ... # 1547 | fprintf ppf "%s%s%a%s" # 1548 | (l_paren_if cond) # 1549 | (R.render_cid_comp_const c) print_spine pat_spine # 1550 | (r_paren_if cond) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # FnValue (_, _, _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Whnf.cmo -c -impl src/core/whnf.ml) # File "src/core/whnf.ml", lines 36-39, characters 2-73: # 36 | ..match cPsi with # 37 | | Null -> tA # 38 | | DDec (cPsi', decl) -> # 39 | raiseType cPsi' (PiTyp ((decl, Depend.maybe, Plicity.implicit), tA)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar _ # # File "src/core/whnf.ml", lines 133-148, characters 2-64: # 133 | ..match sA' with # 134 | | (PiTyp ((decl, _, _), tA'), s') -> # 135 | let (u', tM) = # 136 | lowerMVar' # 137 | (DDec (cPsi, LF.decSub decl s')) # ... # 145 | # 146 | | (Atom (loc, a, tS), s') -> # 147 | let u' = newMVar None (cPsi, Atom (loc, a, SClo (tS, s'))) plicity inductivity in # 148 | (u', Root (Location.ghost, MVar (u', LF.id), Nil, plicity)).................... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _, _) # # File "src/core/whnf.ml", lines 152-162, characters 2-25: # 152 | ..match (u, sA) with # 153 | | ( Inst { instantiation; typ = ClTyp (_, cPsi); plicity; inductivity; _ } # 154 | , (PiTyp _, _) # 155 | ) -> # 156 | let (u', tM) = lowerMVar' cPsi sA plicity inductivity in # ... # 159 | # 160 | | (_, (TClo (tA, s), s')) -> lowerMVar1 u (tA, LF.comp s s') # 161 | # 162 | | (_, (Atom _, _)) -> u # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Inst {typ=ClTyp (_, _); _ }, (Sigma _, _)) # # File "src/core/whnf.ml", lines 319-329, characters 4-31: # 319 | ....match s with # 320 | | MShift _ -> None # 321 | | MDot (MUndef, t') -> lookup (n + 1) t' p # 322 | # 323 | | MDot (MV k, t') # ... # 326 | | MDot (ClObj (_, PObj (PVar (k, Shift 0))), t') -> # 327 | if k = p # 328 | then Some n # 329 | else lookup (n + 1) t' p # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MDot (CObj (CtxVar (CtxName _|CInst _)), _) # # File "src/core/whnf.ml", lines 385-387, characters 7-59: # 385 | .......match normHead (h, sigma) with # 386 | | Head h' -> Root (loc, h', normSpine (tS, sigma), plicity) # 387 | | Obj tM -> reduce (tM, LF.id) (normSpine (tS, sigma)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 404-407, characters 5-8: # 404 | .....begin match normMMVar mmt with # 405 | | ResMM mmt' -> Head (HMClo (k, (mmt', normSub' (s, sigma)))) # 406 | | Result (ISub r) -> normFt' (normFt' (LF.bvarSub k r, s), sigma) # 407 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 409-413, characters 5-8: # 409 | .....begin match normMMVar mmt with # 410 | (* The order in which we normalize mm, n, s, and sigma seems to matter..*) # 411 | | ResMM mmt' -> Head (MMVar (mmt', normSub' (s, sigma))) # 412 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) # 413 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 415-419, characters 5-8: # 415 | .....begin match normMMVar mmt with # 416 | | ResMM mmt' -> Head (MPVar (mmt', normSub' (s, sigma))) # 417 | | Result (IHead h) -> normFt' (normHead (h, s), sigma) # 418 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) # 419 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (ISub _|ICtx _) # # File "src/core/whnf.ml", lines 422-425, characters 5-8: # 422 | .....begin match normMMVar (mm, MShift 0) with # 423 | | ResMM (mm', _) -> Head (MVar (Inst mm', normSub' (s, sigma))) # 424 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) # 425 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 449-451, characters 2-32: # 449 | ..match ft with # 450 | | Head h -> normHead (h, s) # 451 | | Obj tM -> Obj (norm (tM, s)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 454-457, characters 2-37: # 454 | ..match tM with # 455 | | INorm n -> INorm (cnorm (n, mt)) # 456 | | IHead h -> IHead (cnormHead (h, mt)) # 457 | | ISub s -> ISub (cnormSub (s, mt)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ICtx _ # # File "src/core/whnf.ml", lines 463-466, characters 5-8: # 463 | .....begin match normHead (h, s) with # 464 | | Obj tM -> MObj tM # 465 | | Head h' -> PObj h' # 466 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 470-473, characters 2-64: # 470 | ..match normFt' (ft, LF.id) with # 471 | | Head h -> Head (Proj (h, i)) # 472 | | Obj (Tuple (_, tM)) -> Obj (reduceTuple (tM, i)) # 473 | | Obj _ -> Error.raise_violation "[reduceTupleFt] not a tuple" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 476-479, characters 2-50: # 476 | ..function # 477 | | (Last tM, 1) -> tM # 478 | | (Cons (tM, _), 1) -> tM # 479 | | (Cons (_, rest), k) -> reduceTuple (rest, k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last tM, 0) # # File "src/core/whnf.ml", lines 507-521, characters 2-17: # 507 | ..function # 508 | | (LFHole (l, _, _), _) -> # 509 | raise (InvalidLFHole l) # 510 | # 511 | | (Root (loc, h, sp, plicity), spine) -> # ... # 518 | Lam (loc, n, tM') # 519 | # 520 | | (Clo sM, tS) -> # 521 | reduce sM tS # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _), SClo _) # # File "src/core/whnf.ml", lines 524-526, characters 2-54: # 524 | ..function # 525 | | (Nil, s) -> s # 526 | | (App (tN, tS), s) -> App (tN, appendSpine (tS, s)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (SClo _, _) # # File "src/core/whnf.ml", lines 537-543, characters 5-8: # 537 | .....begin match mmvar.instantiation.contents with # 538 | | Some (ISub s) -> # 539 | let s0 = cnormSub (LF.comp (normSub s) (normSub s'), mt) in # 540 | LF.comp (Shift n) s0 # 541 | | None -> # 542 | MSVar (n, ((mmvar, mt), normSub s')) # 543 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 562-573, characters 2-37: # 562 | ..match tA with # 563 | | Atom (loc, a, tS) -> # 564 | Atom (loc, a, normSpine (tS, sigma)) # 565 | # 566 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> # ... # 570 | normTyp (tA, LF.comp s sigma) # 571 | # 572 | | Sigma recA -> # 573 | Sigma (normTypRec (recA, sigma)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/whnf.ml", lines 620-629, characters 5-8: # 620 | .....begin match !u with # 621 | | None -> # 622 | (Some (CInst (mmvar, mcomp theta t)), k) # 623 | | Some (ICtx cPsi) -> # 624 | (* | (Some (CInst ((_, { contents = Some (ICtx cPsi) }, _, _, _, _), theta)), k) -> *) # 625 | begin match Context.dctxToHat (cnormDCtx (cPsi, mcomp theta t)) with # 626 | | (None, i) -> (None, k + i) (* cnorm_psihat (None, k + i) t *) # 627 | | (Some cvar', i) -> (Some cvar', k + i) (* cnorm_psihat (Some cvar', k + i) t *) # 628 | end # 629 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 631-641, characters 5-8: # 631 | .....begin match LF.applyMSub offset t with # 632 | | CObj cPsi -> # 633 | begin match Context.dctxToHat cPsi with # 634 | | (None, i) -> (None, k + i) # 635 | | (Some cvar', i) -> (Some cvar', k + i) # ... # 638 | | ClObj _ -> # 639 | Error.raise_violation # 640 | (Format.asprintf "[cnorm_psihat] ClObj impossible; offset %d" offset) # 641 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MUndef # # File "src/core/whnf.ml", lines 656-659, characters 5-8: # 656 | .....begin match LF.applyMSub k t with # 657 | | MV k' -> Head (MVar (Offset k', s')) # 658 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) # 659 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, (PObj _|SObj _)) # # File "src/core/whnf.ml", lines 662-666, characters 5-8: # 662 | .....begin match LF.applyMSub k t with # 663 | | MV k' -> Head (PVar (k', s')) # 664 | | ClObj (_, PObj h) -> normHead (h, s') # 665 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) # 666 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/whnf.ml", lines 669-672, characters 5-8: # 669 | .....begin match LF.applyMSub sv t with # 670 | | MV sv' -> Head (HClo (k, sv', s')) # 671 | | ClObj (_, SObj r) -> normFt' (LF.bvarSub k r, s') # 672 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, (MObj _|PObj _)) # # File "src/core/whnf.ml", lines 674-677, characters 5-8: # 674 | .....begin match normMMVar mmt with # 675 | | ResMM (mm', mt) -> Head (MMVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) # 676 | | Result (INorm n) -> Obj (cnorm (norm (n, s), t)) # 677 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 679-684, characters 5-8: # 679 | .....begin match normMMVar mmt with # 680 | | ResMM (mm', mt) -> Head (MPVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) # 681 | | Result (IHead h) -> cnormFt' (normHead (h, s), t) # 682 | | Result (INorm n) -> # 683 | Obj (cnorm (norm (n, s), t)) # 684 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (ISub _|ICtx _) # # File "src/core/whnf.ml", lines 686-689, characters 5-8: # 686 | .....begin match normMMVar mmt with # 687 | | ResMM (mm', mt) -> Head (HMClo (k, ((mm', cnormMSub' (mt, t)), cnormSub (s, t)))) # 688 | | Result (ISub r) -> cnormFt' (normFt' (LF.bvarSub k r, s), t) # 689 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 691-694, characters 5-8: # 691 | .....begin match normMMVar (mm, MShift 0) with # 692 | | ResMM (mm', _) -> Head (MVar (Inst mm', cnormSub (s, t))) # 693 | | Result (INorm n) -> Obj (norm (n, s)) # 694 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 698-700, characters 2-38: # 698 | ..function # 699 | | (Head h, t) -> cnormHead' (h, t) # 700 | | (Obj tM, t) -> Obj (cnorm (tM, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undef, _) # # File "src/core/whnf.ml", lines 713-721, characters 5-8: # 713 | .....begin match cnormHead' (head, t) with # 714 | | Head h' -> Root (loc, h', cnormSpine (tS, t), plicity) # 715 | | Obj tM -> # 716 | (* in this ends up evaluating to a Root, we want to keep the # 717 | plicity that we had here *) # 718 | map_plicity # 719 | (fun _ -> plicity) # 720 | (reduce (tM, LF.id) (cnormSpine (tS, t))) # 721 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 728-729, characters 2-17: # 728 | ..match cnormHead' (h, t) with # 729 | | Head h' -> h' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undef|Obj _) # # File "src/core/whnf.ml", lines 752-758, characters 5-8: # 752 | .....begin match LF.applyMSub offset t with # 753 | | MV offset' -> SVar (offset', n, cnormSub (s', t)) # 754 | | ClObj (_, SObj r) -> # 755 | LF.comp (LF.comp (Shift n) r) (cnormSub (s', t)) # 756 | | ClObj _ -> # 757 | Error.raise_violation "[cnormSub] t @ offset must give an MV or ClObj SObj" # 758 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|CObj _) # # File "src/core/whnf.ml", lines 764-775, characters 5-56: # 764 | .....match mmvar.instantiation.contents with # 765 | | Some (ISub s) -> # 766 | dprintf # 767 | begin fun p -> # 768 | p.fmt "[cnormSub] @[<v>MSVar - MSInst for @[%a@]@]" # ... # 772 | let s0' = LF.comp (Shift n) s0 in # 773 | cnormSub (s0', t) # 774 | | None -> # 775 | MSVar (n, ((mmvar, cnormMSub (mcomp mt t)), s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 793-803, characters 2-34: # 793 | ..match tA with # 794 | | Atom (loc, a, tS) -> # 795 | Atom (loc, a, cnormSpine (tS, t)) # 796 | # 797 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> # ... # 800 | | TClo (tA, s) -> normTyp (cnormTyp (tA, t), cnormSub (s, t)) # 801 | # 802 | | Sigma recA -> # 803 | Sigma (cnormTypRec (recA, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/whnf.ml", lines 832-837, characters 5-8: # 832 | .....begin match !u with # 833 | | None -> # 834 | CtxVar (CInst (mmvar, mcomp theta t)) # 835 | | Some (ICtx cPhi) -> # 836 | cnormDCtx (cPhi, mcomp theta t) # 837 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 840-843, characters 5-8: # 840 | .....begin match LF.applyMSub psi t with # 841 | | CObj cPsi' -> normDCtx cPsi' # 842 | | MV k -> CtxVar (CtxOffset k) # 843 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|ClObj (_, _)) # # File "src/core/whnf.ml", lines 886-889, characters 5-8: # 886 | .....begin match mmvar.instantiation.contents with # 887 | | None -> cPsi # 888 | | Some (ICtx cPhi) -> normDCtx (cnormDCtx (cPhi, theta)) # 889 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 960-973, characters 8-11: # 960 | ........begin match h' with # 961 | | BVar i -> # 962 | begin match LF.bvarSub i (LF.comp r sigma) with # 963 | | Obj tM -> whnfRedex ((tM, LF.id), (tS, sigma)) # 964 | | Head (BVar k) -> (Root (loc, BVar k, SClo (tS, sigma), plicity), LF.id) # ... # 970 | let h' = PVar (p, LF.comp (LF.comp s r) sigma) in # 971 | whnf (Root (loc, h', SClo (tS, sigma), plicity), LF.id) # 972 | | MPVar ((q, t'), r') -> whnf (Root (loc, MPVar ((q, t'), LF.comp r' r), SClo (tS, sigma), plicity), LF.id) # 973 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| # HClo (_, _, _)|HMClo (_, _)) # # File "src/core/whnf.ml", lines 956-979, characters 5-8: # 956 | .....begin match u with # 957 | (* MPVar instantiation must be a head *) # 958 | | Some (IHead h) -> # 959 | let h' = cnormHead (h, t) in # 960 | begin match h' with # ... # 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in # 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in # 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) # 979 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 954-979, characters 5-8: # 954 | .....let ClTyp (PTyp tA, cPsi) = mmvar.typ in # 955 | let u = mmvar.instantiation.contents in # 956 | begin match u with # 957 | (* MPVar instantiation must be a head *) # 958 | | Some (IHead h) -> # ... # 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in # 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in # 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) # 979 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 995-1011, characters 8-11: # 995 | ........begin match whnfTyp (tA, LF.id) with # 996 | | (Atom (loc', a, tS'), _ (* id *)) -> # 997 | (* meta-variable is of atomic type; tS = Nil *) # 998 | let u' = { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in # 999 | (Root (loc, MMVar ((u', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) # ... # 1008 | (* let _ = lowerMMVar cD u in # 1009 | whnf (tM, sigma) *) # 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" # 1011 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Sigma _|TClo _), _) # # File "src/core/whnf.ml", lines 985-1012, characters 5-8: # 985 | .....begin match u with # 986 | (* MMVar instantiation must be normal *) # 987 | | Some (INorm tM) -> # 988 | (* constraints associated with u must be in solved form *) # 989 | let tM' = cnorm (tM, t) in # ... # 1009 | whnf (tM, sigma) *) # 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" # 1011 | end # 1012 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 983-1012, characters 5-8: # 983 | .....let ClTyp (MTyp tA, cPsi) = mmvar.typ in # 984 | let u = mmvar.instantiation.contents in # 985 | begin match u with # 986 | (* MMVar instantiation must be normal *) # 987 | | Some (INorm tM) -> # ... # 1009 | whnf (tM, sigma) *) # 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" # 1011 | end # 1012 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 1041-1053, characters 8-11: # 1041 | ........begin match whnfTyp (tA, LF.id) with # 1042 | | (Atom (loc', a, tS'), _ (* id *)) -> # 1043 | (* meta-variable is of atomic type; tS = Nil *) # 1044 | let u' = Inst { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in # 1045 | (Root (loc, MVar (u', LF.comp r' sigma), SClo (tS, sigma), plicity), LF.id) # ... # 1050 | *) # 1051 | ignore (lowerMVar cvar); # 1052 | whnf (tM, sigma) # 1053 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Sigma _|TClo _), _) # # File "src/core/whnf.ml", lines 1036-1053, characters 8-11: # 1036 | ........let ClTyp (MTyp tA, cPsi) = mmvar.typ in # 1037 | (* note: we could split this case based on tA; # 1038 | * this would avoid possibly building closures with id # 1039 | *) # 1040 | let r' = normSub r in # ... # 1050 | *) # 1051 | ignore (lowerMVar cvar); # 1052 | whnf (tM, sigma) # 1053 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 1023-1054, characters 5-8: # 1023 | .....begin match u with # 1024 | | Some (INorm tM) -> # 1025 | (* constraints associated with u must be in solved form *) # 1026 | let r' = normSub r in # 1027 | let tM' = # ... # 1051 | ignore (lowerMVar cvar); # 1052 | whnf (tM, sigma) # 1053 | end # 1054 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 1073-1082, characters 5-8: # 1073 | .....begin match LF.bvarSub i sigma with # 1074 | | Head (BVar j) -> # 1075 | ( Root (loc, Proj (BVar j, k), SClo (tS, sigma), plicity) # 1076 | , LF.id # 1077 | ) # 1078 | | Head (PVar (q, s)) -> # 1079 | ( Root (loc, Proj (PVar (q, s), k), SClo (tS, sigma), plicity) # 1080 | , LF.id # 1081 | ) # 1082 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/whnf.ml", lines 1098-1109, characters 11-14: # 1098 | ...........begin match LF.bvarSub i (LF.comp r sigma) with # 1099 | | Head (BVar x) -> # 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) # 1101 | , LF.id # 1102 | ) # ... # 1106 | ) # 1107 | | Undef -> # 1108 | Error.raise_violation ("[whnf] Undef looked up at " ^ string_of_int i) # 1109 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Obj _ # # File "src/core/whnf.ml", lines 1096-1118, characters 8-11: # 1096 | ........begin match cnormHead (h, t) with # 1097 | | BVar i -> # 1098 | begin match LF.bvarSub i (LF.comp r sigma) with # 1099 | | Head (BVar x) -> # 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) # ... # 1115 | | MPVar ((q, t'), r') -> # 1116 | let h' = Proj (MPVar ((q, t'), LF.comp (LF.comp r' r) sigma), k) in # 1117 | (Root (loc, h', SClo (tS, sigma), plicity), LF.id) # 1118 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| # HClo (_, _, _)|HMClo (_, _)) # # File "src/core/whnf.ml", lines 1120-1127, characters 8-9: # 1120 | ........let ClTyp (PTyp tA, cPsi) = mmvar.typ in # 1121 | (* constraints associated with q must be in solved form *) # 1122 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in # 1123 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in # 1124 | let h' = Proj (MPVar ((p', t), LF.comp r sigma), k) in # 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) # 1126 | , LF.id # 1127 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 1093-1128, characters 5-8: # 1093 | .....begin match mmvar.instantiation.contents with # 1094 | | Some (IHead h) -> # 1095 | (* constraints associated with q must be in solved form *) # 1096 | begin match cnormHead (h, t) with # 1097 | | BVar i -> # ... # 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) # 1126 | , LF.id # 1127 | ) # 1128 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 1143-1157, characters 2-39: # 1143 | ..function # 1144 | | ((LFHole (l, id, name), s1), _) -> raise (InvalidLFHole l) # 1145 | | ((Root _ as root, s1), (Nil, _)) -> whnf (root, s1) # 1146 | # 1147 | | ((Lam (_, _, tM), s1), (App (tN, tS), s2)) -> # ... # 1154 | whnfRedex (sM, (tS, LF.comp s2' s2)) # 1155 | # 1156 | | ((Clo (tM, s), s1), sS) -> # 1157 | whnfRedex ((tM, LF.comp s s1), sS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Root (_, _, _, _), _), (App (_, _), _)) # # File "src/core/whnf.ml", lines 1180-1191, characters 2-15: # 1180 | ..function # 1181 | | [] -> true # 1182 | | ({ contents = Queued _ } :: cnstrs) -> # 1183 | constraints_solved cnstrs # 1184 | | ({ contents = Eqn (_, _, _, INorm tM, INorm tN) } :: cnstrs) -> # ... # 1188 | | ({ contents = Eqn (_, _, _, IHead h1, IHead h2) } :: cnstrs) -> # 1189 | if convHead (h1, LF.id) (h2, LF.id) # 1190 | then constraints_solved cnstrs # 1191 | else false # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # {contents=Eqn (_, _, _, INorm tM, (IHead _|ISub _|ICtx _))}::_ # # File "src/core/whnf.ml", lines 1283-1288, characters 2-71: # 1283 | ..match (spine1, spine2) with # 1284 | | ((Nil, _), (Nil, _)) -> true # 1285 | | ((App (tM1, spine1), s1), (App (tM2, spine2), s2)) -> # 1286 | conv (tM1, s1) (tM2, s2) && convSpine (spine1, s1) (spine2, s2) # 1287 | | (spine1, (SClo (tS, s), s')) -> convSpine spine1 (tS, LF.comp s s') # 1288 | | ((SClo (tS, s), s'), spine2) -> convSpine (tS, LF.comp s s') spine2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Nil, _), (App (_, _), _)) # # File "src/core/whnf.ml", lines 1457-1465, characters 2-32: # 1457 | ..match (cPsi, cPsi') with # 1458 | | (_, Empty) -> true # 1459 | | Dec (cPsi1, TypDecl (_, tA)), Dec (cPsi2, TypDecl (_, tB)) -> # 1460 | if convTyp (tA, LF.id) (tB, LF.id) # 1461 | then convSubsetCtx cPsi1 cPsi2 # 1462 | else # 1463 | (* keep tBs around and check that tA is a subordinate of tB, # 1464 | i.e. anything in tA cannot influence tB *) # 1465 | convSubsetCtx cPsi1 cPsi' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dec (_, TypDecl (_, _)), Dec (cPsi2, TypDeclOpt _)) # # File "src/core/whnf.ml", lines 1591-1593, characters 4-76: # 1591 | ....match mO with # 1592 | | CObj cPsi -> CObj (normDCtx cPsi) # 1593 | | ClObj (phat, n) -> ClObj (cnorm_psihat phat m_id, normMObj (n, LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|MV _) # # File "src/core/whnf.ml", lines 1604-1624, characters 2-49: # 1604 | ..function # 1605 | | Comp.TypBase (loc, c, mS) -> # 1606 | Comp.TypBase (loc, c, normMetaSpine mS) # 1607 | | Comp.TypCobase (loc, c, mS) -> # 1608 | Comp.TypCobase (loc, c, normMetaSpine mS) # ... # 1621 | Comp.TypPiBox # 1622 | (loc, (Decl { d with typ = typ' }), tau') # 1623 | # 1624 | | Comp.TypInd tau -> Comp.TypInd (normCTyp tau) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypPiBox (loc, DeclOpt _, _) # # File "src/core/whnf.ml", lines 1640-1643, characters 2-30: # 1640 | ..match cdecl with # 1641 | | Decl d -> # 1642 | let typ' = cnormMTyp (d.typ, t) in # 1643 | Decl { d with typ = typ' } # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/whnf.ml", lines 1646-1670, characters 2-60: # 1646 | ..function # 1647 | | (Comp.TypBase (loc, a, mS), t) -> # 1648 | let mS' = cnormMetaSpine (mS, t) in # 1649 | Comp.TypBase (loc, a, mS') # 1650 | | (Comp.TypCobase (loc, a, mS), t) -> # ... # 1667 | | (Comp.TypClo (tT, t'), t) -> # 1668 | cnormCTyp (tT, mcomp t' t) # 1669 | # 1670 | | (Comp.TypInd tau, t) -> Comp.TypInd (cnormCTyp (tau, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _), _) # # File "src/core/whnf.ml", lines 1673-1675, characters 2-47: # 1673 | ..match cdecl with # 1674 | | Comp.CTypDecl(n, typ, wf_t) -> # 1675 | Comp.CTypDecl(n, cnormCTyp (typ, t), wf_t) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", lines 1691-1707, characters 2-70: # 1691 | ..function # 1692 | | (Comp.TypBase (loc, c, mS), t) -> # 1693 | let mS' = normMetaSpine (cnormMetaSpine (mS, t)) in # 1694 | (Comp.TypBase (loc, c, mS'), m_id) # 1695 | | (Comp.TypCobase (loc, c, mS), t) -> # ... # 1704 | # 1705 | | (Comp.TypClo (tT, t'), t) -> cwhnfCTyp (tT, mcomp t' t) # 1706 | # 1707 | | (Comp.TypInd tau, t) -> (Comp.TypInd (Comp.TypClo (tau, t)), m_id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _), _) # # File "src/core/whnf.ml", lines 1902-1905, characters 2-74: # 1902 | ..match cG with # 1903 | | Empty -> Empty # 1904 | | Dec (cG, Comp.CTypDecl (x, tau, flag)) -> # 1905 | Dec (cwhnfCtx (cG, t), Comp.CTypDecl (x, Comp.TypClo (tau, t), flag)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/whnf.ml", lines 1928-1930, characters 2-62: # 1928 | ..function # 1929 | | Comp.CTypDecl (x, tau, flag) -> # 1930 | Comp.CTypDecl (x, normCTyp (cnormCTyp (tau, m_id)), flag) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", lines 1957-1962, characters 2-41: # 1957 | ..match cD with # 1958 | | Empty -> Empty # 1959 | | Dec (cD, Decl d) -> # 1960 | let typ' = normMTyp d.typ in # 1961 | let cD' = normMCtx cD in # 1962 | Dec (cD', Decl { d with typ = typ' }) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD, DeclOpt _) # # File "src/core/whnf.ml", lines 1990-1993, characters 2-60: # 1990 | ..match (tM1, tM2) with # 1991 | | (INorm n1, INorm n2) -> conv (n1, LF.id) (n2, LF.id) # 1992 | | (ISub s1, ISub s2) -> convSub s1 s2 # 1993 | | (IHead h1, IHead h2) -> convHead (h1, LF.id) (h2, LF.id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (INorm n1, (IHead _|ISub _|ICtx _)) # # File "src/core/whnf.ml", lines 1998-2004, characters 2-25: # 1998 | ..match (mS, mS') with # 1999 | | (Comp.MetaNil, Comp.MetaNil) -> true # 2000 | | (Comp.MetaApp (mO, mT, mS, p1), Comp.MetaApp (mO', mT', mS', p2)) -> # 2001 | convMetaObj mO mO' # 2002 | && convMetaTyp mT mT' # 2003 | && convMetaSpine mS mS' # 2004 | && Plicity.(p1 = p2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaNil, MetaApp (_, _, _, _)) # # File "src/core/whnf.ml", lines 2071-2075, characters 2-42: # 2071 | ..match (d1, d2) with # 2072 | | (CTypDeclOpt x1, CTypDeclOpt x2) -> Name.(x1 = x2) # 2073 | | (CTypDecl (x1, tau1, w1), CTypDecl (x2, tau2, w2)) -> # 2074 | Name.(x1 = x2) && Stdlib.(=) w1 w2 # 2075 | && convCTyp (tau1, m_id) (tau2, m_id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CTypDeclOpt x1, CTypDecl (_, _, _)) # # File "src/core/whnf.ml", lines 2095-2105, characters 2-8: # 2095 | ..match sA with # 2096 | | (Atom (loc, _, _) as tP, s) -> # 2097 | let u = newMVar (Some n) (cPsi, tclo tP s) plicity inductivity in # 2098 | Root (loc, MVar (u, s'), Nil, plicity) # 2099 | # ... # 2102 | ( Name.location x # 2103 | , x # 2104 | , etaExpandMV (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity # 2105 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/whnf.ml", lines 2120-2130, characters 2-8: # 2120 | ..match sA with # 2121 | | (Atom _ as tP, s) -> # 2122 | let u = newMMVar (Some n) (cD, cPsi, tclo tP s) plicity inductivity in # 2123 | Root (loc, MMVar ((u, m_id), s'), Nil, plicity) # 2124 | # ... # 2127 | ( loc # 2128 | , x # 2129 | , etaExpandMMV loc cD (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity # 2130 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/whnf.ml", lines 2135-2141, characters 2-42: # 2135 | ..match tM with # 2136 | | Lam (_, _, tM) -> closed (tM, LF.dot1 s) # 2137 | | Root (_, h, tS, _) -> # 2138 | closedHead h # 2139 | && closedSpine (tS, s) # 2140 | | LFHole _ -> false # 2141 | | Tuple (_, tup) -> closedTuple (tup, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Clo _ # # File "src/core/whnf.ml", lines 2166-2174, characters 2-28: # 2166 | ..function # 2167 | | EmptySub -> true # 2168 | | Undefs -> true # 2169 | | SVar (_, _, sigma) -> closedSub sigma # 2170 | | Shift _ -> true # 2171 | | Dot (ft, s) -> closedFront ft && closedSub s # 2172 | | MSVar (_, ((v, t), s)) -> # 2173 | (* the case for MMVar doesn't also check the substitution -je *) # 2174 | is_mmvar_instantiated v..................... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # FSVar (_, _) # # File "src/core/whnf.ml", lines 2185-2190, characters 2-40: # 2185 | ..match tA with # 2186 | | Atom (_, _, tS) -> closedSpine (tS, s) # 2187 | | PiTyp ((t_dec, _, _), tA) -> # 2188 | closedDecl (t_dec, s) # 2189 | && closedTyp (tA, LF.dot1 s) # 2190 | | Sigma recA -> closedTypRec (recA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/whnf.ml", lines 2208-2211, characters 5-8: # 2208 | .....begin match mmvar.instantiation.contents with # 2209 | | None -> false # 2210 | | Some (ICtx cPsi) -> closedDCtx (cnormDCtx (cPsi, theta)) # 2211 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 2241-2244, characters 2-56: # 2241 | ..function # 2242 | | CObj cPsi -> closedDCtx cPsi # 2243 | | ClObj (phat, t) -> # 2244 | closedDCtx (Context.hatToDCtx phat) && closedMObj t # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|MV _) # # File "src/core/whnf.ml", lines 2255-2264, characters 2-37: # 2255 | ..function # 2256 | | Comp.TypBase (_, _, mS) -> closedMetaSpine mS # 2257 | | Comp.TypCobase (_, _, mS) -> closedMetaSpine mS # 2258 | | Comp.TypBox (_, cT) -> closedMetaTyp cT # 2259 | | Comp.TypArr (_, cT1, cT2) -> closedCTyp cT1 && closedCTyp cT2 # 2260 | | Comp.TypCross (_, cTs) -> List2.for_all (fun cT -> closedCTyp cT) cTs # 2261 | | Comp.TypPiBox (_, ctyp_decl, cT) -> # 2262 | closedCTyp cT && closedDecl ctyp_decl # 2263 | | Comp.TypClo (cT, t) -> closedCTyp (cnormCTyp (cT, t)) (* to be improved Sun Dec 13 11:45:15 2009 -bp *) # 2264 | | Comp.TypInd tau -> closedCTyp tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDef (_, _, _) # # File "src/core/whnf.ml", line 2406, characters 37-65: # 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", line 2406, characters 8-36: # 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", line 2412, characters 32-55: # 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/whnf.ml", line 2412, characters 8-31: # 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/whnf.ml", lines 2418-2420, characters 2-93: # 2418 | ..function # 2419 | | (Atom _, _) as sA -> (cPsi, whnfTyp sA) # 2420 | | (PiTyp ((decl, _, _), tB), s) -> lowerTyp (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Sigma _|TClo _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Apxnorm.cmo -c -impl src/core/apxnorm.ml) # File "src/core/apxnorm.ml", lines 44-49, characters 2-33: # 44 | ..function # 45 | | Apx.LF.Lam (loc, x, m') -> Apx.LF.Lam(loc, x, shiftApxTerm (k + 1) m') # 46 | | Apx.LF.Root (loc, h , spine) -> # 47 | let h' = shiftApxHead k h in # 48 | let spine' = shiftApxSpine k spine in # 49 | Apx.LF.Root(loc, h', spine') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (LFHole (_, _)|Tuple (_, _)|Ann (_, _, _)) # # File "src/core/apxnorm.ml", lines 70-80, characters 2-35: # 70 | ..function # 71 | | Apx.LF.EmptySub -> Apx.LF.EmptySub # 72 | | Apx.LF.Id -> Apx.LF.Id # 73 | | Apx.LF.Dot (Apx.LF.Head h, s) -> # 74 | let h' = shiftApxHead k h in # ... # 77 | | Apx.LF.Dot (Apx.LF.Obj m, s) -> # 78 | let m' = shiftApxTerm k m in # 79 | let s' = shiftApxSub k s in # 80 | Apx.LF.Dot (Apx.LF.Obj m', s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (SVar (_, _)|FSVar (_, _)) # # File "src/core/apxnorm.ml", lines 126-128, characters 4-49: # 126 | ....match (l_delta, t) with # 127 | | (0, t) -> t # 128 | | (k, Int.LF.MDot(_ , t')) -> drop t' (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, MShift _) # # File "src/core/apxnorm.ml", lines 134-151, characters 6-36: # 134 | ......match Substitution.LF.applyMSub offset t with # 135 | | Int.LF.MV u -> Apx.LF.Offset u # 136 | | Int.LF.ClObj (_, clobj) -> # 137 | let (u, mtyp) = Whnf.mctxLookup cD offset' in # 138 | dprintf # ... # 148 | end; # 149 | let t' = drop t l_delta in # 150 | let mtyp' = Whnf.cnormMTyp (mtyp, t')in # 151 | Apx.LF.MInst (clobj, mtyp') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|CObj _) # # File "src/core/apxnorm.ml", lines 267-276, characters 7-10: # 267 | .......begin match Substitution.LF.applyMSub offset t with # 268 | | Int.LF.CObj (Int.LF.CtxVar (Int.LF.CtxOffset psi0)) -> # 269 | Apx.LF.CtxVar (Apx.LF.CtxOffset psi0) # 270 | | Int.LF.CObj Int.LF.Null -> # 271 | Apx.LF.Null # 272 | | Int.LF.CObj (Int.LF.DDec _) -> # 273 | raise (Error (loc, CtxOverGeneral)) # 274 | (* Apx.LF.CtxVar (Apx.LF.CInst cPsi) *) # 275 | | Int.LF.MV offset' -> Apx.LF.CtxVar (Apx.LF.CtxOffset offset') # 276 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CObj (CtxVar (CtxName _|CInst _)) # # File "src/core/apxnorm.ml", lines 288-355, characters 2-27: # 288 | ..match e with # 289 | | Apx.Comp.Fn (loc, f, e) -> # 290 | Apx.Comp.Fn (loc, f, cnormApxExp cD delta e cDt) # 291 | | Apx.Comp.Fun (loc, fbr) -> # 292 | Apx.Comp.Fun (loc, cnormApxFBranches cD delta fbr cDt) # ... # 352 | # 353 | | Apx.Comp.Var _ # 354 | | Apx.Comp.DataConst _ # 355 | | Apx.Comp.Const _ -> e # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ann (_, _, _) # # File "src/core/apxnorm.ml", lines 388-392, characters 4-63: # 388 | ....function # 389 | | Apx.LF.Empty -> cD'' # 390 | | Apx.LF.Dec (delta2', Apx.LF.Decl (x, _, plicity)) -> # 391 | let cD1'' = append_mctx cD'' delta2' in # 392 | Int.LF.Dec (cD1'', Int.LF.DeclOpt { name = x; plicity }) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (delta2', DeclOpt _) # # File "src/core/apxnorm.ml", lines 421-431, characters 2-27: # 421 | ..function # 422 | | Apx.LF.Lam (_, _, m') -> collectApxTerm fMVs m' # 423 | # 424 | | Apx.LF.Root (_, h, s) -> # 425 | let fMVs' = collectApxHead fMVs h in # ... # 428 | | Apx.LF.Tuple (_, tuple) -> # 429 | collectApxTuple fMVs tuple # 430 | # 431 | | Apx.LF.LFHole _ -> fMVs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ann (_, _, _) # # File "src/core/apxnorm.ml", line 502, characters 27-50: # 502 | and collectApxTypDecl fMVs (Apx.LF.TypDecl (_, a))= # ^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/apxnorm.ml", lines 530-538, characters 2-44: # 530 | ..function # 531 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp a, c_psi), _) # 532 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp a, c_psi), _) -> # 533 | let fMVs' = collectApxDCtx fMVs c_psi in # 534 | collectApxTyp fMVs' a # 535 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp (_, c_phi), c_psi), _) -> # 536 | let fMVs' = collectApxDCtx fMVs c_psi in # 537 | collectApxDCtx fMVs' c_phi # 538 | | Apx.LF.Decl(_, Apx.LF.CTyp _, _) -> fMVs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt _ # # File "src/core/apxnorm.ml", lines 556-563, characters 2-31: # 556 | ..function # 557 | | Apx.LF.Atom (loc, c, tS) -> # 558 | collectApxSpine fMVd tS # 559 | | Apx.LF.PiTyp ((Apx.LF.TypDecl (x, tA), _, _ ), tB) -> # 560 | let fMVd1 = collectApxTyp fMVd tA in # 561 | collectApxTyp fMVd1 tB # 562 | | Apx.LF.Sigma trec -> # 563 | collectApxTypRec fMVd trec # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/apxnorm.ml", lines 573-581, characters 2-45: # 573 | ..function # 574 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp(_, cPhi), cPsi), _) -> # 575 | let fMVd1 = collectApxDCtx fMVd cPsi in # 576 | collectApxDCtx fMVd1 cPhi # 577 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp tA, cPsi), _) # 578 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp tA, cPsi), _) -> # 579 | let fMVd1 = collectApxDCtx fMVd cPsi in # 580 | collectApxTyp fMVd1 tA # 581 | | Apx.LF.Decl (_, Apx.LF.CTyp _, _) -> fMVd # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt _ # # File "src/core/apxnorm.ml", lines 584-603, characters 2-32: # 584 | ..function # 585 | | Apx.Comp.TypArr (_, tau1, tau2) -> # 586 | let fMVd1 = collectApxCompTyp fMVd tau1 in # 587 | collectApxCompTyp fMVd1 tau2 # 588 | | Apx.Comp.TypCross (_, taus) -> # ... # 600 | let fMVd1 = collectApxDCtx fMVd cPsi in # 601 | collectApxDCtx fMVd1 cPhi # 602 | | Apx.Comp.TypBase (_loc, _c, mS) -> # 603 | collectApxMetaSpine fMVd mS # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypBox (_, (_, CTyp _)) # # File "src/core/apxnorm.ml", lines 606-618, characters 2-32: # 606 | ..function # 607 | | Apx.Comp.PatMetaObj (loc, mO) -> # 608 | collectApxMetaObj fMVd mO # 609 | | Apx.Comp.PatConst (loc, c, pat_spine) -> # 610 | collectApxPatSpine fMVd pat_spine # ... # 615 | |> List.fold_left collectApxPattern fMVd # 616 | | Apx.Comp.PatAnn (loc, pat, tau) -> # 617 | let fMVd1 = collectApxCompTyp fMVd tau in # 618 | collectApxPattern fMVd1 pat # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatFVar (_, _) # # File "src/core/apxnorm.ml", lines 836-886, characters 2-33: # 836 | ..function # 837 | | Apx.Comp.Fn (loc, f, e) -> # 838 | Apx.Comp.Fn (loc, f, fmvApxExp fMVs cD d_param e) # 839 | # 840 | | Apx.Comp.Fun (loc, fbr) -> # ... # 883 | # 884 | | Apx.Comp.Var _ # 885 | | Apx.Comp.DataConst _ # 886 | | Apx.Comp.Const _ as i -> i # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ann (_, _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Abstract.cmo -c -impl src/core/abstract.ml) # File "src/core/abstract.ml", lines 253-257, characters 4-47: # 253 | ....function # 254 | | I.Atom _ -> (k, tS) # 255 | | I.PiTyp (_, tA') -> # 256 | let tN = I.Root (loc, I.BVar k, I.Nil, Plicity.explicit) in # 257 | etaExpSpine (k + 1) (I.App (tN, tS)) tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/abstract.ml", lines 260-263, characters 4-49: # 260 | ....match tA with # 261 | | I.Atom _ -> tM # 262 | | I.PiTyp ((I.TypDecl (x, _), _, _), tA') -> # 263 | I.Lam (loc, x, etaExpPrefix loc (tM, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/abstract.ml", lines 267-269, characters 4-19: # 267 | ....match h with # 268 | | I.BVar x -> I.BVar (x + k - 1) # 269 | | I.FVar _ -> h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/abstract.ml", lines 317-332, characters 2-17: # 317 | ..function # 318 | | I.Empty -> I.Empty # 319 | # 320 | | I.Dec (cQ', FDecl (MMV _, Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), _, _)))) -> # 321 | begin match raiseType cPsi tA with # ... # 329 | I.Dec (ctxToCtx cQ', I.TypDecl (x, tA)) # 330 | # 331 | | I.Dec (cQ', FDecl (_, Impure)) -> # 332 | ctxToCtx cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec # (_, FDecl (MMV _, Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) # # File "src/core/abstract.ml", lines 336-355, characters 2-20: # 336 | ..function # 337 | | I.Empty -> I.Empty # 338 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> # 339 | let plicity' = f plicity in # 340 | let cQ'' = ctxToMCtx f cQ' in # ... # 352 | | I.Dec (cQ', FDecl (FV _, Pure (LFTyp tA)))-> # 353 | Error.raise_violation "Free variables in computation-level reconstruction." # 354 | | I.Dec (cQ', FDecl (_, Impure)) -> # 355 | ctxToMCtx f cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (MMV (_, _), Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 358-365, characters 2-76: # 358 | ..function # 359 | | I.Empty -> I.Empty # 360 | | I.Dec (cQ', I.Decl { name = x; typ = I.CTyp (Option.Some w); plicity; inductivity }) -> # 361 | let cQ'' = mctxToCtx cQ' in # 362 | I.Dec (cQ'', CtxV (x, w, plicity, inductivity)) # 363 | | I.Dec (cQ', I.Decl { name = n; typ = ityp; plicity; inductivity }) -> # 364 | let cQ'' = mctxToCtx cQ' in # 365 | I.Dec (cQ'', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cQ', DeclOpt _) # # File "src/core/abstract.ml", lines 368-384, characters 2-32: # 368 | ..function # 369 | | I.Empty -> I.Empty # 370 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, _, _)))) -> # 371 | let cQ'' = ctxToMCtx_pattern (n :: names) cQ' in # 372 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive }) # ... # 381 | I.Dec (cQ'', I.Decl { name = x; typ =I.CTyp (Some w); plicity; inductivity }) # 382 | # 383 | | I.Dec (cQ', FDecl (_, Impure)) -> # 384 | ctxToMCtx_pattern names cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (FV _, Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 409-421, characters 2-35: # 409 | ..function # 410 | | (I.Lam (loc, x, tM), s) -> # 411 | let (cQ', tM') = collectTerm p cQ (cvar, offset + 1) (tM, LF.dot1 s) in # 412 | (cQ', I.Lam (loc, x, tM')) # 413 | | (I.Tuple (loc, tuple), s) -> # ... # 418 | let (cQ'', tS') = collectSpine p cQ' phat (tS, s) in # 419 | (cQ'', I.Root (loc, h', tS', plicity)) # 420 | | (I.LFHole (loc, id, name), s) -> # 421 | (cQ, I.LFHole (loc, id, name)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _, _) # # File "src/core/abstract.ml", lines 481-485, characters 7-49: # 481 | .......let (cD_d, I.Decl { typ = mtyp; plicity; inductivity; _ }) = Store.FCVar.get name in # 482 | let mtyp' = Whnf.cnormMTyp (mtyp, Int.LF.MShift (p - Context.length cD_d)) in # 483 | if !pat_flag # 484 | then MetaTyp (mtyp', Plicity.explicit, Inductivity.not_inductive) # 485 | else MetaTyp (mtyp', plicity, inductivity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, DeclOpt { _ }) # # File "src/core/abstract.ml", lines 512-517, characters 10-11: # 512 | ..........let (cQ', MetaTyp (typ, plicity, inductivity)) = # 513 | addVar loc p cQ (MMV (name, instantiation)) (MetaTyp (typ, plicity, inductivity)) # 514 | in # 515 | ( cQ' # 516 | , I.{ v with typ; plicity; inductivity } # 517 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cQ', LFTyp _) # # File "src/core/abstract.ml", lines 615-652, characters 2-26: # 615 | ..function # 616 | | (I.BVar _ as head, _) # 617 | | (I.Const _ as head, _) -> (cQ, head) # 618 | # 619 | | (I.FVar name, _) -> # ... # 649 | # 650 | | (I.Proj (head, j), s) -> # 651 | let (cQ', h') = collectHead k cQ phat loc (head, s) in # 652 | (cQ', I.Proj (h', j)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)), _) # # File "src/core/abstract.ml", lines 656-671, characters 2-27: # 656 | ..function # 657 | | (I.Atom (loc, a, tS), s) -> # 658 | let (cQ', tS') = collectSpine p cQ phat (tS, s) in # 659 | (cQ', I.Atom (loc, a, tS')) # 660 | # ... # 668 | # 669 | | (I.Sigma typRec, s) -> # 670 | let (cQ', typRec') = collectTypRec p cQ phat (typRec, s) in # 671 | (cQ', I.Sigma typRec') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 686-691, characters 2-66: # 686 | ..function # 687 | | (I.Typ, _) -> (cQ, I.Typ) # 688 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> # 689 | let (cQ', tA') = collectTyp p cQ phat (tA, s) in # 690 | let (cQ'', tK') = collectKind p cQ' (cvar, offset + 1) (tK, LF.dot1 s) in # 691 | (cQ'', I.PiKind ((I.TypDecl (x, tA'), depend, plicity), tK')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", line 759, characters 22-32: # 759 | let collectCDecl p cQ (I.Decl d) = # ^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/abstract.ml", lines 784-790, characters 2-8: # 784 | ..function # 785 | | (I.Typ, _) -> I.Typ # 786 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> # 787 | I.PiKind # 788 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) # 789 | , abstractKind cQ (offset + 1) (tK, LF.dot1 s) # 790 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 795-803, characters 2-8: # 795 | ..function # 796 | | (I.Atom (loc, a, tS), s (* id *)) -> # 797 | I.Atom (loc, a, abstractSpine cQ offset (tS, s)) # 798 | # 799 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> # 800 | I.PiTyp # 801 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) # 802 | , abstractTyp cQ (offset + 1) (tB, LF.dot1 s) # 803 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 818-843, characters 2-8: # 818 | ..function # 819 | | (I.Lam (loc, x, tM), s) -> # 820 | I.Lam (loc, x, abstractTerm cQ (offset + 1) (tM, LF.dot1 s)) # 821 | # 822 | | ( I.(Root # ... # 840 | , abstractHead cQ offset tH # 841 | , abstractSpine cQ offset (tS, s) # 842 | , plicity # 843 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((LFHole (_, _, _)|Clo _|Tuple (_, _)), _) # # File "src/core/abstract.ml", lines 846-851, characters 2-59: # 846 | ..function # 847 | | I.BVar _ as tH -> tH # 848 | | I.Const _ as tH -> tH # 849 | | I.FVar n -> I.BVar (index_of cQ (FV n) + offset) # 850 | | I.AnnH _ -> # 851 | Error.raise_not_implemented "[abstractHead] AnnH case" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MMVar _|MPVar _|MVar _|PVar _|Proj (_, _)|FMVar _|FPVar _|HClo (_, _, _)| # HMClo (_, _)) # # File "src/core/abstract.ml", lines 855-869, characters 2-85: # 855 | ..match (s, cPsi) with # 856 | | (I.Shift _, I.Null) -> tS # 857 | | (I.Shift k, I.DDec _) -> # 858 | subToSpine cQ offset (I.Dot (I.Head (I.BVar (k + 1)), I.Shift (k + 1)), cPsi) tS # 859 | # ... # 866 | (* subToSpine cQ offset s (I.App (I.Root (I.BVar k, I.Nil), tS)) *) # 867 | # 868 | | (I.Dot (I.Obj tM, s), I.DDec (cPsi', _)) -> # 869 | subToSpine cQ offset (s, cPsi') (I.App (abstractTerm cQ offset (tM, LF.id), tS)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Shift _, CtxVar _) # # File "src/core/abstract.ml", lines 880-894, characters 2-48: # 880 | ..function # 881 | | I.Empty -> I.Empty # 882 | | I.Dec (cQ, FDecl (_, Impure)) -> abstractCtx cQ # 883 | | I.Dec (cQ, FDecl (MMV (n, r), Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), plicity, inductivity)))) -> # 884 | let cQ' = abstractCtx cQ in # ... # 891 | | I.Dec (cQ, FDecl (FV f, Pure (LFTyp tA))) -> # 892 | let cQ' = abstractCtx cQ in # 893 | let tA' = abstractTyp cQ 0 (tA, LF.id) in # 894 | I.Dec (cQ', FDecl (FV f, Pure (LFTyp tA'))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec # (_, # FDecl (MMV (_, _), Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) # # File "src/core/abstract.ml", lines 900-906, characters 2-39: # 900 | ..match cPsi with # 901 | | I.Null -> I.Null # 902 | | I.CtxVar psi -> cPsi # 903 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> # 904 | let cPsi' = abstractDctx cQ cPsi (l - 1) in # 905 | let tA' = abstractTyp cQ (l - 1) (tA, LF.id) in # 906 | I.DDec (cPsi', I.TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/abstract.ml", lines 930-940, characters 2-20: # 930 | ..function # 931 | | (I.Atom (loc, a, tS), s (* id *)) -> # 932 | I.Atom (loc, a, abstractMVarSpine cQ offset (tS, s)) # 933 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> # 934 | I.PiTyp # ... # 937 | ) # 938 | | (I.Sigma typRec, s) -> # 939 | let typRec' = abstractMVarTypRec cQ offset (typRec, s) in # 940 | I.Sigma typRec' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 954-962, characters 2-29: # 954 | ..function # 955 | | (I.Lam (loc, x, tM), s) -> # 956 | I.Lam (loc, x, abstractMVarTerm cQ offset (tM, LF.dot1 s)) # 957 | | (I.Tuple (loc, tuple), s) -> # 958 | I.Tuple (loc, abstractMVarTuple cQ offset (tuple, s)) # 959 | | (I.Root (loc, tH, tS, plicity), s (* LF.id *)) -> # 960 | I.Root (loc, abstractMVarHead cQ offset tH, abstractMVarSpine cQ offset (tS, s), plicity) # 961 | | (I.LFHole (loc, id, name), s) -> # 962 | I.LFHole (loc, id, name) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _, _) # # File "src/core/abstract.ml", lines 1000-1036, characters 2-46: # 1000 | ..function # 1001 | | I.BVar _ as mH -> mH # 1002 | | I.Const _ as mH -> mH # 1003 | # 1004 | | I.FPVar ns -> I.PVar (abstractFVarSub cQ loff ns) # ... # 1033 | Error.raise_not_implemented "[abstractMVarHead] AnnH case" # 1034 | # 1035 | | I.Proj (head, k) -> # 1036 | I.Proj (abstractMVarHead cQ loff head, k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (FVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/abstract.ml", lines 1091-1097, characters 2-39: # 1091 | ..function # 1092 | | I.Null -> I.Null # 1093 | | I.CtxVar cv -> I.CtxVar (abstractCtxVar cQ loff cv) # 1094 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> # 1095 | let cPsi' = abstractMVarDctx cQ loff cPsi in # 1096 | let tA' = abstractMVarTyp cQ loff (tA, LF.id) in # 1097 | I.DDec (cPsi', I.TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/abstract.ml", line 1110, characters 30-40: # 1110 | and abstractMVarCdecl cQ loff (I.Decl d) = # ^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/abstract.ml", lines 1121-1138, characters 2-58: # 1121 | ..match cQ with # 1122 | | I.Empty -> I.Empty # 1123 | | I.Dec (cQ, FDecl (v, Pure (MetaTyp (ityp, plicity, inductivity)))) -> # 1124 | let cQ' = abstractMVarCtx cQ (l - 1) in # 1125 | I.Dec (cQ', FDecl (v, Pure (MetaTyp (abstractMVarMTyp cQ ityp (l, 0), plicity, inductivity)))) # ... # 1135 | * is it ever hit on correct code? -jd 2009-02-12 # 1136 | * No. This case should not occur in correct code - bp # 1137 | *) # 1138 | raise (Error (Name.location name, UnknownIdentifier)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (MMV _, Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 1150-1154, characters 2-20: # 1150 | ..function # 1151 | | I.ClObj (phat, tM) -> # 1152 | I.ClObj (abstractMVarHat cQ off phat, abstrClObj cQ off tM) # 1153 | | I.CObj cPsi -> I.CObj (abstractMVarDctx cQ off cPsi) # 1154 | | I.MV k -> I.MV k # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MUndef # # File "src/core/abstract.ml", lines 1167-1179, characters 4-21: # 1167 | ....function # 1168 | | I.Empty -> I.Empty # 1169 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> # 1170 | let cQ'' = ctxToMCtx' cQ' in # 1171 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity; inductivity }) # ... # 1176 | let cQ'' = ctxToMCtx' cQ' in # 1177 | I.Dec (cQ'', I.Decl { name = x; typ = I.CTyp (Option.some w); plicity; inductivity }) # 1178 | | I.Dec (cQ', FDecl (_, Impure)) -> # 1179 | ctxToMCtx' cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (FV _, Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 1208-1217, characters 2-8: # 1208 | ..match cQ with # 1209 | | Int.LF.Empty -> (tA', 0) # 1210 | | Int.LF.Dec (_, FDecl (s, _)) -> # 1211 | let cQ' = abstractCtx cQ in # 1212 | let tA2 = abstractTyp cQ' 0 (tA', LF.id) in # 1213 | let cPsi = ctxToCtx cQ' in # 1214 | begin match raiseType' cPsi tA2 with # 1215 | | (None, tA3) -> (tA3, length' cPsi) # 1216 | | _ -> raise (Error (Location.ghost, LeftoverVars)) # 1217 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, CtxV _) # # File "src/core/abstract.ml", lines 1246-1287, characters 2-28: # 1246 | ..function # 1247 | | Comp.TypBase (loc, a, ms) -> # 1248 | let (cQ', ms') = collect_meta_spine p cQ ms in # 1249 | (cQ', Comp.TypBase (loc, a, ms')) # 1250 | | Comp.TypCobase (loc, a, ms) -> # ... # 1284 | # 1285 | | Comp.TypInd tau -> # 1286 | let (cQ', tau') = collectCompTyp p cQ tau in # 1287 | (cQ', Comp.TypInd tau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDef (_, _, _) # # File "src/core/abstract.ml", lines 1291-1296, characters 2-54: # 1291 | ..function # 1292 | | I.Empty -> (cQ, I.Empty) # 1293 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> # 1294 | let (cQ1, cG') = collectGctx cQ cG in # 1295 | let (cQ2, tau') = collectCompTyp 0 cQ1 tau in # 1296 | (cQ2, I.Dec (cG', Comp.CTypDecl (x, tau', flag))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/abstract.ml", lines 1463-1489, characters 2-52: # 1463 | ..function # 1464 | | Comp.TypBase (loc, a, cS) -> # 1465 | let cS' = abstractMVarMetaSpine cQ offset cS in # 1466 | Comp.TypBase (loc, a, cS') # 1467 | | Comp.TypCobase (loc, a, cS) -> # ... # 1486 | ) # 1487 | # 1488 | | Comp.TypInd tau -> # 1489 | Comp.TypInd (abstractMVarCompTyp cQ offset tau) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _)|TypClo (_, _)) # # File "src/core/abstract.ml", lines 1492-1497, characters 2-47: # 1492 | ..function # 1493 | | I.Empty -> I.Empty # 1494 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> # 1495 | let cG' = abstractMVarGctx cQ offset cG in # 1496 | let tau' = abstractMVarCompTyp cQ offset tau in # 1497 | I.Dec (cG', Comp.CTypDecl (x, tau', flag)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/abstract.ml", lines 1698-1700, characters 4-48: # 1698 | ....match (p, cD) with # 1699 | | (0, _) -> cD # 1700 | | (_, I.Dec (cD', decl)) -> drop (p - 1) cD' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, Empty) # # File "src/core/abstract.ml", lines 1722-1724, characters 8-24: # 1722 | ........let I.Dec (cD1', decl) = cD1 in # 1723 | let cD = subtract cD1' cD2 in # 1724 | I.Dec (cD, decl) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/abstract.ml", lines 1785-1789, characters 2-24: # 1785 | ..function # 1786 | | I.Null -> cPsi1 # 1787 | | I.DDec (cPsi2', dec) -> # 1788 | let cPsi1' = appDCtx cPsi1 cPsi2' in # 1789 | I.Dec (cPsi1', dec) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Unify.cmo -c -impl src/core/unify.ml) # File "src/core/unify.ml", line 163, characters 30-55: # 163 | let genMMVarstr loc cD cPsi (Atom (_, a, _) as tP, s) = # ^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _) # # File "src/core/unify.ml", lines 575-585, characters 6-9: # 575 | ......begin match applyMSub k ms with # 576 | | MUndef -> # 577 | (* Psi1, x:tA |- s' <= Psi2 *) # 578 | (Whnf.mcomp mt' (MShift 1), cD2) # 579 | # ... # 582 | A = [mt']([mt']^-1 A) and cPsi = [mt']([mt']^-1 cPsi *) # 583 | let mtt' = Whnf.m_invert (Whnf.cnormMSub mt') in # 584 | (Whnf.mvar_dot1 mt', Dec (cD2, Decl { name = n; typ = Whnf.cnormMTyp (ctyp, mtt'); plicity; inductivity })) # 585 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 566-590, characters 4-38: # 566 | ....match (t, cD1) with # 567 | | (MShift _, Empty) -> (Whnf.m_id, Empty) # 568 | # 569 | | (MShift k, Dec _) -> # 570 | pruneMCtx' cD (MDot (MV (k + 1), MShift (k + 1)), cD1) ms # ... # 587 | | (MDot (MUndef, mt), Dec (cD1, _)) -> # 588 | let (mt', cD2) = pruneMCtx' cD (mt, cD1) ms in # 589 | (* cD1 |- mt' <= cD2 *) # 590 | (Whnf.mcomp mt' (MShift 1), cD2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MDot (MV k, mt), Dec (cD1, DeclOpt _)) # # File "src/core/unify.ml", lines 810-819, characters 7-10: # 810 | .......begin match applyMSub u ms with # 811 | | MV v -> # 812 | Root # 813 | ( loc # 814 | , MVar (Offset v, invSub cD0 phat (t', cPsi1) ss rOccur) # 815 | , Nil # 816 | , plicity # 817 | ) # 818 | | MUndef -> raise NotInvertible # 819 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 822-830, characters 7-46: # 822 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in # 823 | let d = Context.length cD0 - Context.length cD_d in # 824 | let cPsi1 = # 825 | if d = 0 # 826 | then cPsi1 # 827 | else Whnf.cnormDCtx (cPsi1, MShift d) # 828 | in # 829 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in # 830 | Root (loc, FMVar (u, s'), Nil, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=CTyp _; _ }) # # File "src/core/unify.ml", lines 833-841, characters 7-46: # 833 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get p in # 834 | let d = Context.length cD0 - Context.length cD_d in # 835 | let cPsi1 = # 836 | if d = 0 # 837 | then cPsi1 # 838 | else Whnf.cnormDCtx (cPsi1, MShift d) # 839 | in # 840 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in # 841 | Root (loc, FPVar (p, s'), Nil, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=CTyp _; _ }) # # File "src/core/unify.ml", lines 846-850, characters 7-10: # 846 | .......begin match applyMSub p ms with # 847 | | MV q -> # 848 | Root (loc, PVar (q, invSub cD0 phat (t', cPsi1) ss rOccur), Nil, plicity) # 849 | | MUndef -> raise NotInvertible # 850 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 747-862, characters 4-62: # 747 | ....match sM with # 748 | | (Lam (loc, x, tM), s) -> # 749 | Lam (loc, x, invNorm cD0 ((cvar, offset + 1), (tM, dot1 s), (ms, dot1 ssubst), rOccur)) # 750 | # 751 | | (Root (loc, MVar (Inst u, t), tS, plicity), s) -> # ... # 859 | ) # 860 | # 861 | | (Tuple (loc, trec), s) -> # 862 | Tuple (loc, invTuple cD0 (phat, (trec, s), ss, rOccur)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((LFHole (_, _, _)|Clo _), _) # # File "src/core/unify.ml", lines 888-891, characters 7-10: # 888 | .......begin match bvarSub k ssubst with # 889 | | Undef -> raise NotInvertible # 890 | | Head (BVar k') -> BVar k' # 891 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 894-897, characters 7-10: # 894 | .......begin match bvarSub k ssubst with # 895 | | Head (BVar _ as head) -> head # 896 | | Undef -> raise NotInvertible # 897 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 932-936, characters 7-10: # 932 | .......begin match applyMSub u ms with # 933 | | MV v -> # 934 | MVar (Offset v, invSub cD0 phat (t, cPsi1) ss rOccur) # 935 | | MUndef -> raise NotInvertible # 936 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 940-944, characters 7-10: # 940 | .......begin match applyMSub p ms with # 941 | | MV q -> # 942 | PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur) # 943 | | MUndef -> raise NotInvertible # 944 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 948-952, characters 7-10: # 948 | .......begin match applyMSub p ms with # 949 | | MV q -> # 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) # 951 | | MUndef -> raise NotInvertible # 952 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 886-952, characters 4-10: # 886 | ....match head with # 887 | | BVar k -> # 888 | begin match bvarSub k ssubst with # 889 | | Undef -> raise NotInvertible # 890 | | Head (BVar k') -> BVar k' # ... # 949 | | MV q -> # 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) # 951 | | MUndef -> raise NotInvertible # 952 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Proj # ((Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)), # _) # # File "src/core/unify.ml", lines 956-959, characters 4-46: # 956 | ....function # 957 | | Undefs -> raise (Failure "Variable dependency") # 958 | | Shift k -> Shift (n + k) # 959 | | Dot (ft, ss') -> shiftInvSub (n - 1) ss' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/unify.ml", lines 981-985, characters 9-40: # 981 | .........match applyMSub s ms with # 982 | | MV v -> # 983 | let (_, cPhi, _, cPsi') = Whnf.mctxSDec cD0 v in # 984 | (v, cPhi, cPsi') # 985 | | MUndef -> raise NotInvertible # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1024-1030, characters 7-10: # 1024 | .......begin match applyMSub s ms with # 1025 | | MV v -> # 1026 | let (_, cPhi, _, cPsi1) = Whnf.mctxSDec cD0 v in # 1027 | (* applyMSub to ctx_offset ? *) # 1028 | SVar (v, n, invSub cD0 phat (t, cPsi1) ss rOccur) # 1029 | | MUndef -> raise NotInvertible # 1030 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1033-1034, characters 7-64: # 1033 | .......let (_, Decl { typ = ClTyp (STyp (LF.Subst, _), cPsi'); _ }) = Store.FCVar.get s_name in # 1034 | FSVar (n, (s_name, invSub cD0 phat (t, cPsi') ss rOccur)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=ClTyp (STyp (Ren, _), _); _ }) # # File "src/core/unify.ml", lines 1063-1069, characters 4-74: # 1063 | ....match (mt, cD1) with # 1064 | | (MShift n, _) -> checkDefined (Whnf.mcomp (MShift n) ms) # 1065 | | (MDot (ClObj (phat, SObj sigma), mt'), Dec (cD', Decl { typ = ClTyp (STyp (_, cPhi), _); _ })) -> # 1066 | let sigma' = invSub cD0 phat (sigma, cPhi) (ms, id) rOccur in # 1067 | MDot (ClObj (phat, SObj sigma'), invMSub cD0 (mt', cD') ms rOccur) # 1068 | | (MDot (mobj, mt'), Dec (cD', _)) -> # 1069 | MDot (invMObj cD0 mobj ms rOccur, invMSub cD0 (mt', cD') ms rOccur) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MDot (mobj, mt'), Empty) # # File "src/core/unify.ml", lines 1072-1080, characters 4-90: # 1072 | ....match mobj with # 1073 | | MV n -> # 1074 | begin match applyMSub n ms with # 1075 | | MUndef -> raise NotInvertible # 1076 | | ft -> ft # 1077 | end # 1078 | | ClObj (phat, MObj tM) -> ClObj (phat, MObj (invNorm cD0 (phat, (tM, id), (ms, id), rOccur))) # 1079 | | CObj cPsi -> Error.raise_violation "Not implemented" # 1080 | | ClObj (phat, PObj h) -> ClObj (phat, PObj (invHead cD0 (phat, h, (ms, id), rOccur))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/unify.ml", lines 1152-1154, characters 7-80: # 1152 | .......let Shift 0 = s in (* Assert s is supposed to be the identity *) # 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in # 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Shift 1 # # File "src/core/unify.ml", lines 1124-1154, characters 4-80: # 1124 | ....match sM with # 1125 | | (LFHole _ as n, _) -> n # 1126 | | (Lam (loc, x, tM), s) -> # 1127 | dprintf # 1128 | begin fun p -> # ... # 1151 | | (Root (loc, head, tS, plicity), s) -> # 1152 | let Shift 0 = s in (* Assert s is supposed to be the identity *) # 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in # 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _, _) # # File "src/core/unify.ml", lines 1173-1184, characters 4-9: # 1173 | ....let ClTyp (tp, cPsi1) = mmvar.typ in # 1174 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur # 1175 | then raise (Failure "Variable occurrence") # 1176 | else # 1177 | begin # ... # 1181 | instantiateMMVarWithMMVar mmvar.instantiation loc (v, id2) tP' mmvar.constraints.contents; # 1182 | let (mr, r) = comp2 (comp2 id2 mtt) ss in # 1183 | ((v, mr), r) # 1184 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1187-1199, characters 4-37: # 1187 | ....let ClTyp (MTyp tP, cPsi1) = mmvar.typ in # 1188 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur # 1189 | then raise (Failure "Variable occurrence") # 1190 | else # 1191 | let (idsub, cPsi2) = pruneSub cD0 cPsi' (Context.dctxToHat cPsi') (t, cPsi1) ss rOccur in # ... # 1196 | , Root (loc, MVar (v, idsub), Nil, Plicity.explicit) # 1197 | , mmvar.constraints.contents # 1198 | ); # 1199 | (v, comp (comp idsub t) ssubst) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 1202-1211, characters 3-10: # 1202 | ...let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in # 1203 | let d = Context.length cD0 - Context.length cD_d in # 1204 | let cPsi1 = # 1205 | if d = 0 # 1206 | then cPsi1 # 1207 | else Whnf.cnormDCtx (cPsi1, MShift d) # 1208 | in # 1209 | let t' = simplifySub cD0 cPsi t in # 1210 | let s' = invSub cD0 (Context.dctxToHat cPsi) (t', cPsi1) ss rOccur in # 1211 | (u, s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=CTyp _; _ }) # # File "src/core/unify.ml", lines 1216-1219, characters 7-14: # 1216 | .......let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in # 1217 | let t' = simplifySub cD0 cPsi t in # 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in # 1219 | (v, s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, CTyp _) # # File "src/core/unify.ml", lines 1214-1220, characters 4-63: # 1214 | ....match applyMSub u ms with # 1215 | | MV v -> # 1216 | let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in # 1217 | let t' = simplifySub cD0 cPsi t in # 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in # 1219 | (v, s') # 1220 | | MUndef -> raise (Failure "[Prune] Bound MVar dependency") # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1246-1254, characters 7-10: # 1246 | .......begin match bvarSub k ssubst with # 1247 | | Undef -> # 1248 | let s = # 1249 | Format.asprintf "[Prune] Bound variable dependency : head = %a" # 1250 | (P.fmt_ppr_lf_head cD0 cPsi' P.l0) head # 1251 | in # 1252 | raise (Failure s) # 1253 | | Head (BVar _ as h') -> h' # 1254 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1223-1258, characters 4-11: # 1223 | ....match head with # 1224 | | MMVar ((i, mt), t) -> # 1225 | MMVar (pruneMMVarInst cD0 cPsi' loc i (mt, t) ss rOccur) # 1226 | | MVar (Inst i, t) -> # 1227 | MVar (pruneMVarInst cD0 cPsi' loc i (Whnf.normSub t) ss rOccur) # ... # 1255 | # 1256 | | Const _ # 1257 | | FVar _ -> # 1258 | head # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1293-1317, characters 4-57: # 1293 | ....match (s, cPsi1) with # 1294 | | (EmptySub, Null) -> EmptySub # 1295 | | (Undefs, Null) -> EmptySub # 1296 | | (Shift n, DDec _) -> # 1297 | pruneSubst cD cPsi (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur # ... # 1314 | # 1315 | | (Dot _, _) # 1316 | | (EmptySub, _) # 1317 | -> Error.raise_violation "Badly typed substitution" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undefs, (CtxVar _|DDec (_, _))) # # File "src/core/unify.ml", lines 1321-1323, characters 4-70: # 1321 | ....match ft with # 1322 | | Obj tM -> Obj (prune cD cPsi (Context.dctxToHat cPsi) (tM, id) ss rOccur) # 1323 | | Head h -> Head (pruneHead cD cPsi (Location.ghost, h) ss rOccur) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/unify.ml", lines 1354-1357, characters 9-59: # 1354 | .........function # 1355 | | Undefs -> (EmptySub, Null) # 1356 | | Shift k -> (id, CtxVar psi) # 1357 | | Dot (ft, ssubst') -> shiftInvSub (n - 1) ssubst' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/unify.ml", lines 1370-1374, characters 9-40: # 1370 | .........match applyMSub s mt with # 1371 | | MV v -> # 1372 | let (_, _, _, cPsi') = Whnf.mctxSDec cD0 v in # 1373 | cPsi' # 1374 | | MUndef -> raise NotInvertible # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1387-1390, characters 7-18: # 1387 | .......let ClTyp (STyp (_, cPhi2), cPhi1) = mmvar.typ in # 1388 | let cPhi1' = Whnf.cnormDCtx (cPhi1, Whnf.m_id) in # 1389 | ignore (invSub cD0 phat (sigma, cPhi1') ss rOccur); # 1390 | (id, cPsi1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|PTyp _), _) # # File "src/core/unify.ml", lines 1398-1400, characters 7-18: # 1398 | .......let (_, Decl { typ = ClTyp (STyp _, cPsi'); _ }) = Store.FCVar.get s in # 1399 | ignore (invSub cD0 phat (sigma, cPsi') ss rOccur); # 1400 | (id, cPsi1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) # # File "src/core/unify.ml", lines 1407-1426, characters 7-10: # 1407 | .......begin match bvarSub n ssubst with # 1408 | | Undef -> # 1409 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in # 1410 | (comp s1' shift, cPsi1') # 1411 | # ... # 1423 | in # 1424 | (* cPsi1' |- s1_i <= cPsi' *) # 1425 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) # 1426 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1431-1448, characters 7-10: # 1431 | .......begin match bvarSub n ssubst with # 1432 | | Undef -> # 1433 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in # 1434 | (comp s1' shift, cPsi1') # 1435 | # ... # 1445 | in # 1446 | (* cPsi1' |- s1_i <= cPsi' *) # 1447 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) # 1448 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1343-1471, characters 4-31: # 1343 | ....match (s, cPsi1) with # 1344 | | (Shift n, DDec _) -> # 1345 | pruneSub' cD0 cPsi phat (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur # 1346 | | (Shift _, Null) # 1347 | | (EmptySub, Null) # ... # 1468 | # 1469 | | (Dot (Undef, t), DDec (cPsi1, _)) -> # 1470 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (t, cPsi1) ss rOccur in # 1471 | (comp s1' shift, cPsi1') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub, (CtxVar _|DDec (_, _))) # # File "src/core/unify.ml", lines 1474-1487, characters 4-21: # 1474 | ....match sA with # 1475 | | (Atom (loc, a, tS), s) -> Atom (loc, a, pruneSpine cD0 cPsi phat (tS, s) (mss, ss) rOccur) # 1476 | | (PiTyp ((TypDecl (x, tA), depend, plicity), tB), s) -> # 1477 | let tA' = pruneTyp cD0 cPsi phat (tA, s) (mss, ss) rOccur in # 1478 | let tB' = pruneTyp cD0 cPsi phat (tB, dot1 s) (mss, dot1 ss) rOccur in # ... # 1484 | # 1485 | | (Sigma typ_rec, s) -> # 1486 | let typ_rec' = pruneTypRec cD0 cPsi phat (typ_rec, s) (mss, ss) rOccur in # 1487 | Sigma typ_rec' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TClo _, _) # # File "src/core/unify.ml", lines 1504-1507, characters 7-10: # 1504 | .......begin match applyMSub psi ms with # 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' # 1506 | | MV k -> CtxVar (CtxOffset k) # 1507 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|ClObj (_, _)) # # File "src/core/unify.ml", lines 1510-1514, characters 7-10: # 1510 | .......begin match mmvar.instantiation.contents with # 1511 | | None -> cPsi # 1512 | | Some (ICtx cPhi) -> # 1513 | pruneDCtx cD cPhi (Whnf.mcomp theta ms) rOccur # 1514 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/unify.ml", lines 1501-1529, characters 4-37: # 1501 | ....match cPsi with # 1502 | | Null -> Null # 1503 | | CtxVar (CtxOffset psi) -> # 1504 | begin match applyMSub psi ms with # 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' # ... # 1526 | (ms, Substitution.LF.id) # 1527 | rOccur # 1528 | in # 1529 | DDec (cPsi', TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/unify.ml", lines 1574-1583, characters 7-10: # 1574 | .......begin match bvarSub k ssubst with # 1575 | | Undef -> # 1576 | (* Psi1, x:tA |- s' <= Psi2 *) # 1577 | (comp s' shift, cPsi2) # 1578 | # 1579 | | Head (BVar _) -> # 1580 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since # 1581 | A = [s']([s']^-1 A) *) # 1582 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) # 1583 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1590-1599, characters 7-10: # 1590 | .......begin match bvarSub k ssubst with # 1591 | | Undef -> # 1592 | (* Psi1, x:tA |- s' <= Psi2 *) # 1593 | (comp s' shift, cPsi2) # 1594 | # 1595 | | Head (BVar _) -> # 1596 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since # 1597 | A = [s']([s']^-1 A) *) # 1598 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) # 1599 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1551-1604, characters 4-29: # 1551 | ....match (t, cPsi1) with # 1552 | | (EmptySub, Null) # 1553 | | (Undefs, Null) # 1554 | | (Shift _, Null) -> # 1555 | (id, Null) # ... # 1601 | | (Dot (Undef, t), DDec (cPsi1, _)) -> # 1602 | let (s', cPsi2) = pruneCtx' phat (t, cPsi1) ss in # 1603 | (* sP1 |- s' <= cPsi2 *) # 1604 | (comp s' shift, cPsi2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub, (CtxVar _|DDec (_, _))) # # File "src/core/unify.ml", lines 1646-1651, characters 4-56: # 1646 | ....match (sTup1, sTup2) with # 1647 | | ((Last tM, s1), (Last tN, s2)) -> # 1648 | unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2) # 1649 | | ((Cons (tM, tup1), s1), (Cons (tN, tup2), s2)) -> # 1650 | (unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2); # 1651 | unifyTuple mflag cD0 cPsi (tup1, s1) (tup2, s2)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Last tM, s1), (Cons (_, _), _)) # # File "src/core/unify.ml", lines 1654-1680, characters 4-9: # 1654 | ....let ClTyp (_, cPsi1) = mmvar.typ in # 1655 | if isId t1' # 1656 | then instantiateMVar (mmvar.instantiation, sM2, mmvar.constraints.contents) # 1657 | else # 1658 | begin # ... # 1677 | (* This might actually need to add a constraint, in which case # 1678 | "NotInvertible" seems the wrong kind of exception... *) # 1679 | Error.raise_violation "Unification violation" # 1680 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1694-1705, characters 9-35: # 1694 | .........match Whnf.whnfTyp sA with # 1695 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> # 1696 | (* cPsi' |- Pi x:A.B <= typ # 1697 | cPsi |- s <= cPsi' # 1698 | cPsi |- tN <= [s]tA # ... # 1702 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in # 1703 | LF.App (tN, tS) # 1704 | # 1705 | | (LF.Atom _, _) -> LF.Nil # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/unify.ml", lines 1683-1710, characters 4-15: # 1683 | ....let ClTyp (_, cPsi1) = mmvar.typ in # 1684 | match sM2 with # 1685 | | Root (loc, Const c, _, plicity) -> # 1686 | let tA = (Store.Cid.Term.get c).Store.Cid.Term.Entry.typ in # 1687 | dprintf # ... # 1707 | let tM1 = Root (loc, Const c, genSpine mmvar.cD cPsi1 (tA, id), plicity) in # 1708 | instantiateMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); # 1709 | Some tM1 # 1710 | | _ -> None # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1716-1729, characters 6-32: # 1716 | ......match Whnf.whnfTyp sA with # 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> # 1718 | (* cPsi' |- Pi x:A.B <= typ # 1719 | cPsi |- s <= cPsi' # 1720 | cPsi |- tN <= [s]tA # ... # 1726 | in # 1727 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in # 1728 | LF.App (tN, tS) # 1729 | | (LF.Atom _, _) -> LF.Nil # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/unify.ml", lines 1714-1762, characters 4-15: # 1714 | ....let ClTyp (MTyp tB, cPsi1) = mmvar.typ in # 1715 | let rec genSpine cD1 cPsi1 sA = # 1716 | match Whnf.whnfTyp sA with # 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> # 1718 | (* cPsi' |- Pi x:A.B <= typ # ... # 1759 | instantiateMMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); # 1760 | Some tM1 # 1761 | # 1762 | | _ -> None # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 1766-1769, characters 4-79: # 1766 | ....match tm with # 1767 | | (INorm n, _) -> INorm (prune cD cPsi hat (n, id) ss rOccur) # 1768 | | (IHead h, _) -> IHead (pruneHead cD cPsi (Location.ghost, h) ss rOccur) # 1769 | | (ISub s, STyp (_, cPhi)) -> ISub (pruneSubst cD cPsi (s, cPhi) ss rOccur) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ISub s, (MTyp _|PTyp _)) # # File "src/core/unify.ml", lines 1772-1796, characters 4-9: # 1772 | ....let ClTyp (tp, cPsi1) = mmvar.typ in # 1773 | if isId t1' && isMId mt1 # 1774 | then # 1775 | begin # 1776 | dprint (fun () -> "[unifyMMVarTerm] 200 - id/m_id"); # ... # 1793 | (* with | NotInvertible -> Error.raise_violation "Unification violation" *) # 1794 | (* This might actually need to add a constraint, in which case "NotInvertible" seems # 1795 | the wrong kind of exception... *) # 1796 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1810-1882, characters 4-76: # 1810 | ....let ClTyp (_, cPsi1) = mmvar.typ in # 1811 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub mt1) in # 1812 | (* cD |- mtt1 : cD0 and cD ; cPsi |- t1' : cPsi1 *) # 1813 | let (flat_cPsi, conv_list) = ConvSigma.flattenDCtx cD0 cPsi in # 1814 | let s_tup = ConvSigma.gen_tup_sub conv_list in (* flat_cPsi |- s_tup : cPsi *) # ... # 1879 | p.fmt "[unifyMMVarTermProj]: tM2 (after pruning) = %a" # 1880 | (P.fmt_ppr_lf_normal cD0 flat_cPsi P.l0) tM2' # 1881 | end; # 1882 | instantiateMMVar (mmvar.instantiation, sM2', mmvar.constraints.contents) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1885-1918, characters 4-102: # 1885 | ....let ClTyp (tp1, cPsi1) = mmvar1.typ in # 1886 | let (s', cPsi') = intersection (Context.dctxToHat cPsi) (Whnf.normSub t1') (Whnf.normSub t2') cPsi1 in # 1887 | (* if cD ; cPsi |- t1' <= cPsi1 and cD ; cPsi |- t2' <= cPsi1 # 1888 | then cD ; cPsi1 |- s' <= cPsi' *) # 1889 | let (mt', cD') = m_intersection (Whnf.cnormMSub mt1) (Whnf.cnormMSub mt2) mmvar1.cD in # ... # 1915 | [|w[s']/u|](u[t1]) = [t1](w[s']) # 1916 | [|w[s']/u|](u[t2]) = [t2](w[s']) # 1917 | *) # 1918 | instantiateMMVarWithMMVar mmvar1.instantiation loc (w, (mt', s')) tp1' mmvar1.constraints.contents # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1934-1975, characters 7-12: # 1934 | .......let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in # 1935 | dprnt "(000) MVar-MVar"; # 1936 | (* by invariant of whnf: # 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id # 1938 | r1 and r2 are uninstantiated (None) # ... # 1972 | begin # 1973 | let id = next_constraint_id () in # 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) # 1975 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 1933-1975, characters 7-12: # 1933 | .......let ClTyp (MTyp tP1, cPsi1) = mmvar1.typ in # 1934 | let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in # 1935 | dprnt "(000) MVar-MVar"; # 1936 | (* by invariant of whnf: # 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id # ... # 1972 | begin # 1973 | let id = next_constraint_id () in # 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) # 1975 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 2439-2452, characters 4-52: # 2439 | ....match (spine1, spine2) with # 2440 | | ((Nil, _), (Nil, _)) -> () # 2441 | # 2442 | | ((SClo (tS1, s1'), s1), sS) -> # 2443 | unifySpine mflag cD0 cPsi (tS1, comp s1' s1) sS # ... # 2449 | (* dprint (fun () -> "[unifySpine] " ^ P.normalToString cD0 cPsi (tM1, s1) ^ # 2450 | " == " ^ P.normalToString cD0 cPsi (tM2, s2));*) # 2451 | unifyTerm mflag cD0 cPsi (tM1, s1) (tM2, s2); # 2452 | unifySpine mflag cD0 cPsi (tS1, s1) (tS2, s2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Nil, _), (App (_, _), _)) # # File "src/core/unify.ml", lines 2659-2710, characters 7-61: # 2659 | .......let CTyp schema1, CTyp schema2 = mmvar1.typ, mmvar2.typ in # 2660 | if mmvar1.instantiation == mmvar2.instantiation # 2661 | then # 2662 | if Option.equal Id.cid_schema_equal schema1 schema2 # 2663 | then # ... # 2707 | Error.raise_violation # 2708 | "Case where both meta-substitutions associated with \ # 2709 | context variables are not pattern substitutions \ # 2710 | should not happen and is not implemented for now" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CTyp schema1, ClTyp (_, _)) # # File "src/core/unify.ml", lines 2714-2747, characters 7-61: # 2714 | .......let CTyp s_cid = mmvar.typ in # 2715 | if isPatMSub theta # 2716 | then # 2717 | begin # 2718 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub theta) in # ... # 2744 | Error.raise_violation # 2745 | "Case where both meta-substitutions associated with \ # 2746 | context variables are not pattern substitutions \ # 2747 | should not happen and is not implemented for now" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (_, _) # # File "src/core/unify.ml", lines 2785-2786, characters 4-43: # 2785 | ....let Decl { typ = cT; _ } = cdecl in # 2786 | unifyMObj cD (mO, t) (mO', t') (cT, mt) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/unify.ml", lines 2820-2832, characters 7-53: # 2820 | .......let Comp.PiKind (_, cdecl, cK') = cK in # 2821 | let mOt = Whnf.cnormMetaObj (mO, t) in # 2822 | (* let mOt' = Whnf.cnormMetaObj (mO', t') in *) # 2823 | unifyMetaObj cD (mO, t) (mO', t') (cdecl, mt); # 2824 | let mt' = MDot (Comp.metaObjToMFront mOt, mt) in # ... # 2829 | P.(fmt_ppr_cmp_meta_typ cD) (Whnf.cnormMTyp (mT', t')) # 2830 | end; # 2831 | unifyMetaTyp cD (mT, t) (mT', t'); # 2832 | unifyMetaSpine cD (mS, t) (mS', t') (cK', mt') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ctype _ # # File "src/core/unify.ml", lines 2837-2840, characters 4-81: # 2837 | ....function # 2838 | | (MTyp tA1, MTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) # 2839 | | (PTyp tA1, PTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) # 2840 | | (STyp (_, cPhi1), STyp (_, cPhi2)) -> unifyDCtx1 Unification cD cPhi1 cPhi2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MTyp tA1, (PTyp _|STyp (_, _))) # # File "src/core/unify.ml", line 2836, characters 17-28: # 2836 | and unifyClTyp Unification cD cPsi = # ^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Matching # # File "src/core/unify.ml", line 2842, characters 18-29: # 2842 | and unifyCLFTyp Unification cD ctyp1 ctyp2 = # ^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Matching # # File "src/core/unify.ml", lines 2938-2941, characters 4-62: # 2938 | ....match (itM1, itM2) with # 2939 | | (INorm tM1, INorm tM2) -> unifyTerm Unification cD cPsi (tM1, id) (tM2, id) # 2940 | | (IHead tH1, IHead tH2) -> unifyHead Unification cD cPsi tH1 tH2 # 2941 | | (ISub s1, ISub s2) -> unifySub Unification cD cPsi s1 s2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (INorm tM1, (IHead _|ISub _|ICtx _)) # # File "src/core/unify.ml", lines 2950-2962, characters 7-10: # 2950 | .......begin match !cnstr with # 2951 | | Queued id -> # 2952 | forceCnstr mflag (nextCnstr ()) # 2953 | | Eqn (c_id, cD, cPsi, INorm tM1, INorm tM2) -> # 2954 | solveConstraint cnstr; # ... # 2959 | solveConstraint cnstr; # 2960 | unifyHead mflag cD cPsi h1 h2; # 2961 | forceCnstr mflag (nextCnstr ()) # 2962 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) # # File "src/core/unify.ml", lines 2994-3029, characters 7-100: # 2994 | .......let Eqn (_, cD, cPsi, itM1, itM2) as c' = !c in # 2995 | solveConstraint c; # 2996 | dprintf # 2997 | begin fun p -> # 2998 | p.fmt "[forceGlobalCnstr'] @[<v>processing nontrivial constraint\ # ... # 3026 | *) # 3027 | if solvedCnstrs (!globalCnstrs) # 3028 | then (resetGlobalCnstrs (); forceGlobalCnstr' cnstrs) # 3029 | else raise (GlobalCnstrFailure (Location.ghost, "[forceGlobalCnstr'] Constraints generated")) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Queued _ # # File "src/core/unify.ml", lines 3202-3204, characters 8-68: # 3202 | ........match (m1, m2) with # 3203 | | (MObj tM1, MObj tM2) -> unify Empty cPsi (tM1, id) (tM2,id) # 3204 | | (PObj h, PObj h') -> unifyHead Unification Empty cPsi h h' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MObj tM1, (PObj _|SObj _)) # # File "src/core/unify.ml", lines 3208-3217, characters 4-49: # 3208 | ....match (m1, m2) with # 3209 | | (CObj cPsi, CObj cPhi) -> # 3210 | unifyDCtx1 # 3211 | Unification # 3212 | Empty # 3213 | (Whnf.cnormDCtx (cPsi, Whnf.m_id)) # 3214 | (Whnf.cnormDCtx (cPhi, Whnf.m_id)) # 3215 | | (ClObj (phat1, m1), ClObj (phat2, m2)) -> # 3216 | (* unify_phat phat1 phat2; *) # 3217 | unifyClObj (Context.hatToDCtx phat1) m1 m2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CObj cPsi, (MUndef|ClObj (_, _)|MV _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Opsem.cmo -c -impl src/core/opsem.ml) # File "src/core/opsem.ml", lines 80-83, characters 2-30: # 80 | ..match cM' with # 81 | | LF.ClObj (phat, LF.MObj tM) -> (loc, cM') # 82 | | LF.ClObj (phat, LF.PObj h) -> (loc, cM') # 83 | | LF.CObj cPsi -> (loc, cM') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/opsem.ml", lines 121-137, characters 7-17: # 121 | .......function # 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch # 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) # 124 | when Id.cid_comp_dest_equal cid cid' -> # 125 | Value (eval_exp e (theta, eta)) (* should we append theta' and eta'? *) # ... # 134 | | Value v -> Value v # 135 | end # 136 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, ps), e, _, _), br) -> # 137 | trim br # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ConsValBranch (((PatNil|PatApp (_, _, _)), _, _, _), _) # # File "src/core/opsem.ml", lines 119-142, characters 5-8: # 119 | .....let Comp.FunValue fbr = eval_exp e (theta, eta) in # 120 | let rec trim = # 121 | function # 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch # 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) # ... # 139 | begin match trim fbr with # 140 | | FunBranch fr -> Comp.FunValue fr # 141 | | Value v -> v # 142 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (FnValue (_, _, _, _)|ThmValue (_, _, _, _)|MLamValue (_, _, _, _)| # CtxValue (_, _, _, _)|BoxValue (_, _)|ConstValue _|DataValue (_, _)| # TupleValue (T (_, _, _))) # # File "src/core/opsem.ml", lines 91-290, characters 2-50: # 91 | ..match i with # 92 | | Comp.Const (_, cid) -> # 93 | dprint (fun () -> "[eval_exp] Const " ^ R.render_cid_prog cid); # 94 | begin match (Store.Cid.Comp.get cid).Store.Cid.Comp.Entry.prog with # 95 | | Some (Comp.ThmValue (cid, Comp.Program e', theta', eta')) -> # ... # 287 | eval_branches loc vscrut branches (theta, eta) # 288 | # 289 | | Comp.Hole (_) -> # 290 | Error.raise_violation "Source contains holes" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MApp (_, _, (_, ClObj (_, SObj _)), _, _) # # File "src/core/opsem.ml", lines 321-325, characters 2-36: # 321 | ..match (cObj, cObj') with # 322 | | (LF.MObj tM, LF.MObj tM') -> # 323 | Unify.unify LF.Empty cPsi' (tM, Substitution.LF.id) (tM', Substitution.LF.id) # 324 | | (LF.PObj h, LF.PObj h') -> # 325 | Unify.unifyH LF.Empty phat h h' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MObj tM, (PObj _|SObj _)) # # File "src/core/opsem.ml", lines 437-458, characters 4-10: # 437 | ....function # 438 | | Comp.NilValBranch -> FunBranch (Comp.NilValBranch) # 439 | | Comp.ConsValBranch ((Comp.PatApp (_, p, Comp.PatNil), e, theta, eta), brs) -> # 440 | begin try # 441 | let eta' = match_pattern (v, eta) (p, theta) in # ... # 455 | eval_branch brs # 456 | | Unify.Failure msg -> (dprint (fun () -> "Branch failed : " ^ msg); # 457 | eval_branch brs) # 458 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ConsValBranch (((PatNil|PatObs (_, _, _, _)), _, _, _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Interactive.cmo -c -impl src/core/interactive.ml) # File "src/core/interactive.ml", lines 202-213, characters 10-26: # 202 | ..........let Cover.CovGoal (cPsi', tR, sA') = cg in # 203 | let ms' = LF.MDot (LF.ClObj (Context.dctxToHat cPsi', LF.MObj tR), ms) in # 204 | let k = List.length cD_tail in # 205 | let (cD'', ms0) = Coverage.addToMCtx cDg' (cD_tail, ms') in # 206 | let cg' = # ... # 210 | , (Whnf.cnormTyp (Whnf.normTyp sA', LF.MShift k), S.LF.id) # 211 | ) # 212 | in # 213 | (cD'', cg', ms0) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/interactive.ml", line 183, characters 18-73: # 183 | let genCGoals cD' (LF.Decl { name =n; typ = mtyp; plicity; inductivity }) cD_tail = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Lfcheck.cmo -c -impl src/core/lfcheck.ml) # File "src/core/lfcheck.ml", lines 225-230, characters 2-19: # 225 | ..function # 226 | | Null -> Ctxsub.ctxShift cPhi (* S.LF.id *) # 227 | | DDec (cPsi', TypDecl (n, tA)) -> # 228 | let s = (ctxToSub' cPhi cPsi' : sub) in # 229 | let u = Whnf.etaExpandMV cPhi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in # 230 | Dot (Obj u, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi', TypDeclOpt _) # # File "src/core/lfcheck.ml", lines 246-330, characters 2-55: # 246 | ..match (sM, sA) with # 247 | | ((Lam (loc, name, tM), s1), (PiTyp ((TypDecl _ as tX, _, _), tB), s2)) -> (* Offset by 1 *) # 248 | check cD # 249 | (DDec (cPsi, S.LF.decSub tX s2)) # 250 | (tM, S.LF.dot1 s1) # ... # 327 | raise (Error (loc, (CheckError (cD, cPsi, sM, sA)))) # 328 | end # 329 | | ((Root (loc, _, _, _), _ (* id *)), _ ) -> # 330 | raise (Error (loc, CheckError (cD, cPsi, sM, sA))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Clo _, _), _) # # File "src/core/lfcheck.ml", lines 361-370, characters 4-23: # 361 | ....match (tS, sA) with # 362 | | ((Nil, _), sP) -> sP # 363 | # 364 | | ((SClo (tS, s'), s), sA) -> # 365 | syn (tS, S.LF.comp s' s) sA # 366 | # 367 | | ((App (tM, tS), s1), (PiTyp ((TypDecl (_, tA1), _, _), tB2), s2)) -> # 368 | check cD cPsi (tM, s1) (tA1, s2); # 369 | let tB2 = Whnf.whnfTyp (tB2, Dot (Obj (Clo (tM, s1)), s2)) in # 370 | syn (tS, s1) tB2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((App (tM, tS), s1), (PiTyp ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfcheck.ml", line 346, characters 16-50: # 346 | and syn cD cPsi (Root (loc, h, tS, _), s (* id *)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)), _) # # File "src/core/lfcheck.ml", lines 393-394, characters 5-7: # 393 | .....let TypDecl (_, tA) = ctxDec cPsi k' in # 394 | tA # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfcheck.ml", lines 400-409, characters 10-25: # 400 | ..........let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in # 401 | dprintf # 402 | begin fun p -> # 403 | p.fmt "[InferHead] @[<v>%a |- %a@,where %a has type %a@]" # 404 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi # 405 | (P.fmt_ppr_lf_head cD cPsi P.l0) head # 406 | (P.fmt_ppr_lf_head cD cPsi P.l0) tuple_head # 407 | (P.fmt_ppr_lf_typ_rec cD cPsi P.l0) recA # 408 | end; # 409 | (recA, S.LF.id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfcheck.ml", lines 411-413, characters 10-19: # 411 | ..........let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in # 412 | checkSub loc cD cPsi s Subst cPsi'; # 413 | (recA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _) # # File "src/core/lfcheck.ml", lines 398-414, characters 7-64: # 398 | .......match tuple_head with # 399 | | BVar k' -> # 400 | let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in # 401 | dprintf # 402 | begin fun p -> # ... # 411 | let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in # 412 | checkSub loc cD cPsi s Subst cPsi'; # 413 | (recA, s) # 414 | | FPVar (name, _) -> raise (Error (loc, LeftoverFV name)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfcheck.ml", lines 446-457, characters 5-17: # 446 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in # 447 | dprintf # 448 | begin fun p -> # 449 | let f = P.fmt_ppr_lf_dctx cD P.l0 in # 450 | p.fmt "[inferHead] @[<v>%a@,%a |- %a <= %a@]" # ... # 454 | f cPsi' # 455 | end; # 456 | checkSub loc cD cPsi s Subst cPsi' ; # 457 | TClo (tA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/lfcheck.ml", lines 461-474, characters 5-37: # 461 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in # 462 | dprintf # 463 | begin fun p -> # 464 | let f = P.fmt_ppr_lf_mctx P.l0 in # 465 | p.fmt "[inferHead] @[<v>MMVar %a@,cD = %a@,t' = %a@,cD' = %a@]" # ... # 471 | checkMSub loc cD t' mmvar.cD; # 472 | dprint (fun () -> "[inferHead] MMVar - msub done \n"); # 473 | checkSub loc cD cPsi r Subst (Whnf.cnormDCtx (cPsi', t')) ; # 474 | TClo (Whnf.cnormTyp (tA, t'), r) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/lfcheck.ml", lines 391-506, characters 2-41: # 391 | ..match (head, cl) with # 392 | | (BVar k', _) -> # 393 | let TypDecl (_, tA) = ctxDec cPsi k' in # 394 | tA # 395 | # ... # 503 | TClo (tA, s) # 504 | # 505 | | (FVar name, _) | (FMVar (name, _), _) | (FPVar (name, _), _) -> # 506 | raise (Error (loc, LeftoverFV name)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MVar (Inst _, _), Subst) # (However, some guarded clause may match this value.) # # File "src/core/lfcheck.ml", lines 509-528, characters 2-13: # 509 | ..match cPsi with # 510 | | Null -> true (* we need to succeed because coverage should detect that # 511 | it is not inhabited *) # 512 | # 513 | | CtxVar ctx_var -> # ... # 525 | # 526 | | DDec (rest, TypDecl _) -> # 527 | canAppear cD rest head sA loc # 528 | || false........................................... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (rest, TypDeclOpt _) # # File "src/core/lfcheck.ml", lines 643-655, characters 2-23: # 643 | ..match sS1, sK with # 644 | | (Nil, _), sK -> # 645 | sK # 646 | # 647 | | (SClo (tS, s'), s), sK -> # ... # 652 | synKSpine cD cPsi (tS, s1) (kK, Dot (Obj (Clo (tM, s1)), s2)) # 653 | # 654 | | (App _, _), (Typ, _) -> # 655 | raise SpineMismatch # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((App (_, _), _), (PiKind ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfcheck.ml", lines 664-681, characters 2-47: # 664 | ..match tA with # 665 | | Atom (loc, a, tS) -> # 666 | let tK = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in # 667 | begin # 668 | try # ... # 678 | checkTyp cD cPsi (tA, s); # 679 | checkTyp cD (DDec (cPsi, TypDecl (x, TClo (tA, s)))) (tB, S.LF.dot1 s) # 680 | # 681 | | Sigma arec -> checkTypRec cD cPsi (arec, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfcheck.ml", lines 710-714, characters 2-53: # 710 | ..function # 711 | | Typ -> () # 712 | | PiKind ((TypDecl (x, tA), _, _), kind) -> # 713 | checkTyp cD cPsi (tA, S.LF.id); # 714 | checkKind cD (DDec (cPsi, TypDecl (x, tA))) kind # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # # File "src/core/lfcheck.ml", lines 724-725, characters 2-47: # 724 | ..match decl with # 725 | | TypDecl (_, tA) -> checkTyp cD cPsi (tA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfcheck.ml", lines 734-754, characters 2-7: # 734 | ..match cPsi with # 735 | | Null -> () # 736 | | DDec (cPsi, tX) -> # 737 | checkDCtx cD cPsi; # 738 | checkDec cD cPsi (tX, S.LF.id) # ... # 751 | (P.fmt_ppr_lf_mctx P.l0) cD # 752 | end; # 753 | ignore (Whnf.mctxLookup cD k); # 754 | () # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/lfcheck.ml", lines 962-963, characters 5-47: # 962 | .....let Some (ICtx cPhi) = mmvar.instantiation.contents in # 963 | checkSchema loc cD cPhi schema_name schema # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/lfcheck.ml", lines 1019-1027, characters 2-57: # 1019 | ..match (sArec, sBrec) with # 1020 | | ((SigmaLast _, _), (SigmaLast _, _)) -> # 1021 | None # 1022 | # 1023 | | ((SigmaElem (_, _, recA), s), (SigmaLast _, _)) -> # 1024 | Some (recA, s) # 1025 | # 1026 | | ((SigmaElem (_, _, recA), s), (SigmaElem (_, _, recB), s')) -> # 1027 | elemPostfix (recA, S.LF.dot1 s) (recB, S.LF.dot1 s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((SigmaLast (_, _), _), (SigmaElem (_, _, _), _)) # # File "src/core/lfcheck.ml", lines 1075-1101, characters 2-69: # 1075 | ..match (cM, cTt) with # 1076 | | (CObj cPsi, (CTyp (Some w), _)) -> # 1077 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get w in # 1078 | checkSchema loc cD cPsi name schema # 1079 | # ... # 1098 | let mtyp1 = Whnf.cnormMTyp (mtyp1, t) in # 1099 | let (_, mtyp2) = Whnf.mctxLookup cD u in # 1100 | if Bool.not (Whnf.convMTyp mtyp1 mtyp2) # 1101 | then Error.raise_violation ("Contextual substitution ill-typed") # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CObj cPsi, (CTyp None, _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Total.cmo -c -impl src/core/total.ml) # File "src/core/total.ml", lines 31-45, characters 6-9: # 31 | ......begin match (x, args) with # 32 | | (_, []) -> # 33 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n Report as a bug." # 34 | | (Comp.M (cM, _ ), (Comp.M (cM', _ ) :: _)) -> # 35 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \nBeluga cannot establish that the given recursive call is a size-preserving variant of it.\nArgument found: %a@\nArgument expected: %a@" # ... # 42 | # 43 | | (Comp.V _, _) -> # 44 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n\n Found computation-level variable while generated recursive call expected a meta-object.\n\nCheck specified totality declaration." # 45 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (M (_, _), (E|DC)::_) # # File "src/core/total.ml", lines 138-141, characters 2-56: # 138 | ..function # 139 | | LF.Empty -> LF.Empty # 140 | | LF.Dec (cG, Comp.CTypDecl (x, tau, _)) -> # 141 | LF.Dec (mark_gctx cG, Comp.CTypDecl (x, tau, true)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/total.ml", lines 155-157, characters 2-40: # 155 | ..function # 156 | | None -> " _ " # 157 | | Some (Comp.Arg x) -> string_of_int x # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (Lex _|Simul _) # # File "src/core/total.ml", line 249, characters 30-37: # 249 | let xs = List.map (fun (Arg x) -> x) xs in # ^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lex _|Simul _) # # File "src/core/total.ml", lines 245-258, characters 4-41: # 245 | ....match dec.order with # 246 | | `inductive (Arg x) -> # 247 | (dec.name, Some [x], (tau, Whnf.m_id)) # 248 | | `inductive (Lex xs) -> # 249 | let xs = List.map (fun (Arg x) -> x) xs in # ... # 255 | | `not_recursive # 256 | | `trust # 257 | | `partial -> # 258 | (dec.name, None, (tau, Whnf.m_id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # `inductive (Simul _) # # File "src/core/total.ml", line 331, characters 19-54: # 331 | let gen_var loc cD (LF.Decl { name = x; typ = cU; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/total.ml", lines 404-413, characters 2-31: # 404 | ..function # 405 | | [] -> [] # 406 | | Comp.M (cM, cU) :: args -> # 407 | if uninstantiated_arg cM # 408 | then Comp.DC :: generalize args # 409 | else Comp.M (cM, cU) :: generalize args # 410 | | Comp.V x :: args -> # 411 | Comp.V x :: generalize args # 412 | | Comp.DC :: args -> # 413 | Comp.DC :: generalize args # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # E::_ # # File "src/core/total.ml", line 445, characters 19-25: # 445 | let existsElem b (1, n) (LF.SchElem (some_part, block_part)) = # ^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (0, _) # # File "src/core/total.ml", lines 509-511, characters 6-47: # 509 | ......let LF.ClTyp (LF.MTyp tA, cPsi) = cU in # 510 | (Unify.unifyMetaTyp cD (cU , Whnf.m_id) (cU0, Whnf.m_id); # 511 | gen_meta_obj (k, Substitution.LF.id) cU) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/total.ml", lines 544-592, characters 2-30: # 544 | ..function # 545 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) # 546 | | (1, (Comp.TypPiBox (_, LF.Decl { typ = cU'; _ }, tau), theta)) -> # 547 | let cU0 = Whnf.cnormMTyp (cU', theta) in # 548 | begin # ... # 589 | # 590 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> # 591 | let (spine, tau_r) = rec_spine cD (k, cU) (n - 1, (tau2, theta)) in # 592 | (Comp.DC :: spine, tau_r) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (2, # ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| # TypCross (_, _)|TypClo (_, _)|TypInd _), # _)) # # File "src/core/total.ml", lines 595-619, characters 2-30: # 595 | ..function # 596 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) # 597 | # 598 | | (1, (Comp.TypPiBox _, _)) -> # 599 | raise Not_compatible (* Error *) # ... # 616 | # 617 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> # 618 | let (spine, tau_r) = rec_spine' cD (x, ttau0) (n - 1, (tau2, theta)) in # 619 | (Comp.DC :: spine, tau_r) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, # ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| # TypCross (_, _)|TypClo (_, _)|TypInd _), # _)) # # File "src/core/total.ml", lines 622-713, characters 2-43: # 622 | ..match cD' with # 623 | | LF.Empty -> cIH # 624 | # 625 | | LF.Dec (cD', LF.Decl { name = u; typ = cU; inductivity = Inductivity.Not_inductive; _ }) -> # 626 | dprintf # ... # 710 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d@\n" j); # 711 | let cIH' = mk_all (cIH, j) mf_list in # 712 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d" (j + 1)); # 713 | gen_rec_calls cD cIH' (cD', j + 1) mfs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt _) # # File "src/core/total.ml", lines 725-791, characters 2-47: # 725 | ..match cG0 with # 726 | | LF.Empty -> cIH # 727 | | LF.Dec (cG', Comp.CTypDecl (x, tau0, false)) -> # 728 | gen_rec_calls' cD cG cIH (cG', j + 1) mfs # 729 | # ... # 788 | mk_all cIH' mf_list # 789 | in # 790 | let cIH' = mk_all cIH mf_list in # 791 | gen_rec_calls' cD cG cIH' (cG', j + 1) mfs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, CTypDeclOpt _) # # File "src/core/total.ml", lines 860-868, characters 2-69: # 860 | ..match cPsi with # 861 | (* cPsi |- tA *) # 862 | | LF.Null -> None # 863 | | LF.CtxVar _ -> None # 864 | | LF.DDec (cPsi, LF.TypDecl (_, tB)) -> # 865 | if Whnf.convTyp (tA, Substitution.LF.invShift) (tB, Substitution.LF.id) # 866 | then Some k # 867 | else # 868 | pos cPsi (Whnf.normTyp (tA, Substitution.LF.invShift)) (k + 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/total.ml", lines 1087-1111, characters 5-8: # 1087 | .....begin # 1088 | match prefixDCtx cD cPsi cPsi0 (* cPsi0 = cPsi, cPsi1 *) , # 1089 | prefix_hat # 1090 | (Whnf.cnorm_psihat phat Whnf.m_id) # 1091 | (Whnf.cnorm_psihat phat' Whnf.m_id) # ... # 1108 | end ; # 1109 | (l, LF.ClObj (Context.extend_hatctx k phat0, LF.MObj (Whnf.norm (tM, dot_k s_proj k)))) , LF.ClTyp (Whnf.normClTyp (tA , dot_k s_proj k), padctx cPsi' k) # 1110 | end # 1111 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Some k', None) # # File "src/core/total.ml", lines 1121-1124, characters 5-87: # 1121 | .....let LF.Root (_, tH', _, _) = # 1122 | Whnf.norm (LF.Root (l, tH, LF.Nil, Plicity.explicit), s_proj) # 1123 | in # 1124 | (l, LF.ClObj (phat0, LF.PObj tH')) , LF.ClTyp (Whnf.normClTyp (tA, s_proj), cPsi') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/total.ml", lines 1134-1140, characters 2-65: # 1134 | ..match args with # 1135 | | [] -> [] # 1136 | | Comp.DC :: args -> Comp.DC :: shiftArgs cD args (cPsi', s_proj, cPsi) # 1137 | | Comp.V x :: args -> Comp.V x :: shiftArgs cD args (cPsi', s_proj, cPsi) # 1138 | | Comp.M (cM, cU ) :: args -> # 1139 | let cM' , cU'= shiftMetaObj cD (cM , cU) (cPsi', s_proj, cPsi) in # 1140 | Comp.M (cM', cU') :: shiftArgs cD args (cPsi', s_proj, cPsi) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # E::_ # # File "src/core/total.ml", lines 1316-1337, characters 2-40: # 1316 | ..function # 1317 | | Comp.TypBase (loc, c, _) -> # 1318 | Bool.not (Id.cid_comp_typ_equal a c) # 1319 | && begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with # 1320 | | Sgn.Positivity -> true # ... # 1334 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && no_occurs a tau2 # 1335 | | Comp.TypCross (_, taus) -> List2.for_all (no_occurs a) taus # 1336 | | Comp.TypPiBox (_, _, tau') -> no_occurs a tau' # 1337 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1340-1360, characters 2-40: # 1340 | ..function # 1341 | | Comp.TypBase (loc, c, _) -> # 1342 | Id.cid_comp_typ_equal a c # 1343 | || begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with # 1344 | | Sgn.Positivity -> true # ... # 1357 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && check_positive a tau2 # 1358 | | Comp.TypCross (_, taus) -> List2.for_all (check_positive a) taus # 1359 | | Comp.TypPiBox (_, _, tau') -> check_positive a tau' # 1360 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1364-1372, characters 2-40: # 1364 | ..function # 1365 | | Comp.TypBase _ -> true # 1366 | | Comp.TypCobase _ -> true # 1367 | | Comp.TypDef _ -> raise Unimplemented # 1368 | | Comp.TypBox _ -> true # 1369 | | Comp.TypArr (_, tau1, tau2) -> check_positive a tau1 && positive a tau2 # 1370 | | Comp.TypCross (_, taus) -> List2.for_all (positive a) taus # 1371 | | Comp.TypPiBox (_, _, tau') -> positive a tau' # 1372 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1492-1531, characters 2-27: # 1492 | ..match tau1 with # 1493 | | Comp.TypBase (loc, c, mS1) -> # 1494 | if Id.cid_comp_typ_equal a c # 1495 | then # 1496 | begin # ... # 1528 | | Comp.TypBox _ # 1529 | | Comp.TypClo _ # 1530 | | Comp.TypCobase _ # 1531 | | Comp.TypDef _ -> true # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1555-1580, characters 8-48: # 1555 | ........function # 1556 | | Comp.TypBase _ # 1557 | | Comp.TypCobase _ # 1558 | | Comp.TypBox _ -> true # 1559 | # ... # 1577 | | Comp.TypPiBox (_, dec, tau') -> strat (LF.Dec (cD0, dec)) tau' # 1578 | # 1579 | | Comp.TypDef _ # 1580 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Lfrecon.cmo -c -impl src/core/lfrecon.ml) # File "src/core/lfrecon.ml", lines 253-262, characters 2-29: # 253 | ..function # 254 | | Apx.LF.BVar _ -> "BVar" # 255 | | Apx.LF.Const _ -> "Const" # 256 | | Apx.LF.MVar _ -> "MVar" # 257 | | Apx.LF.PVar (Apx.LF.Offset _, _) -> "PVar Offset " # 258 | | Apx.LF.PVar (Apx.LF.MInst _, _) -> "PVar PInst " # 259 | | Apx.LF.Proj (head, _) -> "Proj " ^ what_head head # 260 | | Apx.LF.FVar _ -> "FVar" # 261 | | Apx.LF.FMVar _ -> "FMVar" # 262 | | Apx.LF.FPVar _ -> "FPVar" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Hole # # File "src/core/lfrecon.ml", lines 275-276, characters 5-19: # 275 | .....let (None, d) = Context.dctxToHat cPsi in # 276 | Int.LF.Shift d # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Some _, _) # # File "src/core/lfrecon.ml", lines 311-333, characters 8-80: # 311 | ........let CTyp s_cid = mmvar1.typ in # 312 | if d = d' # 313 | then # 314 | begin # 315 | begin match c_var with # ... # 330 | true # 331 | end # 332 | else # 333 | Error.raise_not_implemented "[unify_phat] ctx_var with a full context" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (_, _) # # File "src/core/lfrecon.ml", lines 358-359, characters 9-42: # 358 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid); _ }) = Store.FCVar.get n in # 359 | Store.Cid.Schema.get_schema s_cid # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=CTyp None; _ }) # # File "src/core/lfrecon.ml", lines 352-366, characters 2-92: # 352 | ..match ctxvar with # 353 | | Some (Int.LF.CtxOffset _ as phi) -> # 354 | Store.Cid.Schema.get_schema (Context.lookupCtxVarSchema cD phi) # 355 | | Some (Int.LF.CtxName n) -> # 356 | begin # ... # 363 | # 364 | | Some Int.LF.(CInst ({ typ = CTyp (Some s_cid); _ }, _)) -> # 365 | Store.Cid.Schema.get_schema s_cid # 366 | | None -> Error.raise_violation "No context variable for which we could retrieve a schema" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (CInst ({typ=CTyp None; _ }, _)) # # File "src/core/lfrecon.ml", lines 372-376, characters 2-44: # 372 | ..function # 373 | | Int.LF.Atom _ -> m # 374 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA) -> # 375 | dprint (fun () -> "eta FMV - add Lam "); # 376 | Apx.LF.Lam (loc, x, addPrefix loc m tA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 385-389, characters 4-62: # 385 | ....function # 386 | | Int.LF.Atom _ -> (k, s) # 387 | | Int.LF.PiTyp (_, tA) -> # 388 | let (k', s') = go (k + 1) s tA in # 389 | (k' - 1, Apx.LF.Dot (Apx.LF.Head (Apx.LF.BVar k'), s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/lfrecon.ml", lines 391-395, characters 2-18: # 391 | ..match tA, s with # 392 | | Int.LF.Atom _, _ -> (k, s) # 393 | | Int.LF.PiTyp _, None -> # 394 | let (k', s') = go k Apx.LF.Id tA in # 395 | (k', Some s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp (_, _), Some _) # # File "src/core/lfrecon.ml", line 399, characters 20-40: # 399 | let etaExpandMV loc (Apx.LF.MVar (x, s)) tA = # ^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Hole|BVar _|Const _|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| # FPVar (_, _)) # # File "src/core/lfrecon.ml", lines 406-410, characters 4-52: # 406 | ....function # 407 | | Int.LF.Atom _ -> (k, tS) # 408 | | Int.LF.PiTyp (_, tA') -> # 409 | let tN = Int.LF.Root (loc, Int.LF.BVar k, Int.LF.Nil, Plicity.explicit) in # 410 | etaExpSpine (k + 1) (Int.LF.App (tN, tS)) tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/lfrecon.ml", lines 414-417, characters 4-54: # 414 | ....match tA with # 415 | | Int.LF.Atom _ -> tM # 416 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> # 417 | Int.LF.Lam (loc, x, etaExpPrefix loc (tM, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 422-424, characters 4-24: # 422 | ....match h with # 423 | | Int.LF.BVar x -> Int.LF.BVar (x + k - 1) # 424 | | Int.LF.FVar _ -> h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 457-461, characters 4-55: # 457 | ....function # 458 | | Int.LF.Atom _ -> (k, tS) # 459 | | Int.LF.PiTyp (_, tA') -> # 460 | let tN = Apx.LF.Root (loc, Apx.LF.BVar k, Apx.LF.Nil) in # 461 | etaExpApxSpine (k + 1) (Apx.LF.App (tN, tS)) tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/lfrecon.ml", lines 464-468, characters 4-57: # 464 | ....match tA with # 465 | | Int.LF.Atom _ -> tM # 466 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> # 467 | dprint (fun () -> "eta - add Lam "); # 468 | Apx.LF.Lam (loc, x, etaExpApxPrefix loc (tM, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 613-614, characters 2-33: # 613 | ..let Int.LF.TypDecl (_, Int.LF.Sigma recA) = tp in # 614 | getProjIndex loc cD cPsi recA k # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 617-630, characters 2-19: # 617 | ..match h with # 618 | | Apx.LF.BVar k -> Apx.LF.BVar (ConvSigma.map conv_list k) # 619 | # 620 | | Apx.LF.Proj (Apx.LF.BVar k, p) -> # 621 | let tp = # ... # 627 | let j = getProjIndexFromType loc cD cPsi tp p in # 628 | dprintf (fun p -> p.fmt "flattenProjPat Proj Case: k = %d j = %d@\n" k j); # 629 | let k' = ConvSigma.map conv_list k - j + 1 in # 630 | Apx.LF.BVar k' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Proj # ((Hole|Const _|MVar (_, _)|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| # FPVar (_, _)), # _) # # File "src/core/lfrecon.ml", lines 637-643, characters 7-41: # 637 | .......function # 638 | | Apx.LF.Id -> Apx.LF.Id # 639 | | Apx.LF.EmptySub -> Apx.LF.EmptySub # 640 | | Apx.LF.Dot (Apx.LF.Head h, s) -> # 641 | let s' = go s in # 642 | let h' = flattenProjPatHead loc cD h conv_list cPsi in # 643 | Apx.LF.Dot (Apx.LF.Head h', s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dot (Obj _, _) # # File "src/core/lfrecon.ml", lines 679-691, characters 2-38: # 679 | ..match s with # 680 | | Apx.LF.Id -> s # 681 | # 682 | | Apx.LF.EmptySub -> s # 683 | # ... # 688 | Apx.LF.Dot (Apx.LF.Head h, flattenSub s) # 689 | # 690 | | Apx.LF.Dot (Apx.LF.Obj (Apx.LF.Tuple (_, tM)), s) -> # 691 | flattenVarTuple tM (flattenSub s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dot (Obj (Lam (_, _, _)|Root (_, _, _)|LFHole (_, _)|Ann (_, _, _)), _) # # File "src/core/lfrecon.ml", lines 697-698, characters 2-77: # 697 | ..function # 698 | | Apx.LF.Root (_, Apx.LF.BVar k, Apx.LF.Nil) -> Apx.LF.Head (Apx.LF.BVar k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Root (_, BVar k, App (_, _)) # # File "src/core/lfrecon.ml", lines 827-829, characters 5-60: # 827 | .....let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in # 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in # 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (x, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 822-829, characters 2-60: # 822 | ..function # 823 | | Apx.LF.BVar k -> Context.ctxDec cPsi k, Int.LF.BVar k # 824 | | Apx.LF.Proj (h, nj) -> # 825 | let (tp, h') = synHead cD loc cPsi h in # 826 | let j = getProjIndexFromType loc cD cPsi tp nj in # 827 | let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in # 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in # 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Hole|Const _|MVar (_, _)|PVar (_, _)|FVar _|FMVar (_, _)|FPVar (_, _)) # # File "src/core/lfrecon.ml", lines 858-867, characters 5-8: # 858 | .....begin match synHead cD loc cPsi h with # 859 | | (Int.LF.TypDecl (x, tA), h') -> # 860 | let tA' = # 861 | pruningTyp loc cD cPsi (Context.dctxToHat cPsi) # 862 | (tA, S.LF.id) (Int.LF.MShift 0, ss) # 863 | in # 864 | ( Int.LF.DDec (cPhi, Int.LF.TypDecl (x, tA')) # 865 | , Int.LF.Dot (Int.LF.Head h', s') # 866 | ) # 867 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDeclOpt _, _) # # File "src/core/lfrecon.ml", lines 884-890, characters 2-66: # 884 | ..function # 885 | | Apx.LF.Typ -> Int.LF.Typ # 886 | | Apx.LF.PiKind ((Apx.LF.TypDecl (x, a), depend, plicity), k) -> # 887 | let tA = elTyp Pi (*cD=*)Int.LF.Empty cPsi a in # 888 | let cPsi' = Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) in # 889 | let tK = elKind cD cPsi' k in # 890 | Int.LF.PiKind ((Int.LF.TypDecl (x, tA), depend, plicity), tK) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 909-925, characters 2-25: # 909 | ..function # 910 | | Apx.LF.Atom (loc, a, s) -> # 911 | let { Store.Cid.Typ.Entry.kind = tK; implicit_arguments = i; _ } = Store.Cid.Typ.get a in # 912 | let s' = mkShift recT cPsi in # 913 | (* let s' = S.LF.id in *) # ... # 922 | # 923 | | Apx.LF.Sigma typRec -> # 924 | let typRec' = elTypRec recT cD cPsi typRec in # 925 | Int.LF.Sigma typRec' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 977-1023, characters 2-34: # 977 | ..match (m, sA) with # 978 | | (Apx.LF.Lam (loc, x, m), (Int.LF.PiTyp ((Int.LF.TypDecl _ as decl, _, _), tB), s)) -> # 979 | (* cPsi' = cPsi, x:tA *) # 980 | let cPsi' = Int.LF.DDec (cPsi, S.LF.decSub decl s) in # 981 | let tM = elTerm recT cD cPsi' m (tB, S.LF.dot1 s) in # ... # 1020 | | (Apx.LF.LFHole (loc, m_name), tA) -> # 1021 | let id = Holes.allocate () in # 1022 | let name = HoleId.name_of_option m_name in # 1023 | Int.LF.LFHole (loc, id, name) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _), (PiTyp ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfrecon.ml", lines 1081-1091, characters 9-12: # 1081 | .........let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in # 1082 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in # 1083 | begin # 1084 | try # 1085 | Unify.unifyTyp cD cPsi sQ sP; # ... # 1088 | | Unify.Failure msg -> # 1089 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1090 | | _ -> throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1091 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 1213-1280, characters 9-12: # 1213 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.MTyp tQ, cPhi); _ }) = Store.FCVar.get u in # 1214 | dprintf # 1215 | begin fun p -> # 1216 | p.fmt "[elTerm'] @[<v>FMV %a of type %a[%a]@,in cD_d = %a@,and cD = %a@]" # 1217 | Name.pp u # ... # 1277 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) # 1278 | |_ -> # 1279 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) # 1280 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 1476-1500, characters 9-12: # 1476 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp tA, cPhi); _ }) = Store.FCVar.get p in # 1477 | let d = Context.length cD - Context.length cD_d in # 1478 | let (tA, cPhi) = # 1479 | if d = 0 # 1480 | then (tA, cPhi) # ... # 1497 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) # 1498 | | _ -> # 1499 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) # 1500 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 1571-1607, characters 9-12: # 1571 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp ((Int.LF.Sigma typRec) as tA), cPhi); _ }) = # 1572 | Store.FCVar.get p # 1573 | in # 1574 | let d = Context.length cD - Context.length cD_d in # 1575 | let (tA, cPhi) = # ... # 1604 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1605 | | _ -> # 1606 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1607 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, # Decl # {typ=ClTyp (PTyp (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 1808-1813, characters 10-13: # 1808 | ..........begin match S.LF.bvarSub k s'' with # 1809 | | Int.LF.Head (Int.LF.BVar j) -> # 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) # 1811 | | Int.LF.Head (Int.LF.PVar (p, r')) -> # 1812 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r' s''), tS, Plicity.explicit) # 1813 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1806-1817, characters 7-10: # 1806 | .......begin match h with # 1807 | | Int.LF.BVar k -> # 1808 | begin match S.LF.bvarSub k s'' with # 1809 | | Int.LF.Head (Int.LF.BVar j) -> # 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) # ... # 1814 | | Int.LF.PVar (p, r) -> # 1815 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r s''), tS, Plicity.explicit) # 1816 | (* | Int.LF.Proj (Int.LF.PVar (p, r), i) -> Int.LF.Root (loc, Int.LF) *) # 1817 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1857-1879, characters 5-8: # 1857 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = # 1858 | try # 1859 | Context.ctxSigmaDec cPsi x # 1860 | with # 1861 | | _ -> # ... # 1876 | with # 1877 | | Unify.Failure msg -> # 1878 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1879 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 1882-1910, characters 5-8: # 1882 | .....begin # 1883 | match Whnf.mctxPDec cD p with # 1884 | | (_, Int.LF.Sigma recA, cPsi') -> # 1885 | let t' = elSub loc recT cD cPsi t Int.LF.Subst cPsi' in # 1886 | let k = getProjIndex loc cD cPsi recA proj in # ... # 1907 | end # 1908 | | (_, Int.LF.PiTyp _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantPi)) # 1909 | | (_, Int.LF.Atom _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantAtom)) # 1910 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, TClo _, _) # # File "src/core/lfrecon.ml", lines 1941-1951, characters 12-15: # 1941 | ............begin match S.LF.bvarSub y s'' with # 1942 | | Int.LF.Head (Int.LF.BVar x) -> # 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) # 1944 | | Int.LF.Head (Int.LF.PVar (p, r')) -> # 1945 | Int.LF.Root # ... # 1948 | , tS # 1949 | , Plicity.explicit # 1950 | ) # 1951 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1939-1959, characters 9-12: # 1939 | .........begin match h with # 1940 | | Int.LF.BVar y -> # 1941 | begin match S.LF.bvarSub y s'' with # 1942 | | Int.LF.Head (Int.LF.BVar x) -> # 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) # ... # 1956 | , tS # 1957 | , Plicity.explicit # 1958 | ) # 1959 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1044-1980, characters 2-25: # 1044 | ..match r with # 1045 | | Apx.LF.Ann (_loc, m, a) -> # 1046 | elTerm' recT cD cPsi m sP # 1047 | # 1048 | | Apx.LF.LFHole (location, m_name) -> # ... # 1977 | # 1978 | | Apx.LF.Root (loc, h, _) -> # 1979 | dprintf (fun p -> p.fmt "[elTerm' **] h = %s@\n" (what_head h)); # 1980 | throw loc CompTypAnn # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|Tuple (_, _)) # # File "src/core/lfrecon.ml", lines 2102-2104, characters 5-65: # 2102 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in # 2103 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in # 2104 | (Int.LF.Root (loc, Int.LF.BVar x, tS, Plicity.explicit), sQ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 2159-2169, characters 5-82: # 2159 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = Context.ctxSigmaDec cPsi x in # 2160 | let k = getProjIndex loc cD cPsi recA proj in # 2161 | let sA = # 2162 | try # 2163 | Int.LF.getType (Int.LF.BVar x) (recA, S.LF.id) k # ... # 2166 | throw loc (ProjNotValid (cD, cPsi, k, (Int.LF.Sigma recA, S.LF.id))) # 2167 | in # 2168 | let (tS, sQ) = elSpine loc recT cD cPsi spine sA in # 2169 | (Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit), sQ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 2276-2310, characters 11-14: # 2276 | ...........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.STyp (cl0, cPhi0), cPsi0); _ }) = # 2277 | Store.FCVar.get s_name # 2278 | in # 2279 | svar_le (cl0, cl); # 2280 | let d = Context.length cD - Context.length cD_d in # ... # 2307 | with # 2308 | | Unify.Failure msg -> # 2309 | throw loc (IllTypedSubVar (cD, cPsi, cPhi)) # 2310 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) # # File "src/core/lfrecon.ml", lines 2514-2516, characters 9-40: # 2514 | .........let Int.LF.TypDecl (_, tA') = Context.ctxDec (Whnf.cnormDCtx (cPsi, Whnf.m_id)) x in # 2515 | dprint (fun () -> "[elHead] done"); # 2516 | (Int.LF.BVar x, (tA', S.LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 2574-2576, characters 9-59: # 2574 | .........let (offset, Int.LF.ClTyp (Int.LF.MTyp tP, cPhi)) = Whnf.mctxMVarPos cD u in # 2575 | let s' = elSub loc recT cD cPsi s Int.LF.Subst cPhi in # 2576 | (Int.LF.MVar (Int.LF.Offset offset, s'), (tP, s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (offset, ClTyp ((PTyp _|STyp (_, _)), _)) # # File "src/core/lfrecon.ml", lines 2583-2585, characters 5-41: # 2583 | .....let (offset, Int.LF.ClTyp (Int.LF.PTyp tA, cPhi)) = Whnf.mctxMVarPos cD p in # 2584 | let s' = elSub loc recT cD cPsi s cl cPhi in # 2585 | (Int.LF.PVar (offset, s'), (tA, s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (offset, ClTyp ((MTyp _|STyp (_, _)), _)) # # File "src/core/lfrecon.ml", lines 2643-2674, characters 4-36: # 2643 | ....match (sA, recT) with # 2644 | | ((Int.LF.PiTyp ((Int.LF.TypDecl (n, tA), _, _), tB), s), Pi) -> # 2645 | (* cPsi' |- tA <= typ # 2646 | * cPsi |- s <= cPsi' cPsi |- tN <= [s]A # 2647 | * # ... # 2671 | in # 2672 | # 2673 | let (spine', sP) = elSpineI loc recT cD cPsi spine (i - 1) (tB, Int.LF.Dot (Int.LF.Obj tN, s)) in # 2674 | (Int.LF.App (tN, spine'), sP) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((PiTyp ((TypDeclOpt _, _, _), _), _), _) # # File "src/core/lfrecon.ml", lines 2705-2708, characters 4-25: # 2705 | ....function # 2706 | | Int.LF.Atom _ -> 0 # 2707 | | Int.LF.PiTyp (_, tB2) -> 1 + typLength tB2 # 2708 | | Int.LF.Sigma _ -> 0........................................................ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/lfrecon.ml", lines 2725-2732, characters 4-32: # 2725 | ....match (spine, Whnf.whnfTyp sA) with # 2726 | | (Apx.LF.Nil, sP) -> # 2727 | (Int.LF.Nil, sP) (* errors are postponed to reconstruction phase *) # 2728 | # 2729 | | (Apx.LF.App (m, spine), (Int.LF.PiTyp ((Int.LF.TypDecl (_, tA), _, _), tB), s)) -> # 2730 | let tM = elTerm recT cD cPsi m (tA, s) in # 2731 | let (tS, sP) = elSpine loc recT cD cPsi spine (tB, Int.LF.Dot (Int.LF.Obj tM, s)) in # 2732 | (Int.LF.App (tM, tS), sP) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (App (m, spine), (PiTyp ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfrecon.ml", lines 2741-2760, characters 4-30: # 2741 | ....match (sK, recT) with # 2742 | | ((Int.LF.PiKind ((Int.LF.TypDecl (n, tA), _, _), tK), s), Pi) -> # 2743 | (* let sshift = mkShift recT cPsi in *) # 2744 | (* let tN = Whnf.etaExpandMV Int.LF.Null (tA, s) sshift in *) # 2745 | let tN = Whnf.etaExpandMV cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in # ... # 2757 | Whnf.etaExpandMMV Location.ghost cD cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive # 2758 | in # 2759 | let spine' = elKSpineI loc recT cD cPsi spine (i - 1) (tK, Int.LF.Dot (Int.LF.Obj tN, s)) in # 2760 | Int.LF.App (tN, spine') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((PiKind ((TypDeclOpt _, _, _), _), _), _) # # File "src/core/lfrecon.ml", lines 2834-2863, characters 5-32: # 2834 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in # 2835 | (* cPsi |- tA : type # 2836 | * cPsi |- s' : cPsi' # 2837 | *) # 2838 | let ss = S.LF.invert s' in # ... # 2860 | in # 2861 | # 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in # 2863 | (Int.LF.App (tN', tS), tB') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 2824-2863, characters 2-32: # 2824 | ..match (spine, sP) with # 2825 | | (Apx.LF.Nil, _) -> # 2826 | let ss = S.LF.invert s' in # 2827 | let tQ = pruningTyp Location.ghost cD cPsi (Context.dctxToHat cPsi) sP (Int.LF.MShift 0, ss) in # 2828 | (* PROBLEM: [s'][ss] [s]P is not really P; in fact [ss][s]P may not exist; # ... # 2860 | in # 2861 | # 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in # 2863 | (Int.LF.App (tN', tS), tB') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (App (Root (loc, BVar x, App (_, _)), _), _) # # File "src/core/lfrecon.ml", lines 2943-2998, characters 5-8: # 2943 | .....begin match instantiation.contents with # 2944 | | None -> # 2945 | begin # 2946 | try # 2947 | let tA = Store.FVar.get x in # ... # 2995 | | _ -> # 2996 | throw loc (UnboundName x) # 2997 | end # 2998 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (IHead _|ISub _|ICtx _) # # File "src/core/lfrecon.ml", lines 2939-2998, characters 2-8: # 2939 | ..function # 2940 | | [] -> () # 2941 | | ((_, Apx.LF.(Root (loc, FVar x, spine)), # 2942 | Int.LF.(Inst {instantiation; typ = ClTyp (MTyp tP, cPsi); _})) :: cnstrs) -> # 2943 | begin match instantiation.contents with # ... # 2995 | | _ -> # 2996 | throw loc (UnboundName x) # 2997 | end # 2998 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Root (loc, FVar x, spine), # Inst {instantiation=instantiation; typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }):: # _ # # File "src/core/lfrecon.ml", lines 3020-3025, characters 7-99: # 3020 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = # 3021 | lookup_fcvar loc u # 3022 | in # 3023 | let cPhi = weakenAppropriately cD_d cPhi in # 3024 | let s'' = elSub loc cPsi s cPhi in # 3025 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FMVar (u, s''), Nil, Plicity.explicit)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 3027-3033, characters 7-98: # 3027 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (PTyp tA, cPhi); _ })) = # 3028 | lookup_fcvar loc x # 3029 | in # 3030 | let cPhi = weakenAppropriately cD_d cPhi in # 3031 | let s'' = elSub loc cPsi s cPhi in # 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in # 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 3017-3033, characters 4-98: # 3017 | ....match tM, Int.LF.(v.typ) with # 3018 | | Apx.LF.(Root (loc, FMVar (u, s), _nil_spine)), Int.LF.(ClTyp (MTyp _, cPsi)) -> # 3019 | assert (match _nil_spine with Apx.LF.Nil -> true | _ -> false); # 3020 | let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = # 3021 | lookup_fcvar loc u # ... # 3030 | let cPhi = weakenAppropriately cD_d cPhi in # 3031 | let s'' = elSub loc cPsi s cPhi in # 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in # 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Root (_, FMVar (u, s), _nil_spine), ClTyp ((PTyp _|STyp (_, _)), _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Check.cmo -c -impl src/core/check.ml) # File "src/core/check.ml", lines 471-475, characters 4-46: # 471 | ....function # 472 | | I.Root (_, h, tS, _) -> fmv_spine (fmv_head cD h) tS # 473 | | I.Lam (_, _, tM) -> fmv_normal cD tM # 474 | | I.LFHole _ -> cD # 475 | | I.Tuple (_, tuple) -> fmv_tuple cD tuple # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Clo _ # # File "src/core/check.ml", lines 490-492, characters 4-55: # 490 | ....function # 491 | | I.Nil -> cD # 492 | | I.App (tM, tS) -> fmv_spine (fmv_normal cD tM) tS # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # SClo _ # # File "src/core/check.ml", lines 500-503, characters 4-61: # 500 | ....function # 501 | | I.Null -> cD # 502 | | I.CtxVar (I.CtxOffset k) -> mark_ind cD k # 503 | | I.DDec (cPsi, decl) -> fmv_decl (fmv_dctx cD cPsi) decl # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/check.ml", lines 511-514, characters 4-38: # 511 | ....function # 512 | | I.Atom (_, _, tS) -> fmv_spine cD tS # 513 | | I.PiTyp ((decl, _, _), tA) -> fmv_typ (fmv_decl cD decl) tA # 514 | | I.Sigma trec -> fmv_trec cD trec # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/check.ml", lines 534-538, characters 4-68: # 534 | ....function # 535 | | (_, I.CObj (cPsi)) -> fmv_dctx cD cPsi # 536 | | (_, I.ClObj (phat, I.MObj tM)) -> fmv_normal cD tM # 537 | | (_, I.ClObj (phat, I.PObj h)) -> fmv_head (fmv_hat cD phat) h # 538 | | (_, I.ClObj (phat, I.SObj s)) -> fmv_subst (fmv_hat cD phat) s # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, (MUndef|MV _)) # # File "src/core/check.ml", lines 553-556, characters 4-43: # 553 | ....function # 554 | | PatNil -> cD # 555 | | PatApp (_, pat, pat_spine) -> # 556 | fmv_pat_spine (fmv cD pat) pat_spine # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # # File "src/core/check.ml", lines 561-595, characters 4-10: # 561 | ....match (t, cD) with # 562 | | (I.MShift k, I.Empty) -> cD1' # 563 | | (I.MShift k, cD) # 564 | when k < 0 -> # 565 | Error.raise_violation "Contextual substitution ill-formed" # ... # 592 | else # 593 | id_map_ind cD1' ms cD # 594 | | _ -> id_map_ind cD1' ms cD # 595 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MDot (_, _), Dec (cD, DeclOpt _)) # # File "src/core/check.ml", line 618, characters 11-38: # 618 | |> fun (CTypDecl (u, tau, wf_tag)) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/check.ml", lines 747-771, characters 6-12: # 747 | ......match cPsi0 with # 748 | | Int.LF.Null -> () (* raise (Error (Location.ghost, IllegalParamTyp (cD, cPsi, tA))) *) # 749 | | Int.LF.CtxVar psi -> # 750 | (* tA is an instance of a schema block *) # 751 | let { Store.Cid.Schema.Entry.name; schema = Int.LF.Schema elems } = # ... # 768 | Unify.unifyTyp cD cPsi (tA, Substitution.LF.id) (tB0, Substitution.LF.id) # 769 | with # 770 | | _ -> checkParamTypeValid' (cPsi0', n + 1) # 771 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi0', TypDeclOpt _) # # File "src/core/check.ml", lines 776-796, characters 4-68: # 776 | ....match (mS, cKt) with # 777 | | (MetaNil, (Ctype _, _)) -> () # 778 | | (MetaApp (mO, mT, mS, plicity_app), (PiKind (_, I.Decl { typ = ctyp; plicity = plicity_pi; inductivity; _ }, cK), t)) -> # 779 | if Plicity.(plicity_app <> plicity_pi) # 780 | then Error.raise_violation "[checkMetaSpine] plicity mismatch"; # ... # 793 | Location.print_short loc # 794 | ) # 795 | end; # 796 | checkMetaSpine loc cD mS (cK, I.MDot (metaObjToMFront mO, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaNil, (PiKind (_, _, _), _)) # # File "src/core/check.ml", line 822, characters 20-56: # 822 | let checkCDecl cD (I.Decl { name = x; typ = ctyp; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/check.ml", lines 834-868, characters 4-35: # 834 | ....function # 835 | | TypBase (loc, c, mS) -> # 836 | let { Store.Cid.CompTyp.Entry.kind = cK; _ } = Store.Cid.CompTyp.get c in # 837 | checkMetaSpine loc cD mS (cK, C.m_id) # 838 | # ... # 865 | end; # 866 | checkTyp (I.Dec (cD, cdecl)) tau' # 867 | # 868 | | TypInd tau -> checkTyp cD tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _)|TypClo (_, _)) # # File "src/core/check.ml", line 880, characters 21-39: # 880 | let extend_mctx cD (x, (I.Decl d), t) = # ^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (x, DeclOpt { _ }, _) # # File "src/core/check.ml", lines 899-916, characters 12-15: # 899 | ............begin match e2 with # 900 | | Box (_, cM, cU) | AnnBox (_, cM, cU) -> # 901 | dprintf # 902 | begin fun p -> # 903 | p.fmt "[useIH] @[<v>check whether compatible IH exists@,\ # ... # 913 | | Option.None -> Total.filter cD cG cIH (loc, E) # 914 | end # 915 | | Hole _ -> Total.drop_arg cIH # 916 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, _)|LetTuple (_, _, _)| # Let (_, _, _)|Case (_, _, _, _)|Impossible (_, _)) # # File "src/core/check.ml", lines 1114-1276, characters 4-45: # 1114 | ....function # 1115 | | Var (loc, x) as e -> # 1116 | let (f,tau', _) = lookup cG x in # 1117 | Typeinfo.Comp.add loc (Typeinfo.Comp.mk_entry cD (tau', C.m_id)) # 1118 | (Format.asprintf "Var %a" (P.fmt_ppr_cmp_exp cD cG P.l0) e); # ... # 1273 | # 1274 | | AnnBox (_, cM, cT) -> # 1275 | checkMetaObj cD cM cT C.m_id; # 1276 | (None, TypBox (getLoc cM, cT), C.m_id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|LetTuple (_, _, _)|Let (_, _, _)| # Box (_, _, _)|Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)) # # File "src/core/check.ml", lines 1350-1357, characters 7-10: # 1350 | .......begin match (tau, theta) with # 1351 | | (TypArr (_, tau1, tau2), theta) -> # 1352 | checkPattern cD cG pat (tau1, theta); # 1353 | synPatSpine cD cG pat_spine (tau2, theta) # 1354 | | (TypPiBox (_, cdecl, tau), theta) -> # 1355 | let theta' = checkPatAgainstCDecl cD pat (cdecl, theta) in # 1356 | synPatSpine cD cG pat_spine (tau, theta') # 1357 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| # TypCross (_, _)|TypClo (_, _)|TypInd _), # _) # # File "src/core/check.ml", line 1373, characters 53-86: # 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (DeclOpt { _ }, _) # # File "src/core/check.ml", line 1373, characters 30-52: # 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = # ^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/check.ml", lines 1665-1667, characters 4-42: # 1665 | ....let { cD = cD'; cG = cG'; cIH = I.Empty } = h in # 1666 | let (cD, cG) = validate_contexts loc (cD, cD') (cG, cG') in # 1667 | proof mcid cD cG cIH total_decs p ttau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} # # File "src/core/check.ml", lines 1678-1743, characters 4-13: # 1678 | ....match d with # 1679 | | Intros hyp -> # 1680 | let tau = Whnf.cnormCTyp ttau in # 1681 | let (cD', cG', cIH', tau', t) = unroll cD cG cIH tau in # 1682 | dprintf # ... # 1740 | end; # 1741 | proof mcid cD cG cIH total_decs p (tau, Whnf.m_id) # 1742 | end # 1743 | args # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ImpossibleSplit _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Load.cmo -c -impl src/core/load.ml) # File "src/core/load.ml", line 63, characters 33-47: # 63 | Parser.Parsing.(only signature_file) # ^^^^^^^^^^^^^^ # Error: This expression has type # "Synprs.signature_file Parser.Parsing.t" = # "Parser.Parsing.state -> # Parser.Parsing.state * (Synprs.signature_file, exn) result" # but an expression was expected of type # "Parser.Parsing.state -> Parser.Parsing.state * ('a, exn) result" # The layout of Synprs.signature_file is any # because the .cmi file for Synprs.signature_file is missing. # But the layout of Synprs.signature_file must be a sublayout of value. # No .cmi file found containing Synprs.signature_file. # Hint: Adding "synprs" to your dependencies might help. # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Translate.cmo -c -impl src/harpoon/translate.ml) # File "src/harpoon/translate.ml", lines 25-26, characters 5-58: # 25 | .....let LF.Dec (cG', Comp.CTypDecl (x, _, _)) = cG' in # 26 | (cD', cG', fun e -> Comp.Fn (Location.ghost, x, f e)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG', CTypDeclOpt _) # # File "src/harpoon/translate.ml", lines 29-33, characters 5-6: # 29 | .....let LF.Dec (cD', LF.Decl { name = x; plicity; _ }) = cD' in # 30 | ( cD' # 31 | , cG' # 32 | , fun e -> Comp.MLam (Location.ghost, x, f e, plicity) # 33 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt { _ }) # # File "src/harpoon/translate.ml", lines 56-68, characters 10-40: # 56 | ..........match cU with # 57 | | (ClTyp ( (MTyp _ | PTyp _), cPsi )) -> # 58 | let tM = # 59 | Root # 60 | ( Location.ghost # ... # 65 | in # 66 | ClObj (Context.dctxToHat (Whnf.cnormDCtx (cPsi, t)), MObj tM) # 67 | | CTyp _ -> # 68 | CObj (CtxVar (CtxOffset 1)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/harpoon/translate.ml", lines 131-149, characters 5-8: # 131 | .....let (cD', cG', LF.Empty, tau', t) = # 132 | Check.Comp.unroll cD cG LF.Empty tau # 133 | in # 134 | (* cD' |- t : cD # 135 | is a weakening meta-substitution *) # ... # 146 | P.(fmt_ppr_cmp_gctx cD_orig l0) cG_orig # 147 | end; # 148 | assert (Whnf.convMCtx cD_orig cD && Whnf.convGCtx (cG_orig, Whnf.m_id) (cG, t)); # 149 | f e # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', cG', Dec (_, WfRec (_, _, _)), _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Session.cmo -c -impl src/harpoon/session.ml) # File "src/harpoon/session.ml", line 276, characters 17-43: # 276 | (alt trust_totality_declaration numeric_totality_declaration))) # ^^^^^^^^^^^^^^^^^^^^^^^^^^ # Error: This expression has type # "Synprs.signature_totality_declaration Beluga_parser.Parser.Parsing.t" # = # "Beluga_parser.Parser.Parsing.state -> # Beluga_parser.Parser.Parsing.state * # (Synprs.signature_totality_declaration, exn) result" # but an expression was expected of type # "Beluga_parser.Parser.Parsing.state -> # Beluga_parser.Parser.Parsing.state * ('a, exn) result" # The layout of Synprs.signature_totality_declaration is any # because the .cmi file for Synprs.signature_totality_declaration is missing. # But the layout of Synprs.signature_totality_declaration must be a sublayout of value. # No .cmi file found containing Synprs.signature_totality_declaration. # Hint: Adding "synprs" to your dependencies might help. # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Command.cmo -c -impl src/core/command.ml) # File "src/core/command.ml", line 240, characters 52-67: # 240 | let comp_expression_parser = Parser.Parsing.(only comp_expression) # ^^^^^^^^^^^^^^^ # Error: This expression has type # "Parser.Parsing.state -> # Parser.Parsing.state * (Synprs.comp_expression_object, exn) result" # but an expression was expected of type # "Parser.Parsing.state -> Parser.Parsing.state * ('a, exn) result" # The layout of Synprs.comp_expression_object is any # because the .cmi file for Synprs.comp_expression_object is missing. # But the layout of Synprs.comp_expression_object must be a sublayout of value. # No .cmi file found containing Synprs.comp_expression_object. # Hint: Adding "synprs" to your dependencies might help. # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Coverage.cmo -c -impl src/core/coverage.ml) # File "src/core/coverage.ml", line 76, characters 26-46: # 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) # ^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/coverage.ml", lines 75-78, characters 2-5: # 75 | ..let Some (CTypDecl (_, tau, _)) = # 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) # 77 | in # 78 | tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (CTypDeclOpt _) # # File "src/core/coverage.ml", line 195, characters 20-45: # 195 | let gen_str cD cPsi (LF.Atom (_, a, _) as tP) = # ^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) # # File "src/core/coverage.ml", lines 214-218, characters 4-74: # 214 | ....match tA with # 215 | | LF.Atom _ -> LF.Root (Location.ghost, tH, tS, Plicity.explicit) # 216 | | LF.PiTyp ((LF.TypDecl (x, tB0), _, _), tB) -> # 217 | let tM = eta (tB0, s) LF.Nil in # 218 | LF.Lam (Location.ghost, x, eta (tB, S.LF.dot1 s) (LF.App (tM, tS))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/coverage.ml", lines 271-281, characters 4-58: # 271 | ....function # 272 | | MetaSub (cPsi, s, LF.STyp (_, cPhi)) -> # 273 | fprintf ppf "%a |- %a : %a" # 274 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi # 275 | (P.fmt_ppr_lf_sub cD cPsi P.l0) s # ... # 278 | fprintf ppf "%a |- %a : %a" # 279 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi # 280 | (P.fmt_ppr_lf_normal cD cPsi P.l0) tR # 281 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp sA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MetaSub (cPsi, s, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 304-308, characters 4-73: # 304 | ....function # 305 | | CovCtx cPsi -> fmt_ppr_covctx cD ppf cPsi # 306 | | CovSub (cPsi, s, LF.STyp (_, cPhi)) -> fmt_ppr_covsub cD ppf (cPsi, s, cPhi) # 307 | | CovGoal (cPsi, tR, sA) -> fmt_ppr_covgoal cD ppf (cPsi, tR, sA) # 308 | | CovPatt (cG, patt, ttau) -> fmt_ppr_covpatt cD ppf (cG, patt, ttau) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CovSub (cPsi, s, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 483-484, characters 7-73: # 483 | .......let Comp.TypBox (_, mT) = tau_sc in # 484 | check_meta_obj cD_p mO (Whnf.cnormMTyp (mT, t)) && is_id cD_p t cD # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| # TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) # # File "src/core/coverage.ml", lines 545-546, characters 9-44: # 545 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 543-547, characters 7-10: # 543 | .......begin # 544 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in # 545 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # 547 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 580-619, characters 5-8: # 580 | .....let LF.MPVar (_, s') as tH' = Whnf.cnormHead (tH', t) in # 581 | dprintf # 582 | begin fun p -> # 583 | p.fmt "[pre_match_head] @[<v>pvar - case\ # 584 | @,pattern: @[@[%a@]@ |- @[%a@]@]\ # ... # 616 | end; # 617 | SplitCand # 618 | (* CtxSplitCand (pre_match_dctx cD cD_p cPsi cPsi_p [] []) *) # 619 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (BVar _|Const _|MMVar (({instantiation={ _ }; constraints={ _ }; _ }, _), _)| # MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)|FVar _|FMVar (_, _)| # FPVar (_, _)|HClo (_, _, _)| # HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))) # # File "src/core/coverage.ml", lines 638-639, characters 9-44: # 638 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 636-640, characters 7-10: # 636 | .......begin # 637 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in # 638 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # 640 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 695-708, characters 5-59: # 695 | .....let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in # 696 | let covGoal' = # 697 | CovGoal # 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) # 699 | , tM, (tB, S.LF.dot1 s) # ... # 705 | , tN, (tB', S.LF.dot1 s') # 706 | ) # 707 | in # 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) # # File "src/core/coverage.ml", lines 694-708, characters 5-59: # 694 | .....let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in # 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in # 696 | let covGoal' = # 697 | CovGoal # 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) # ... # 705 | , tN, (tB', S.LF.dot1 s') # 706 | ) # 707 | in # 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) # # File "src/core/coverage.ml", lines 692-737, characters 2-8: # 692 | ..match (tM, tN) with # 693 | | (LF.Lam (_, x, tM), LF.Lam (_, _, tN)) -> # 694 | let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in # 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in # 696 | let covGoal' = # ... # 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) # 735 | # 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) # 737 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, x, tM), (Root (_, _, _, _)|LFHole (_, _, _)|Clo _|Tuple (_, _))) # # File "src/core/coverage.ml", lines 684-737, characters 2-8: # 684 | ..let MetaPatt (cPhi, tN, sA') = patt in # 685 | dprintf # 686 | begin fun p -> # 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ # 688 | @,pattern: @[%a@]@]" # ... # 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) # 735 | # 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) # 737 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaSub (_, _, _)|GenPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 683-737, characters 2-8: # 683 | ..let CovGoal (cPsi, tM, sA) = covGoal in # 684 | let MetaPatt (cPhi, tN, sA') = patt in # 685 | dprintf # 686 | begin fun p -> # 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ # ... # 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) # 735 | # 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) # 737 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 744-758, characters 5-18: # 744 | .....let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in # 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in # 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in # 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in # 748 | let sC2' = (tC2, LF.Dot (LF.Obj (tM'), s')) in # ... # 755 | (cPsi, tS, sB2') # 756 | (cPsi', tS', sC2') # 757 | matchCands' # 758 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 743-758, characters 5-18: # 743 | .....let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in # 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in # 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in # 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in # 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in # ... # 755 | (cPsi, tS, sB2') # 756 | (cPsi', tS', sC2') # 757 | matchCands' # 758 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 740-758, characters 2-18: # 740 | ..match (tS, tS') with # 741 | | (LF.Nil, LF.Nil) -> (matchCands, splitCands) # 742 | | (LF.App (tM, tS), LF.App (tM', tS')) -> # 743 | let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in # 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in # ... # 755 | (cPsi, tS, sB2') # 756 | (cPsi', tS', sC2') # 757 | matchCands' # 758 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Nil, (App (_, _)|SClo _)) # # File "src/core/coverage.ml", lines 793-797, characters 5-63: # 793 | .....let LF.TypDecl (_, tA1) = tdecl1 in # 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in # 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in # 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in # 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 792-797, characters 5-63: # 792 | .....let LF.TypDecl (_, tA0) = tdecl0 in # 793 | let LF.TypDecl (_, tA1) = tdecl1 in # 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in # 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in # 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in # 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 763-816, characters 2-74: # 763 | ..match ((s0, cPhi0), (s1, cPhi1)) with # 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) # 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> # 766 | if n = k # 767 | then (matchCands, splitCands) # ... # 813 | # 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) # 815 | # 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Shift _, _), # (Dot # (Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)| # FVar _|FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), # _), # _)) # # File "src/core/coverage.ml", lines 762-816, characters 2-74: # 762 | ..let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in # 763 | match ((s0, cPhi0), (s1, cPhi1)) with # 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) # 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> # 766 | if n = k # ... # 813 | # 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) # 815 | # 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MetaSub (cPsi1, s1, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 761-816, characters 2-74: # 761 | ..let CovSub (cPsi0, s0, (LF.STyp (r0, cPhi0) as sT0)) = covGoal in # 762 | let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in # 763 | match ((s0, cPhi0), (s1, cPhi1)) with # 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) # 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> # ... # 813 | # 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) # 815 | # 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CovSub (cPsi0, s0, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 819-830, characters 2-57: # 819 | ..match (f0, f1) with # 820 | | (LF.Head h0, LF.Head h1) -> # 821 | let tM0 = eta_expand (h0, tA0) in # 822 | let tM1 = eta_expand (h1, tA1) in # 823 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in # ... # 827 | | (LF.Obj tM0, LF.Obj tM1) -> # 828 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in # 829 | let patt = MetaPatt (cPhi1, tM1, (tA1, S.LF.id)) in # 830 | pre_match cD cD_p covGoal patt matchCands splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Head h0, (Undef|Obj _)) # # File "src/core/coverage.ml", lines 839-851, characters 5-18: # 839 | .....let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in # 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in # 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in # 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in # 843 | let sK2' = (tK2, LF.Dot (LF.Obj tM', s')) in # ... # 848 | (cPsi, tS, sK1') # 849 | (cPsi', tS', sK2') # 850 | matchCands' # 851 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 838-851, characters 5-18: # 838 | .....let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in # 839 | let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in # 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in # 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in # 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in # ... # 848 | (cPsi, tS, sK1') # 849 | (cPsi', tS', sK2') # 850 | matchCands' # 851 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 834-851, characters 2-18: # 834 | ..match ((tS1, sK1), (tS2, sK2)) with # 835 | | ((LF.Nil, (LF.Typ, _)), (LF.Nil, (LF.Typ, _))) -> # 836 | (matchCands, splitCands) # 837 | | ((LF.App (tM, tS), sK), (LF.App (tM', tS'), sK')) -> # 838 | let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in # ... # 848 | (cPsi, tS, sK1') # 849 | (cPsi', tS', sK2') # 850 | matchCands' # 851 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Nil, (Typ, _)), (Nil, (PiKind (_, _), _))) # # File "src/core/coverage.ml", lines 860-903, characters 2-17: # 860 | ..match (Whnf.whnfTyp sA, Whnf.whnfTyp sB) with # 861 | | ((LF.Atom (_, a, tS1), s1), (LF.Atom (loc, b, tS2), s2)) -> # 862 | let tK1 = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in # 863 | let tK2 = (Store.Cid.Typ.get b).Store.Cid.Typ.Entry.kind in # 864 | let tS1' = Whnf.normSpine (tS1, s1) in # ... # 900 | (trec1, s1) # 901 | (trec2, s2) # 902 | matchCands # 903 | splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Atom (_, a, tS1), s1), ((PiTyp (_, _)|Sigma _|TClo _), _)) # # File "src/core/coverage.ml", lines 907-927, characters 2-12: # 907 | ..match (srec1, srec2) with # 908 | | ((LF.SigmaLast (_, tA1), s1), (LF.SigmaLast (_, tA2), s2)) -> # 909 | pre_match_typ cD cD_p (cPsi, (tA1, s1)) (cPhi, (tA2, s2)) matchCands splitCands # 910 | # 911 | | ((LF.SigmaElem (x1, tA1, trec1), s1), (LF.SigmaElem (x2, tA2, trec2), s2)) -> # ... # 924 | (LF.DDec (cPsi, LF.TypDecl (x1, LF.TClo (tA1, s1)))) # 925 | (LF.DDec (cPhi, LF.TypDecl (x2, LF.TClo (tA2, s2)))) # 926 | (trec1, S.LF.dot1 s1) (trec2, S.LF.dot1 s2) # 927 | mC sC # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((SigmaLast (_, tA1), s1), (SigmaElem (_, _, _), _)) # # File "src/core/coverage.ml", lines 952-1004, characters 2-31: # 952 | ..match ((mO, mt), (mO_p, mtp)) with # 953 | | LF.((CObj cPsi, _), (CObj cPsi', _)) -> # 954 | pre_match_dctx cD cD_p cPsi cPsi' mC sC # 955 | | LF.((ClObj (_, clobj), ClTyp (cltyp, cPsi)), (ClObj (_, clobj'), ClTyp (cltyp', cPsi'))) -> # 956 | match ((clobj, cltyp), (clobj', cltyp')) with # ... # 1001 | (mobj cD_p) (loc', mO_p) # 1002 | (mtyp cD_p) mtp # 1003 | in # 1004 | Error.raise_violation s # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((CObj cPsi, _), ((MUndef|ClObj (_, _)|MV _), _)) # # File "src/core/coverage.ml", lines 1092-1104, characters 5-10: # 1092 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1095 | let t2 = LF.MDot (mO, t) in # 1096 | let t2' = LF.MDot (mO', t') in # ... # 1101 | (pS, (tau2, t2)) # 1102 | (pS', (tau2', t2')) # 1103 | mC1 # 1104 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1091-1104, characters 5-10: # 1091 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1092 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1095 | let t2 = LF.MDot (mO, t) in # ... # 1101 | (pS, (tau2, t2)) # 1102 | (pS', (tau2', t2')) # 1103 | mC1 # 1104 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1110-1122, characters 5-10: # 1110 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1113 | let t2 = LF.MDot (mO, t) in # 1114 | let t2' = LF.MDot (mO', t') in # ... # 1119 | (pS, (tau2, t2)) # 1120 | (pS', (tau2', t2')) # 1121 | mC1 # 1122 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1109-1122, characters 5-10: # 1109 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1110 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1113 | let t2 = LF.MDot (mO, t) in # ... # 1119 | (pS, (tau2, t2)) # 1120 | (pS', (tau2', t2')) # 1121 | mC1 # 1122 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1128-1134, characters 5-84: # 1128 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1129 | let tau1 = LF.CTyp w in # 1130 | let tau1' = LF.CTyp w' in # 1131 | let t2 = LF.MDot (mO, t) in # 1132 | let t2' = LF.MDot (mO', t')in # 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in # 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1127-1134, characters 5-84: # 1127 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1128 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1129 | let tau1 = LF.CTyp w in # 1130 | let tau1' = LF.CTyp w' in # 1131 | let t2 = LF.MDot (mO, t) in # 1132 | let t2' = LF.MDot (mO', t')in # 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in # 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1139-1147, characters 5-51: # 1139 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in # 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in # 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in # 1143 | let t2 = LF.MDot (mO, t) in # 1144 | let t2' = LF.MDot (mO', t') in # 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in # 1146 | match_spines (cD, cG) (cD_p, cG_p) # 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1138-1147, characters 5-51: # 1138 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1139 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in # 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in # 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in # 1143 | let t2 = LF.MDot (mO, t) in # 1144 | let t2' = LF.MDot (mO', t') in # 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in # 1146 | match_spines (cD, cG) (cD_p, cG_p) # 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1186-1224, characters 2-8: # 1186 | ..match Whnf.whnfTyp sA with # 1187 | | (LF.PiTyp ((LF.TypDecl (u, tA), _, _), tB), s) -> # 1188 | (* cPsi' |- Pi x:A.B <= typ # 1189 | cPsi |- s <= cPsi' # 1190 | cPsi |- tN <= [s]tA # ... # 1221 | Some LF.Nil # 1222 | with # 1223 | | U.Failure _ -> None # 1224 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 1343-1349, characters 2-29: # 1343 | ..let LF.TypDecl (_, tA) = Context.ctxDec cPsi i in (* x_i : tA in cPsi *) # 1344 | (* We call expand_head_sigma here because it might be *projections* # 1345 | of the bound variable that are relevant to the matching. # 1346 | *) # 1347 | expand_head_sigma (LF.BVar i, tA) # 1348 | |> List.map (fun (tH, tA) -> (tH, tA, 0)) # 1349 | |> genAllObj (cD, cPsi, tP) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", line 1484, characters 17-61: # 1484 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), ms) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', ((Null|CtxVar _), _, (_, _)), _) # # File "src/core/coverage.ml", lines 1468-1493, characters 2-14: # 1468 | ..match tA with # 1469 | | LF.Atom _ -> # 1470 | genPVar cov_problem @ genBVars cov_problem # 1471 | | LF.Sigma trec -> # 1472 | Error.raise_not_implemented "[genBCovGoals] not implemented for Sigma types" # ... # 1490 | in # 1491 | (cD', cg', ms) # 1492 | end # 1493 | cg_list # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/coverage.ml", line 1544, characters 17-60: # 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', ((Null|CtxVar _), _, (_, _)), _) # # File "src/core/coverage.ml", lines 1541-1552, characters 5-16: # 1541 | .....let LF.TypDecl (x, _) = tdecl in # 1542 | let cov_goals = genCovGoals (cD, LF.DDec (cPsi, tdecl), tB) in # 1543 | List.map # 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> # 1545 | ( cD' # ... # 1549 | , t # 1550 | ) # 1551 | end # 1552 | cov_goals # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 1512-1552, characters 2-16: # 1512 | ..match tA with # 1513 | | LF.Atom (_, a, tS) -> # 1514 | let g_pv = genPVar cov_problem in (* (cD', cg, ms) list *) # 1515 | dprintf # 1516 | begin fun p -> # ... # 1549 | , t # 1550 | ) # 1551 | end # 1552 | cov_goals # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/coverage.ml", lines 1582-1700, characters 5-8: # 1582 | .....begin match mc with # 1583 | | Eqn (CovSub (cPsi, s, sT), MetaSub (cPsi_p, s_p, sT_p)) -> # 1584 | let cT = LF.ClTyp (sT, cPsi) in # 1585 | let cT_p = LF.ClTyp (sT_p, cPsi_p) in # 1586 | let cM = (Location.ghost, LF.ClObj (Context.dctxToHat cPsi, LF.SObj s)) in # ... # 1697 | NotSolvable # 1698 | end # 1699 | end # 1700 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Eqn (CovSub (cPsi, s, sT), (MetaPatt (_, _, _)|GenPatt (_, _, _))) # # File "src/core/coverage.ml", lines 1725-1730, characters 5-11: # 1725 | .....let CovGoal (cPsi', tR', sA') as covG = CovGoal (cPsi, tR, (tA, S.LF.id)) in # 1726 | (* let MetaPatt (cPhi, _, sB') = patt in *) # 1727 | (* let (mL', sL') = pre_match_typ cD cD_p (cPsi, sA') (cPhi, sB') matchL' splitL' in *) # 1728 | (* let (mL', sL') = pre_match_dctx cD cD_p cPsi cPhi matchL' splitL' in *) # 1729 | let result = pre_match cD cD_p covG patt matchL' splitL' in # 1730 | result # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 1719-1741, characters 2-94: # 1719 | ..match splitL with # 1720 | | [] -> (matchL, []) # 1721 | | Split (CovGoal (cPsi, tR, sA), patt) :: splits -> # 1722 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in # 1723 | let tA = Whnf.normTyp sA in # ... # 1738 | pre_match_dctx cD cD_p cPsi' cPsi_patt matchL' splitL' # 1739 | | SplitPat ((Comp.PatFVar (loc, x), (tau, t)), pPatt_p) :: splits -> # 1740 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in # 1741 | (matchL', SplitPat ((Comp.PatFVar (loc, x), (tau, Whnf.mcomp t ms)), pPatt_p) :: splitL') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Split ((CovCtx _|CovPatt (_, _, _)), _)::_ # # File "src/core/coverage.ml", lines 1973-2000, characters 5-6: # 1973 | .....let (cPsi, (LF.Atom (_, a, _) as tP, s)) = # 1974 | Whnf.lowerTyp (LF.CtxVar (LF.CtxOffset (k + d))) (tA, s') # 1975 | in # 1976 | (* bp : Context substitution associated with declaration is off by 1 *) # 1977 | let (ss', cPsi') = Subord.thin' cD'' a cPsi in # ... # 1997 | in # 1998 | ( LF.Dec (cD'', mdec) # 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) # 2000 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cPsi, ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _)) # # File "src/core/coverage.ml", lines 1964-2000, characters 2-6: # 1964 | ..match decls with # 1965 | | LF.Empty -> (cD', S.LF.id) # 1966 | | LF.(Dec (decls, TypDecl (x, tA))) -> # 1967 | let x = NameGen.renumber names x in # 1968 | let names = x :: names in # ... # 1997 | in # 1998 | ( LF.Dec (cD'', mdec) # 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) # 2000 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (decls, TypDeclOpt _) # # File "src/core/coverage.ml", line 1963, characters 28-52: # 1963 | let rec decTomdec names cD' (LF.CtxOffset k as cpsi) (d, decls) = # ^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) # # File "src/core/coverage.ml", line 2096, characters 17-48: # 2096 | let genCtx names (LF.Dec (cD', LF.Decl _) as cD) cpsi = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt { _ }) # # File "src/core/coverage.ml", line 2123, characters 23-82: # 2123 | let genContextGoals cD (x, LF.CTyp (Option.Some schema_cid), plicity, inductivity) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (x, CTyp None, _, _) # # File "src/core/coverage.ml", lines 2144-2178, characters 5-87: # 2144 | .....let LF.TypDecl (x, tA) = decl in # 2145 | let s = LF.SVar (2, 0, S.LF.id) in # 2146 | let mT = LF.ClTyp (LF.STyp (r0, cPhi'), cPsi) in # 2147 | let name = Whnf.newMTypName mT in # 2148 | let cD' = # ... # 2175 | in # 2176 | let cPsi' = Whnf.cnormDCtx (cPsi, LF.MShift 2) in # 2177 | let cPhi'' = Whnf.cnormDCtx (cPhi, LF.MShift 2) in # 2178 | [(cD'', CovSub (cPsi', LF.Dot (LF.Obj tM, s), LF.STyp (r0, cPhi'')), LF.MShift 2)] # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 2186-2239, characters 2-8: # 2186 | ..match cT with # 2187 | | LF.ClTyp (clTyp, cPsi) -> # 2188 | begin match clTyp with # 2189 | | LF.MTyp tA -> # 2190 | dprintf # ... # 2236 | , Atomic # 2237 | ) # 2238 | end # 2239 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/coverage.ml", lines 2249-2250, characters 11-60: # 2249 | ...........let LF.Decl { name = x; typ = cU; plicity; inductivity } = d in # 2250 | genContextGoals cD' (x, cU, plicity, inductivity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/coverage.ml", lines 2242-2278, characters 2-58: # 2242 | ..match (cv_list, cD) with # 2243 | | ([], _) -> NoCandidate # 2244 | | ([LF.CtxOffset j], LF.Dec (cD', d)) -> # 2245 | if j = k # 2246 | then # ... # 2275 | SomeCtxCands ctx_goals' # 2276 | end # 2277 | else # 2278 | best_ctx_cand (cD', cv_list) (k + 1) (d :: cD_tail) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxOffset j::[], Empty) # # File "src/core/coverage.ml", lines 2308-2309, characters 25-35: # 2308 | .........................let LF.Root (_, tH, _, _) = tR in # 2309 | LF.PObj tH # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/coverage.ml", lines 2302-2309, characters 22-35: # 2302 | ......................match cT with # 2303 | (* gonna be a ClTyp because we're in the CovGoal branch *) # 2304 | | LF.ClTyp (LF.MTyp _, _) -> LF.MObj tR # 2305 | | LF.ClTyp (LF.PTyp _, _) -> # 2306 | (* ensure that PTyp is added as a PObj to the # 2307 | msub; otherwise normalization WILL crash. *) # 2308 | let LF.Root (_, tH, _, _) = tR in # 2309 | LF.PObj tH # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/core/coverage.ml", lines 2294-2331, characters 17-50: # 2294 | .................match cg with # 2295 | | CovGoal (cPsi', tR, sA') -> # 2296 | dprintf # 2297 | begin fun p -> # 2298 | p.fmt "[best_cand] generated covgoal @[%a@]" # ... # 2328 | , Whnf.cnormClTyp (sT, LF.MShift k) # 2329 | ) # 2330 | in # 2331 | TermCandidate (cD'', cg', ms0). # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovPatt (_, _, _)) # # File "src/core/coverage.ml", lines 2335-2348, characters 11-17: # 2335 | ...........match best_cand (cD', mvlist') (k + 1) (md :: cD_tail) with # 2336 | | NoCandidate -> SomeTermCands (dep0, cov_goals0) # 2337 | | SomeTermCands (dep, cov_goals) -> # 2338 | begin match dep, dep0 with # 2339 | | Dependent, Atomic -> SomeTermCands (dep, cov_goals) # ... # 2345 | then SomeTermCands (dep, cov_goals) # 2346 | else SomeTermCands (dep0, cov_goals0) # 2347 | *) # 2348 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # SomeCtxCands _ # # File "src/core/coverage.ml", lines 2282-2356, characters 2-55: # 2282 | ..match (mv_list, cD) with # 2283 | | ([], _) -> NoCandidate # 2284 | | (LF.Offset j :: mvlist', LF.(Dec (cD', (Decl { typ = cT; _ } as md)))) -> # 2285 | if k = j # 2286 | then # ... # 2353 | best_cand (cD', mvlist') (k + 1) (md :: cD_tail) # 2354 | end # 2355 | else # 2356 | best_cand (cD', mv_list) (k + 1) (md :: cD_tail) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Offset j::mvlist', Dec (cD', DeclOpt _)) # # File "src/core/coverage.ml", lines 2430-2438, characters 7-13: # 2430 | .......match cl with # 2431 | | LF.PTyp _ -> # 2432 | let v = Whnf.newMPVar (Some u) (LF.Empty, cPsi', tP') plicity inductivity in # 2433 | LF.(PObj (mpvar ((v, Whnf.m_id), S.LF.id))) # 2434 | | LF.MTyp _ -> # 2435 | LF.MObj # 2436 | (ConvSigma.etaExpandMMVstr # 2437 | Location.ghost LF.Empty cPsi' (tP', S.LF.id) plicity (Some u) (u :: names) # 2438 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/coverage.ml", line 2581, characters 16-42: # 2581 | begin fun (CovGoal (cPsi', tR, sA')) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 2630-2632, characters 10-46: # 2630 | ..........match tC with # 2631 | | MTyp _ -> fun sA -> MTyp (TClo sA) # 2632 | | PTyp _ -> fun sA -> PTyp (TClo sA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/coverage.ml", lines 2626-2667, characters 5-8: # 2626 | .....begin match mT with # 2627 | | LF.(ClTyp (tC, cPsi)) -> # 2628 | let f = # 2629 | let open LF in # 2630 | match tC with # ... # 2664 | , t # 2665 | ) # 2666 | end # 2667 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp None # # File "src/core/coverage.ml", lines 2714-2762, characters 2-55: # 2714 | ..function # 2715 | | [] -> vlist # 2716 | | Split (CovGoal (_, LF.Root (_, LF.MVar (u, _), _, _), _), _) :: sl -> # 2717 | let (pvlist, cvlist, mvlist) = vlist in # 2718 | if List.mem u mvlist # ... # 2759 | let (pvlist, cvlist, mvlist) = vlist in # 2760 | if List.mem x pvlist # 2761 | then mvInSplit cD vlist sl # 2762 | else mvInSplit cD (x :: pvlist, cvlist, mvlist) sl # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # SplitCtx ((Null|DDec (_, _)), _)::_ # # File "src/core/coverage.ml", line 2773, characters 30-44: # 2773 | begin fun (LF.Offset k) (LF.Offset k') -> # ^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Inst {instantiation={ _ }; constraints={ _ }; _ } # # File "src/core/coverage.ml", line 2773, characters 16-29: # 2773 | begin fun (LF.Offset k) (LF.Offset k') -> # ^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Inst {instantiation={ _ }; constraints={ _ }; _ } # # File "src/core/coverage.ml", line 2784, characters 33-50: # 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> # ^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) # # File "src/core/coverage.ml", line 2784, characters 16-32: # 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> # ^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) # # File "src/core/coverage.ml", line 2867, characters 55-73: # 2867 | Prettycov.fmt_ppr_cov_goals (List.map (fun (TermCandidate cg) -> cg) cgoals) # ^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxCandidate (_, _, _) # # File "src/core/coverage.ml", lines 2903-2908, characters 2-33: # 2903 | ..function # 2904 | | Comp.PatNil -> Comp.PatNil # 2905 | | Comp.PatApp (loc, pat, pS) -> # 2906 | let pat' = subst_pattern (pat_r, pv) pat in # 2907 | let pS' = subst_pattern_spine (pat_r, pv) pS in # 2908 | Comp.PatApp (loc, pat', pS') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # # File "src/core/coverage.ml", line 2979, characters 32-45: # 2979 | let best_pv_cand names (cD, cG) (x :: pvlist) = # ^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/coverage.ml", lines 3002-3013, characters 2-40: # 3002 | ..match sl with # 3003 | | [] -> pvlist # 3004 | | Split (CovGoal _, _) :: sl -> pvInSplitCand sl pvlist # 3005 | | Split (CovSub _, _) :: sl -> pvInSplitCand sl pvlist # 3006 | | SplitCtx _ :: sl -> pvInSplitCand sl pvlist # ... # 3010 | ); # 3011 | if List.mem x pvlist # 3012 | then pvInSplitCand sl pvlist # 3013 | else pvInSplitCand sl (x :: pvlist) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Split ((CovCtx _|CovPatt (_, _, _)), _)::_ # # File "src/core/coverage.ml", lines 3223-3231, characters 2-27: # 3223 | ..let CovPatt (cG', pat', ttau') = covGoal in # 3224 | dprintf # 3225 | begin fun p -> # 3226 | p.fmt "[gen_candidates] @[<v>pat = @[%a@]@,pat' = @[%a@]@]" # 3227 | (P.fmt_ppr_cmp_pattern cD_p cG_p P.l0) pat # 3228 | (P.fmt_ppr_cmp_pattern cD_p cG' P.l0) pat' # 3229 | end; # 3230 | let (ml, sl) = match_pattern (cD, cG') (cD_p, cG_p) (pat', ttau') (pat, ttau) [] [] in # 3231 | Cand (cD_p, cG_p, ml, sl) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovGoal (_, _, (_, _))|CovCtx _|CovSub (_, _, _)) # # File "src/core/coverage.ml", line 3222, characters 33-66: # 3222 | let gen_candidate loc cD covGoal (cD_p, GenPatt (cG_p, pat, ttau)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_p, (MetaPatt (_, _, (_, _))|MetaSub (_, _, _))) # # File "src/core/coverage.ml", lines 3399-3434, characters 2-50: # 3399 | ..function # 3400 | | LF.Empty -> false # 3401 | | LF.Dec (cD', (LF.Decl { typ = LF.ClTyp (LF.MTyp tA, cPsi); _} as cdecl)) -> # 3402 | begin # 3403 | try # ... # 3431 | print_string "Unable to prove given type is empty\n"; check_emptiness cD' # 3432 | end # 3433 | # 3434 | | LF.Dec (cD', LF.Decl _) -> check_emptiness cD' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt _) # # File "src/core/coverage.ml", lines 3437-3447, characters 2-8: # 3437 | ..function # 3438 | | LF.Empty -> false # 3439 | | LF.Dec (cG, Comp.CTypDecl (_, tau, _)) -> # 3440 | begin # 3441 | try # ... # 3444 | | _ -> check_empty_comp names cD cG # 3445 | with # 3446 | | _ -> check_empty_comp names cD cG # 3447 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Automation.cmo -c -impl src/harpoon/automation.ml) # File "src/harpoon/automation.ml", lines 107-115, characters 7-10: # 107 | .......let LF.ClTyp (_, cPsi) as cU = Whnf.cnormMTyp (cU, t) in # 108 | let head = MVar (Offset idx, S.LF.id) in # 109 | let clobj = MObj (Root (Location.ghost, head, Nil, Plicity.explicit)) in # 110 | let psi_hat = Context.dctxToHat cPsi in # 111 | Box # 112 | ( Location.ghost # 113 | , (Location.ghost, ClObj (psi_hat, clobj)) # 114 | , cU # 115 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Prover.cmo -c -impl src/harpoon/prover.ml) # File "src/harpoon/prover.ml", line 241, characters 38-65: # 241 | let parser = Parsing.(only (maybe interactive_harpoon_command)) in # ^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Error: This expression has type # "Beluga_parser.Parser.Parsing.state -> # Beluga_parser.Parser.Parsing.state * # (Synprs.harpoon_repl_command, exn) result" # but an expression was expected of type # "Beluga_parser.Parser.Parsing.state -> # Beluga_parser.Parser.Parsing.state * ('a, exn) result" # The layout of Synprs.harpoon_repl_command is any # because the .cmi file for Synprs.harpoon_repl_command is missing. # But the layout of Synprs.harpoon_repl_command must be a sublayout of value. # No .cmi file found containing Synprs.harpoon_repl_command. # Hint: Adding "synprs" to your dependencies might help. # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Reconstruct.cmo -c -impl src/core/reconstruct.ml) # File "src/core/reconstruct.ml", lines 55-179, characters 20-41: # 55 | ....................function # 56 | | NotImplemented f -> # 57 | Format.dprintf "@[<v 2>Not implemented:@,@[%a@]@]" # 58 | f () # 59 | | MCtxIllformed cD -> # ... # 176 | @, @[%a@]\ # 177 | @]" # 178 | P.(fmt_ppr_cmp_meta_obj cD l0) mC_p # 179 | P.(fmt_ppr_cmp_meta_obj cD l0) mC # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # IllegalSubstMatch # # File "src/core/reconstruct.ml", lines 217-218, characters 2-45: # 217 | ..function # 218 | | Int.LF.Decl d -> Name.mk_some_name d.name # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/reconstruct.ml", lines 258-267, characters 4-26: # 258 | ....match tau, n with # 259 | | _, 0 -> 0 # 260 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; inductivity = Inductivity.Inductive; _ }, tau), n -> # 261 | Error.raise_violation (Format.asprintf "[%s] impossible LF.Inductive" __FUNCTION__) # 262 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Implicit; _ }, tau), n -> # 263 | 1 + skip tau n (* implicits are free *) # 264 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Explicit; _ }, tau), n -> # 265 | 1 + skip tau (n - 1) (* explicits pi-types cost 1 *) # 266 | | I.TypArr (_, _, tau), n -> # 267 | 1 + skip tau (n - 1).............................. # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypPiBox (_, DeclOpt _, _), 1) # # File "src/core/reconstruct.ml", lines 292-298, characters 9-92: # 292 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid'); _ }) = Store.FCVar.get psi in # 293 | if Id.cid_schema_equal s_cid s_cid' # 294 | then Int.LF.CtxVar (Int.LF.CtxName psi) # 295 | else # 296 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get s_cid in # 297 | let c_var' = Int.LF.CtxName psi in # 298 | Check.LF.(CtxVarMismatch (cD, c_var', name, schema) |> throw (Name.location psi)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=CTyp None; _ }) # # File "src/core/reconstruct.ml", lines 343-361, characters 7-10: # 343 | .......let Int.LF.CTyp (Some s_cid) = Int.LF.(v.typ) in # 344 | begin # 345 | let cPsi = elDCtxAgainstSchema loc Lfrecon.Pibox cD cPsi s_cid in # 346 | Unify.instantiateCtxVar (Int.LF.(v.instantiation), cPsi); # 347 | match Context.ctxVar cPsi with # ... # 358 | } # 359 | ) # 360 | | _ -> () # 361 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp None # # File "src/core/reconstruct.ml", lines 396-400, characters 2-23: # 396 | ..match cG, k with # 397 | | Int.LF.Dec (_cG', Int.Comp.CTypDecl (_, tau, _)), 1 -> # 398 | Whnf.cnormCTyp (tau, Whnf.m_id) # 399 | | Int.LF.Dec (cG', Int.Comp.CTypDecl (_, _tau, _)), k -> # 400 | lookup cG' (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dec (cG', CTypDeclOpt _), _) # # File "src/core/reconstruct.ml", lines 410-416, characters 2-32: # 410 | ..function # 411 | | Apx.LF.Empty -> Int.LF.Empty # 412 | | Apx.LF.Dec (ctx, Apx.LF.TypDecl (name, typ)) -> # 413 | let ctx' = elTypDeclCtx cD ctx in # 414 | let tA = Lfrecon.elTyp Lfrecon.Pi cD (Context.projectCtxIntoDctx ctx') typ in # 415 | let typDecl' = Int.LF.TypDecl (name, tA) in # 416 | Int.LF.Dec (ctx', typDecl') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (ctx, TypDeclOpt _) # # File "src/core/reconstruct.ml", line 459, characters 20-52: # 459 | let elCDecl recT cD (Apx.LF.Decl (u, ctyp, plicity)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt _ # # File "src/core/reconstruct.ml", lines 519-557, characters 4-26: # 519 | ....function # 520 | | (Int.LF.Typ, _s) -> # 521 | Int.LF.Nil # 522 | # 523 | | (Int.LF.(PiKind ((TypDecl (u, tA1), depend, plicity), kK), s)) -> # ... # 554 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp (tA1, s)) # 555 | end; # 556 | let tS = genSpine (kK, Int.LF.Dot (Int.LF.Obj tR, s)) in # 557 | Int.LF.App (tR, tS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/reconstruct.ml", lines 563-575, characters 2-8: # 563 | ..function # 564 | | Int.LF.Atom (_, a, _) -> # 565 | mgAtomicTyp cD cPsi a (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind # 566 | # 567 | | Int.LF.Sigma trec -> # ... # 572 | Int.LF.PiTyp # 573 | ( (tdecl', depend, plicity) # 574 | , mgTyp cD (Int.LF.DDec (cPsi, tdecl')) tA # 575 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/reconstruct.ml", lines 578-580, characters 2-41: # 578 | ..function # 579 | | Int.LF.TypDecl (x, tA) -> # 580 | Int.LF.TypDecl (x, mgTyp cD cPsi tA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/reconstruct.ml", lines 637-640, characters 5-18: # 637 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = # 638 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) # 639 | in # 640 | Int.LF.PObj h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Root (_, h, (App (_, _)|SClo (_, _)), _) # # File "src/core/reconstruct.ml", lines 647-650, characters 5-18: # 647 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = # 648 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) # 649 | in # 650 | Int.LF.PObj h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Root (_, h, (App (_, _)|SClo (_, _)), _) # # File "src/core/reconstruct.ml", lines 711-727, characters 2-104: # 711 | ..match (s, cKt) with # 712 | | (Apx.Comp.MetaNil, (Int.Comp.Ctype _, _)) -> # 713 | Int.Comp.MetaNil # 714 | # 715 | | (Apx.Comp.MetaNil, (Int.Comp.PiKind (_, cdecl, _cK), theta)) -> # ... # 724 | # 725 | | (Apx.Comp.MetaApp (m, s), (Int.Comp.PiKind (_, Int.LF.Decl { typ = ctyp; _ }, cK), theta)) -> # 726 | let (mO, t') = elMetaObjCTyp loc cD m theta ctyp in # 727 | Int.Comp.MetaApp(mO, Whnf.cnormMTyp (ctyp, theta), elMetaSpine loc cD s (cK, t'), Plicity.explicit) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaApp (_, _), (PiKind (_, DeclOpt _, _), _)) # # File "src/core/reconstruct.ml", lines 798-803, characters 4-65: # 798 | ....function # 799 | | (Int.Comp.Ctype _, _t) -> Int.Comp.MetaNil # 800 | | (Int.Comp.PiKind (loc', Int.LF.Decl { name = u; typ = cU; plicity; inductivity }, cK), t) -> # 801 | let (mO, t') = Whnf.dotMMVar loc cD t (u, cU, plicity, inductivity) in # 802 | let mS = genMetaSpine (cK, t') in # 803 | Int.Comp.MetaApp (mO, Whnf.cnormMTyp (cU, t), mS, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind (loc', DeclOpt _, _), _) # # File "src/core/reconstruct.ml", lines 830-842, characters 2-49: # 830 | ..match cPsi with # 831 | | Int.LF.CtxVar (Int.LF.CtxOffset psi_var) -> # 832 | let (n, sW) = Whnf.mctxCDec cD psi_var in # 833 | let v = # 834 | let open Int.LF in # ... # 839 | | Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) -> # 840 | let cPsi' = mgCtx cD' (cD, cPsi) in # 841 | let tA' = mgTyp cD' cPsi' tA in # 842 | Int.LF.DDec (cPsi', Int.LF.TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/reconstruct.ml", lines 921-939, characters 7-54: # 921 | .......let Int.Comp.TypBox (_, mT) = tau_p' in # 922 | dprintf # 923 | begin fun p -> # 924 | p.fmt "[synPatRefine] @[<v>unifying scrutinee and pattern:\ # 925 | @,mC = @[%a@]\ # ... # 936 | (mT, Whnf.m_id) # 937 | with # 938 | | Unify.Failure msg -> # 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| # TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) # # File "src/core/reconstruct.ml", lines 916-939, characters 4-54: # 916 | ....match caseT with # 917 | | DataObj -> () (* not dependent pattern matching; nothing to do *) # 918 | | IndexObj (Int.Comp.(PatMetaObj (_, mC_p) | PatAnn (_, PatMetaObj (_, mC_p), _, _)), mC) -> # 919 | let mC_p = Whnf.cnormMetaObj (mC_p, Whnf.m_id) in # 920 | (* tau_p' _has_ to be a box type if caseT is an IndexObj *) # ... # 936 | (mT, Whnf.m_id) # 937 | with # 938 | | Unify.Failure msg -> # 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # IndexObj # (PatAnn # (_, # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, _)| # PatAnn (_, _, _, _)), _, _), # _) # # File "src/core/reconstruct.ml", lines 1369-1376, characters 7-22: # 1369 | .......match id with # 1370 | | None -> true # 1371 | | Some Apx.LF.Id -> true # 1372 | | Some Apx.LF.EmptySub -> # 1373 | let (_, cPsi, _, cPhi) = Whnf.mctxSDec cD k in # 1374 | match cPhi, cPsi with # 1375 | | Int.LF.Null, Int.LF.Null -> true # 1376 | | _ -> false # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (Dot (_, _)|SVar (_, _)|FSVar (_, _)) # # File "src/core/reconstruct.ml", lines 1393-1416, characters 6-9: # 1393 | ......let Apx.LF.MInst (Int.LF.SObj s0, Int.LF.ClTyp (Int.LF.STyp (cl, cPsi), cPhi)) = s in # 1394 | let cPhi2 = Lfrecon.elDCtx Lfrecon.Pibox cD phi2 in # 1395 | let s' = Lfrecon.elSub loc Lfrecon.Pibox cD cPhi2 s' cl cPhi in # 1396 | let s0' = Substitution.LF.comp s0 s' in # 1397 | begin match s0' with # ... # 1413 | else # 1414 | throw loc IllegalSubstMatch # 1415 | | _ -> throw loc IllegalSubstMatch # 1416 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MInst (SObj s0, ClTyp ((MTyp _|PTyp _), _)) # # File "src/core/reconstruct.ml", lines 1421-1442, characters 5-8: # 1421 | .....begin # 1422 | match cpsi with # 1423 | | Apx.LF.CtxVar (ctxvar) -> # 1424 | let c_var = Lfrecon.elCtxVar ctxvar in # 1425 | let cM = (loc', Int.LF.CObj (Int.LF.CtxVar c_var)) in # ... # 1439 | end # 1440 | |> throw loc # 1441 | end # 1442 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Null|CtxHole|DDec (_, _)) # # File "src/core/reconstruct.ml", lines 1194-1458, characters 2-6: # 1194 | ..match i with # 1195 | | Apx.Comp.Var (loc, offset) -> # 1196 | let tau = lookup cG offset in # 1197 | dprintf # 1198 | begin fun p -> # ... # 1455 | , ( Int.Comp.TypCross (loc, ttaus') # 1456 | , C.m_id # 1457 | ) # 1458 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Box # (_, (_, ClObj (_, Dot (Head h, (Id|Dot (_, _)|SVar (_, _)|FSVar (_, _)))))) # # File "src/core/reconstruct.ml", lines 1524-1600, characters 2-8: # 1524 | ..match (pat, ttau) with # 1525 | | (Apx.Comp.PatVar (loc, name, x), (tau, theta)) -> # 1526 | let tau' = Whnf.cnormCTyp (tau, theta) in # 1527 | dprintf # 1528 | begin fun p -> # ... # 1597 | | Unify.Failure msg -> # 1598 | dprint (fun () -> "Unify Error: " ^ msg); # 1599 | raise (Check.Comp.Error (loc, Check.Comp.SynMismatch (cD, ttau, ttau'))) # 1600 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatFVar (_, _), _) # # File "src/core/reconstruct.ml", lines 1603-1613, characters 2-57: # 1603 | ..function # 1604 | | Apx.Comp.PatAnn (loc, pat, tau) -> # 1605 | let tau' = elCompTyp cD tau in # 1606 | let (cG', pat') = elPatChk cD cG pat (tau', Whnf.m_id) in # 1607 | (cG', Int.Comp.PatAnn (loc, pat', tau', Plicity.explicit), (tau', Whnf.m_id)) # ... # 1610 | let { Store.Cid.CompConst.Entry.typ = tau; _ } = Store.Cid.CompConst.get c in # 1611 | dprintf (fun p -> p.fmt "[elPat] PatConst = %s@\n" (R.render_cid_comp_const c)); # 1612 | let (cG1, pat_spine', ttau') = elPatSpine cD cG pat_spine (tau, Whnf.m_id) in # 1613 | (cG1, Int.Comp.PatConst (loc, c, pat_spine'), ttau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatMetaObj (_, _)|PatFVar (_, _)|PatVar (_, _, _)|PatTuple (_, _)) # # File "src/core/reconstruct.ml", lines 1690-1733, characters 5-8: # 1690 | .....begin match ttau with # 1691 | | (Int.Comp.TypCobase (_, _, _), _) -> # 1692 | let { Store.Cid.CompDest.Entry.name # 1693 | ; mctx = cD' # 1694 | ; obs_type = tau0 # ... # 1730 | let (cG', pat_spine', ttau2) = elPatSpine cD cG pat_spine ttau' in # 1731 | (cG', Int.Comp.PatApp (loc, pat', pat_spine'), ttau2) # 1732 | (* | _ -> raise (Error (loc, TypMismatch (cD, ttau, (tau1, Whnf.m_id)))) *) # 1733 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypPiBox (_, Decl {name=u; typ=cU; plicity=Explicit; _ }, _), _) # # File "src/core/reconstruct.ml", lines 1749-1756, characters 5-68: # 1749 | .....let Int.Comp.TypBox (_, Int.LF.ClTyp (Int.LF.MTyp _tQ, cPsi_s)) = tau_s in # 1750 | let cPsi = inferCtxSchema loc (cD_s, cPsi_s) (cD, psi) in # 1751 | let tP = Lfrecon.elTyp (Lfrecon.Pibox) cD cPsi a in # 1752 | let tau' = Int.Comp.TypBox(loc', Int.LF.ClTyp (Int.LF.MTyp tP, cPsi)) in # 1753 | let ttau' = (tau', Whnf.m_id) in # 1754 | let (cG', pat') = elPatChk cD Int.LF.Empty pat' ttau' in # 1755 | (* Return annotated pattern? Int.Comp.PatAnn (l, pat', tau') *) # 1756 | (cG', Int.Comp.PatAnn (l, pat', tau', Plicity.explicit), ttau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypBox (_, ClTyp ((PTyp _|STyp (_, _)), _)) # # File "src/core/reconstruct.ml", lines 1784-1801, characters 10-13: # 1784 | ..........begin match mT with # 1785 | | Int.LF.(MTyp (Atom _ | Sigma _ as tA))-> # 1786 | let cPsi' = inferCtxSchema loc (cD_s, cPsi) (cD, psi) in # 1787 | let tP' = mgTyp cD cPsi' tA in # 1788 | (loc', Int.LF.ClTyp (Int.LF.MTyp tP', cPsi')) # ... # 1798 | fixParamTyp in check.ml, and it is only used for # 1799 | coverage checking. *) # 1800 | Error.raise_violation "[recPatObj'] scrutinee PTyp should be impossible" # 1801 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MTyp (TClo _) # # File "src/core/reconstruct.ml", lines 2084-2106, characters 2-5: # 2084 | ..let { I.cD = cD'; cG = cG'; cIH = Int.LF.Empty } as h' = # 2085 | elHypotheses h # 2086 | in # 2087 | dprintf # 2088 | begin fun p -> # ... # 2103 | ( loc # 2104 | , h' # 2105 | , elProof cD cG label p ttau # 2106 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} # # File "src/core/reconstruct.ml", lines 2288-2301, characters 11-29: # 2288 | ...........match k, tA' with # 2289 | | Some k, Int.LF.Sigma tRec -> # 2290 | (* Compute the type of the kth projection of tRec. *) # 2291 | Int.LF.getType h (tRec, LF.id) k # 2292 | |> Whnf.normTyp # ... # 2298 | A projected case #n.k is required. # 2299 | *) # 2300 | assert false # 2301 | | None, tA' -> tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Some k, (Atom (_, _, _)|PiTyp (_, _)|TClo _)) # # File "src/core/reconstruct.ml", lines 2339-2420, characters 7-56: # 2339 | .......let Int.LF.MTyp tP = cU in # 2340 | let (cD', (cPsi', tR_p, tA_p), t) = # 2341 | match Coverage.genObj (cD, cPsi, tP) (Int.LF.Const cid, tA, k) with # 2342 | | None -> assert false # 2343 | (* FIXME: throw an appropriate error # ... # 2417 | cD_b |- [t o t']tau <= type # 2418 | *) # 2419 | in # 2420 | I.SplitBranch (l', (Int.LF.Empty, pat), t', hyp') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PTyp _|STyp (_, _)) # # File "src/core/reconstruct.ml", lines 2428-2463, characters 7-57: # 2428 | .......let Int.LF.MTyp tA = cU in # 2429 | let (cD', (cPsi', tM, sA), t) = # 2430 | match Coverage.genBVar (cD, cPsi, tA) 1 with # 2431 | | [x] -> x # 2432 | | _ -> # ... # 2460 | let l' = `bvar in # 2461 | let pb' = I.SubgoalPath.(append pb (build_meta_split i l')) in # 2462 | let hyp' = elHypothetical cD_b cG_b pb' hyp ttau_b in # 2463 | I.SplitBranch (l', (Int.LF.Empty, pat'), t', hyp') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PTyp _|STyp (_, _)) # # File "src/core/reconstruct.ml", lines 2545-2547, characters 5-44: # 2545 | .....let Some w = w in # 2546 | let ctx_branches = List.map (make_ctx_branch w) bs in # 2547 | I.ContextSplit (i, tau_i, ctx_branches) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/reconstruct.ml", lines 2562-2568, characters 5-17: # 2562 | .....let (cD', cG', Int.LF.Empty, tau', _) = # 2563 | Check.Comp.unroll cD cG Int.LF.Empty (Whnf.cnormCTyp ttau) # 2564 | in # 2565 | let hyp = # 2566 | elHypothetical cD' cG' I.SubgoalPath.(append pb build_intros) hyp (tau', Whnf.m_id) # 2567 | in # 2568 | I.Intros hyp # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', cG', Dec (_, WfRec (_, _, _)), _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/harpoon/.harpoon.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/dune-build-info -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/linenoise -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/core/.beluga.objs/byte -I src/optparser/.optparser.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Harpoon -o src/harpoon/.harpoon.objs/byte/harpoon__Tactic.cmo -c -impl src/harpoon/tactic.ml) # File "src/harpoon/tactic.ml", lines 227-231, characters 7-55: # 227 | .......match cG with # 228 | | LF.Dec (cG', Comp.CTypDecl (n, tA, _)) when k == 1 -> # 229 | LF.Dec (cG', Comp.CTypDecl (n, tA, false)) # 230 | | LF.Dec (cG', decl) -> # 231 | LF.Dec (unmark_inductive_var cG' (k-1), decl) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/harpoon/tactic.ml", lines 453-468, characters 12-72: # 453 | ............let LF.(MObj (Root (_, h, _, _))) = tM in # 454 | match h with # 455 | | LF.PVar (n, s) -> `pvar None # 456 | | LF.(Proj (PVar (n, s), k)) -> `pvar (Some k) # 457 | | LF.Const cid -> `ctor cid # ... # 465 | P.(fmt_ppr_cmp_pattern cD cG l0) pat # 466 | end; # 467 | Error.raise_violation # 468 | "[make_meta_branch] head neither pvar (proj) nor const" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MObj (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlc.opt -w -40 -g -bin-annot -bin-annot-occurrences -I src/core/.beluga.objs/byte -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/parser/.beluga_parser.objs/byte -I src/support/.support.objs/byte -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/synext/.synext.objs/byte -I src/syntax/synint/.synint.objs/byte -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/byte/beluga__Logic.cmo -c -impl src/core/logic.ml) # File "src/core/logic.ml", lines 190-203, characters 4-36: # 190 | ....match tN with # 191 | | LF.Lam (l, n, tN') -> # 192 | begin # 193 | incr lR; # 194 | let tM = LF.Lam (l, n, shiftNormal tN' k) in # ... # 200 | | LF.Clo (tN, s) -> # 201 | LF.Clo (shiftNormal tN k, s) # 202 | | LF.Tuple (l, tP) -> # 203 | LF.Tuple (l, shiftTuple tP k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # LFHole (_, _, _) # # File "src/core/logic.ml", lines 241-251, characters 4-8: # 241 | ....match tA with # 242 | | LF.PiTyp ((tD, _, Plicity.Implicit), tA') -> # 243 | typToClause' (LF.DDec (eV, tD)) cG tA' (cS, dS, dR) # 244 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> # 245 | typToClause' eV (Conjunct (cG, typToGoal tA (cS, dS, dR))) # ... # 248 | { tHead = (Shift.shiftAtom tA (-cS, -dS, dR)) # 249 | ; eVars = eV # 250 | ; subGoals = cG # 251 | } # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, Explicit), _) # # File "src/core/logic.ml", lines 297-306, characters 4-30: # 297 | ....match tA with # 298 | | LF.PiTyp ((tdec, _, Plicity.Implicit), tA') -> # 299 | All (tdec, typToGoal tA' (cS, dS, dR + 1)) # 300 | | LF.PiTyp ((LF.TypDecl (x, tA) as tdec, _, Plicity.Explicit), tB) -> # 301 | Impl ((typToRes tA (cS, dS, dR), tdec), typToGoal tB (cS, dS, dR + 1)) # 302 | | LF.Atom _ -> # 303 | Atom (Shift.shiftAtom tA (-cS, -dS, dR)) # 304 | | LF.TClo (tA, s) -> # 305 | dprintf begin fun p -> p.fmt "[typToGoal] TClo" end; # 306 | raise NotImplementedYet # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, Explicit), _) # # File "src/core/logic.ml", lines 309-315, characters 4-47: # 309 | ....match tM with # 310 | | LF.PiTyp ((tD, _, Plicity.Implicit), tM') -> # 311 | Exists (tD, typToRes tM' (cS, dS, dR + 1)) # 312 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> # 313 | And (typToGoal tA (cS, dS, dR), typToRes tB (cS + 1, dS + 1, dR + 1)) # 314 | | LF.Atom _ -> # 315 | Head (Shift.shiftAtom tM (-cS, -dS, dR)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, Explicit), _) # # File "src/core/logic.ml", lines 326-348, characters 4-34: # 326 | ....match tau with # 327 | | Comp.TypBox (_loc, LF.ClTyp (LF.MTyp tA, cPsi)) -> # 328 | (* Invariant: tA will always be atomic in our implementation *) # 329 | Box (cPsi, Atom tA, Some M) # 330 | (* possibly needs to have PiBox variables shifted; # ... # 345 | let typ_dec = Comp.CTypDecl (name, tau1 , true) in # 346 | Implies ((cr1, typ_dec), cg2) # 347 | | Comp.TypBase (_, comp_cid, s) -> # 348 | Atomic (comp_cid, msToAs s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypBox (_, CTyp _) # # File "src/core/logic.ml", lines 351-358, characters 4-47: # 351 | ....match tau with # 352 | | Comp.TypBox (_) | Comp.TypBase(_) -> # 353 | Base tau # 354 | | Comp.TypArr (_, tau1, tau2) -> # 355 | CAnd (comptypToCompGoal tau1, comptypToCompRes tau2) # 356 | | Comp.TypPiBox (_, typ_dec, tau') -> # 357 | CExists (typ_dec, comptypToCompRes tau') # 358 | | Comp.TypInd tau' -> comptypToCompRes tau' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) # # File "src/core/logic.ml", lines 394-402, characters 4-30: # 394 | ....match box with # 395 | | Box (cPsi, Atom tA, Some M) -> # 396 | let loc = Location.ghost in # 397 | let ctyp = LF.ClTyp (LF.MTyp tA, cPsi) in # 398 | Comp.TypBox (loc, ctyp) # 399 | | Box (cPsi, Atom tA, Some P) -> # 400 | let loc = Location.ghost in # 401 | let ctyp = LF.ClTyp (LF.PTyp tA, cPsi) in # 402 | Comp.TypBox (loc, ctyp) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Box (_, Atom _, None) # # File "src/core/logic.ml", lines 412-416, characters 4-34: # 412 | ....match atomic with # 413 | | Atomic (cid, aS) -> # 414 | let loc = Location.ghost in # 415 | let mS = asToMs aS in # 416 | Comp.TypBase (loc, cid, mS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Box (_, _, _)|Implies ((_, _), _)|Forall (_, _)) # # File "src/core/logic.ml", lines 434-443, characters 4-10: # 434 | ....match tA with # 435 | | LF.Atom _ -> # 436 | let u = LF.Inst (Whnf.newMMVar None (cD, cPsi, LF.TClo (tA, s)) Plicity.implicit Inductivity.not_inductive) in # 437 | LF.Root (Location.ghost, LF.MVar (u, S.id), LF.Nil, Plicity.explicit) # 438 | | LF.PiTyp ((LF.TypDecl (x, tA) as tD, _, _), tB) -> # 439 | LF.Lam # 440 | ( Location.ghost # 441 | , x # 442 | , etaExpand cD (LF.DDec (cPsi, S.decSub tD s)) (tB, S.dot1 s) # 443 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/logic.ml", lines 462-470, characters 4-68: # 462 | ....match eV with # 463 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> # 464 | let (s', fS') = dctxToSub cD cPsi (eV', s) fS in # 465 | let tM' = etaExpand cD cPsi (tA, s') in # 466 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) # 467 | | LF.Null -> (s, fS) # 468 | | LF.CtxVar _ -> # 469 | invalid_arg # 470 | "Logic.Convert.dctxToSub: Match conflict with LF.CtxVar _." # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (eV', TypDeclOpt _) # # File "src/core/logic.ml", lines 475-481, characters 4-28: # 475 | ....match eV with # 476 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> # 477 | let (s', fS') = dctxToSub' cD cPsi (eV', s) fS in # 478 | let tM' = etaExpand cD cPsi (tA, s') in # 479 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) # 480 | | LF.Null -> (s, fS) # 481 | | LF.CtxVar _ -> (s, fS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (eV', TypDeclOpt _) # # File "src/core/logic.ml", lines 500-501, characters 6-52: # 500 | ......match lst with # 501 | | (cPsi, k) :: lst' -> (shift lst' (-1), cPsi) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 510-513, characters 6-20: # 510 | ......match dctx with # 511 | | LF.DDec (dctx', _) -> find_ctxvar_offset dctx' # 512 | | LF.CtxVar (LF.CtxOffset k) -> k # 513 | | LF.Null -> 0 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/logic.ml", lines 697-709, characters 9-47: # 697 | .........(match mtyp with # 698 | | LF.ClTyp (LF.MTyp _, _) -> # 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in # 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in # 701 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) # ... # 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) # 707 | ((x, (loc, mfront)) :: xs) # 708 | | LF.CTyp cid_opt -> # 709 | comptypToMQuery' (tau', i-1) ms xs) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/core/logic.ml", lines 696-709, characters 9-47: # 696 | .........let LF.Decl { name = x; typ = mtyp; plicity; inductivity } = mdecl in # 697 | (match mtyp with # 698 | | LF.ClTyp (LF.MTyp _, _) -> # 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in # 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in # ... # 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) # 707 | ((x, (loc, mfront)) :: xs) # 708 | | LF.CTyp cid_opt -> # 709 | comptypToMQuery' (tau', i-1) ms xs) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/logic.ml", lines 1084-1094, characters 4-72: # 1084 | ....match r with # 1085 | | Head tH -> # 1086 | fmt_ppr_typ cD cPsi ppf (tH, s) # 1087 | | And (g, r') -> # 1088 | fprintf ppf "%a -> %a" # ... # 1091 | | Exists (LF.TypDecl (_, _tA) as tD, r') -> # 1092 | fprintf ppf "(∃%a. %a)" # 1093 | (fmt_ppr_decl cD cPsi) (tD, s) # 1094 | (fmt_ppr_res cD (LF.DDec (cPsi, S.decSub tD s))) (r', S.dot1 s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Exists (TypDeclOpt _, _) # # File "src/core/logic.ml", lines 1305-1332, characters 4-19: # 1305 | ....match s with # 1306 | | LF.Shift _ -> true # 1307 | | LF.Dot (LF.Head (((LF.MMVar ((mmvar, ms'), s)) as hd)), s') -> # 1308 | if uninstantiated hd then false # 1309 | else check_sub s' # ... # 1329 | if uninstantiated hd then false # 1330 | else check_sub s' # 1331 | | LF.Dot (_, s') -> # 1332 | check_sub s' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/logic.ml", lines 1337-1339, characters 6-48: # 1337 | ......match cD with # 1338 | | LF.Dec (_, LF.Decl d) when k = 1 -> d.plicity # 1339 | | LF.Dec (cD', _) -> get_plicity cD' (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/logic.ml", lines 1394-1412, characters 4-30: # 1394 | ....match g with # 1395 | | Atom tA -> # 1396 | matchAtom dPool cD (cPsi, k) (tA, s) sc (currDepth, maxDepth) # 1397 | # 1398 | | Impl ((r, (LF.TypDecl (x, _) as tD)), g') -> # ... # 1409 | So we just prove the conclusion in an extended context. *) # 1410 | gSolve dPool cD (LF.DDec (cPsi, S.decSub tD s), k + 1) (g', S.dot1 s) # 1411 | (fun (u, tM) -> sc (u, LF.Lam (Location.ghost, x, tM))) # 1412 | (currDepth, maxDepth) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Impl ((r, TypDeclOpt _), _) # # File "src/core/logic.ml", lines 1444-1446, characters 17-29: # 1444 | .................match cltyp with # 1445 | | LF.MTyp tau -> tau # 1446 | | LF.PTyp tau -> tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 1439-1483, characters 4-96: # 1439 | ....match cD with # 1440 | | LF.Empty -> raise NoSolution # 1441 | | LF.Dec (cD', LF.Decl { typ = LF.CTyp _ ; _}) -> # 1442 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) # 1443 | | LF.Dec (cD', LF.Decl { typ = LF.ClTyp (cltyp, cPsi); plicity; _ }) -> # ... # 1480 | end # 1481 | with # 1482 | | U.Failure _ -> # 1483 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, DeclOpt _) # # File "src/core/logic.ml", lines 1496-1600, characters 4-76: # 1496 | ....match s with # 1497 | | LF.Shift _ -> # 1498 | dprintf begin fun p -> # 1499 | p.fmt "[trivially_prove] s_all = %a" # 1500 | (P.fmt_ppr_lf_sub cD cPhi P.l0) s_all # ... # 1597 | with # 1598 | | U.Failure _ | NoSolution -> raise NoSolution) # 1599 | | LF.Dot (_, s') -> # 1600 | trivially_prove s' s_all cD (goal, cPhi, s_goal) dPool u (curr_sub+1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/logic.ml", lines 2260-2263, characters 4-25: # 2260 | ....match cG with # 2261 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) when k = 1 -> name # 2262 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) -> # 2263 | get_name (k-1) cG' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG', CTypDeclOpt _) # # File "src/core/logic.ml", lines 2337-2340, characters 4-21: # 2337 | ....match cdecl with # 2338 | | Comp.CTypDecl (_, tau, _) -> # 2339 | let cc = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in # 2340 | (cc, k, Boxed) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/logic.ml", lines 2416-2417, characters 9-57: # 2416 | .........let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in # 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Full (Full (_, ({ _ }, _, _)), ({ _ }, _, _)) # # File "src/core/logic.ml", lines 2407-2418, characters 6-33: # 2407 | ......match (cP, cG) with # 2408 | | (Emp, LF.Dec(cG', cdecl)) -> # 2409 | let cc = decToCC cdecl 1 in # 2410 | let cP_ret' = shift_cPool cP_ret 1 in # 2411 | update cP cG' (prependToCPool cc cP_ret') (k+1) # ... # 2415 | if pos' = k then unbox cc else cc in # 2416 | let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in # 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) # 2418 | | (Emp, LF.Empty) -> cP_ret # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Full (cP', cc), Empty) # # File "src/core/logic.ml", lines 2470-2476, characters 6-36: # 2470 | ......match tA with # 2471 | | LF.Atom (l, cid, sp) -> # 2472 | LF.Atom (l, cid, remove_sp sp) # 2473 | | LF.PiTyp ((td, depend, plicity), tA') -> # 2474 | LF.PiTyp ((td, depend, plicity), remove_typ tA) # 2475 | | LF.TClo (tA', s) -> # 2476 | LF.TClo (remove_typ tA', s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Sigma _ # # File "src/core/logic.ml", lines 2495-2508, characters 6-49: # 2495 | ......match tau with # 2496 | | Comp.TypBase (l, cid, mS) -> # 2497 | Comp.TypBase (l, cid, remove_mS mS) # 2498 | | Comp.TypBox (l, mT) -> # 2499 | (match mT with # ... # 2505 | | Comp.TypArr (l, tau1, tau2) -> # 2506 | Comp.TypArr (l, remove_tau tau1, remove_tau tau2) # 2507 | | Comp.TypPiBox (l, cdec, tau') -> # 2508 | Comp.TypPiBox (l, cdec, remove_tau tau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)|TypInd _) # # File "src/core/logic.ml", lines 2731-2741, characters 9-52: # 2731 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in # 2732 | let mmvar' = # 2733 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity # 2734 | mmvar.LF.inductivity in # 2735 | let norm = LF.Root (noLoc, # ... # 2738 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in # 2739 | let x = Comp.M ((noLoc, mf), mT) in # 2740 | let (xs, sub) = gen_new_ih_args lst' ys in # 2741 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/logic.ml", lines 2752-2762, characters 9-52: # 2752 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in # 2753 | let mmvar' = # 2754 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity # 2755 | mmvar.LF.inductivity in # 2756 | let norm = LF.Root (noLoc, LF.MMVar # ... # 2759 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in # 2760 | let x = Comp.M ((noLoc, mf), mT) in # 2761 | let (xs, sub) = gen_new_ih_args lst' ys in # 2762 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/logic.ml", lines 2771-2779, characters 9-58: # 2771 | .........let LF.ClTyp (LF.PTyp tA, cPsi) = mmvar.LF.typ in # 2772 | let mmvar' = # 2773 | Whnf.newMPVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity # 2774 | mmvar.LF.inductivity in # 2775 | let hd = LF.MPVar ((mmvar', LF.MShift 0), LF.Shift 0) in # 2776 | let mf = LF.ClObj (dctx_hat, LF.PObj hd) in # 2777 | let x = Comp.M ((noLoc, mf), mT) in # 2778 | let (xs, sub) = gen_new_ih_args lst' ys in # 2779 | (x :: xs, (mmvar.LF.mmvar_id, LF.head hd) :: sub) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|STyp (_, _)), _) # # File "src/core/logic.ml", lines 2842-2843, characters 11-44: # 2842 | ...........let (LF.Root(_, hd',_,_)) = sub_norm (LF.head hd) sub in # 2843 | (loc, LF.ClObj (dh, LF.PObj hd')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/logic.ml", lines 2920-2921, characters 6-42: # 2920 | ......match i with # 2921 | | Comp.Var(l, k) -> Comp.Var(l, k+1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, T (_, _, _))| # LetTuple (_, _, (T (_, _, _), _))|Let (_, _, (_, _))|Box (_, (_, _), _)| # Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)|DataConst (_, _)| # Obs (_, _, _, _)|Const (_, _)|Apply (_, _, _)|MApp (_, _, (_, _), _, _)| # AnnBox (_, (_, _), _)) # # File "src/core/logic.ml", lines 2977-2978, characters 6-37: # 2977 | ......match cltyp with # 2978 | | LF.MTyp tA | LF.PTyp tA -> tA # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 2998-3001, characters 6-58: # 2998 | ......match cG_a with # 2999 | | [] -> false # 3000 | | (Comp.CTypDecl (name2, _ ,_), _, _, _, _, _) :: cG_a' -> # 3001 | (Name.equal name name2) || (old_split name cG_a') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CTypDeclOpt _, _, _, _, _, _)::_ # # File "src/core/logic.ml", lines 3005-3009, characters 6-37: # 3005 | ......match cG_a with # 3006 | | (Comp.CTypDecl (name2, _ ,_), _, con, _, thm, bool) :: cG_a' # 3007 | when Name.equal name name2 -> # 3008 | (con, thm, bool) # 3009 | | x :: xs -> find_split name xs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3013-3065, characters 6-30: # 3013 | ......match (cG, cPool) with # 3014 | | (LF.Dec(cG', # 3015 | ((Comp.CTypDecl (name, Comp.TypBox # 3016 | (_, LF.ClTyp (cltyp, cPsi)), _wf)) # 3017 | as cdecl)), # ... # 3062 | | (LF.Dec (cG', _), Full (cPool', _)) -> # 3063 | update (cG', cPool', ret) # 3064 | # 3065 | | (LF.Empty, Emp) -> ret # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dec (cG', _), Emp) # # File "src/core/logic.ml", lines 3084-3087, characters 6-38: # 3084 | ......match cD_a with # 3085 | | (LF.Decl d, Option.Some _, _, _, _, _) as x :: cD_a' # 3086 | when Name.equal d.name n -> x # 3087 | | _ :: cD_a' -> retrieve n cD_a' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3103-3108, characters 21-41: # 3103 | .....................match cltyp with # 3104 | | LF.MTyp tA -> # 3105 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), # 3106 | LF.Nil, Plicity.explicit)) # 3107 | | LF.PTyp tA -> # 3108 | LF.PObj (LF.PVar (1, S.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3094-3118, characters 9-31: # 3094 | .........let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = # 3095 | retrieve name cD_a in # 3096 | let (con', bool') = # 3097 | if bool then # 3098 | try # ... # 3115 | let tdecl' = Whnf.cnormCDecl (tdecl, LF.MShift 1) in # 3116 | let x = (tdecl', Some i, con', 1, thm, bool') in # 3117 | let ret' = shift_cD_a ret in # 3118 | update cD' (x :: ret') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (DeclOpt { _ }, _, _, _, _, _) # # File "src/core/logic.ml", lines 3126-3131, characters 21-41: # 3126 | .....................match cltyp with # 3127 | | LF.MTyp tA -> # 3128 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), # 3129 | LF.Nil, Plicity.explicit)) # 3130 | | LF.PTyp tA -> # 3131 | LF.PObj (LF.PVar (1, S.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3090-3157, characters 6-23: # 3090 | ......match cD with # 3091 | | LF.Dec (cD', ((LF.Decl { name; typ = ((LF.ClTyp (cltyp, cPsi)) as ctyp) # 3092 | ; plicity = Plicity.Explicit; _ }) as tdecl)) # 3093 | when is_in name cD_a -> # 3094 | let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = # ... # 3154 | let x = (tdecl', None, con, 1, None, bool) in # 3155 | let ret' = shift_cD_a ret in # 3156 | update cD' (x :: ret') # 3157 | | LF.Empty -> ret # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, DeclOpt _) # # File "src/core/logic.ml", lines 3243-3251, characters 6-44: # 3243 | ......match cG_a with # 3244 | | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, true) :: cG_a' # 3245 | when Name.equal name n -> # 3246 | (tau, i, thm_var, # 3247 | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, false) # 3248 | :: cG_a', k) # 3249 | | x :: cG_a' -> # 3250 | let (tau, i, thm_var, cG_a'', pos) = remove_var name cG_a' in # 3251 | (tau, i, thm_var, x :: cG_a'', pos) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3256-3264, characters 6-39: # 3256 | ......match cD_a with # 3257 | | (LF.Decl d, Option.Some i, no, k, thm_var, true) # 3258 | :: cD_a' when Name.equal name d.name -> # 3259 | let tau = Comp.TypBox(noLoc, d.typ) in # 3260 | (tau, i, thm_var, (LF.Decl d, Option.some i, no, k, thm_var, false) # 3261 | :: cD_a') # 3262 | | x :: cD_a' -> # 3263 | let (tau, i, thm_var, cD_a'') = remove_mvar name cD_a' in # 3264 | (tau, i, thm_var, x :: cD_a'') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3330-3332, characters 9-42: # 3330 | .........let (Some n) = find_mvar k cD_a in # 3331 | let (tau, i, thm_var, cD_a') = remove_mvar n cD_a in # 3332 | (tau, i, thm_var, cD_a', cG_a, 0). # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 3358-3365, characters 8-50: # 3358 | ........match cG_a with # 3359 | | (((Comp.CTypDecl (name2, _ ,_)) as cdecl), _, con, _, thm, bool) # 3360 | :: cG_a' when Name.equal name name2 -> # 3361 | (cdecl, con, thm, bool, cG_a') # 3362 | | x :: xs -> # 3363 | let (tdecl, num, thm_var, bool, cG_a') = # 3364 | remove xs in # 3365 | (tdecl, num, thm_var, bool, x :: cG_a') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3374-3399, characters 7-25: # 3374 | .......(match cltyp with # 3375 | | LF.MTyp tA -> # 3376 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive } in # 3377 | let norm = # 3378 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in # ... # 3396 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in # 3397 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) # 3398 | :: (shift_cD_a cD_a) in # 3399 | (cD_a', cG_a')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3403-3428, characters 7-25: # 3403 | .......(match cltyp with # 3404 | | LF.MTyp _ -> # 3405 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.inductive } in # 3406 | let norm = # 3407 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in # ... # 3425 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in # 3426 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) # 3427 | :: (shift_cD_a cD_a) in # 3428 | (cD_a', cG_a')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3489-3525, characters 7-31: # 3489 | .......(match cltyp with # 3490 | | LF.MTyp _ -> # 3491 | let norm = # 3492 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), # 3493 | LF.Nil, plicity) in # ... # 3522 | | false -> None # 3523 | in # 3524 | (tdecl', Some i, consOfLFTyp cltyp, 1, thm_var, true) # 3525 | :: (shift_cD_a cD_a)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3646-3651, characters 4-46: # 3646 | ....match cG with # 3647 | | LF.Empty -> cPool # 3648 | | LF.Dec (cG', Comp.CTypDecl (_, tau, _)) -> # 3649 | let clause = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in # 3650 | let cc = (clause, (lengthCPool cPool) + 1, Boxed) in # 3651 | gen_cPool cG' (prependToCPool cc cPool) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG', CTypDeclOpt _) # # File "src/core/logic.ml", lines 3898-3900, characters 6-46: # 3898 | ......match cD with # 3899 | | LF.Dec (_, LF.Decl { name; _ }) when k = 1 -> name # 3900 | | LF.Dec (cD', _) -> find_name cD' (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/logic.ml", lines 4037-4047, characters 22-64: # 4037 | ......................match mobj with # 4038 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) # 4039 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) -> # 4040 | mmvar.LF.instantiation := # 4041 | Some (LF.INorm (LF.Root (noLoc, # ... # 4044 | | LF.PObj LF.MPVar ((mmvar, _), _) # 4045 | | LF.PObj LF.MMVar ((mmvar, _), _) -> # 4046 | mmvar.LF.instantiation := # 4047 | Some (LF.IHead (LF.MVar (LF.Offset k, LF.Shift 0))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MObj # (Root # (_, # (BVar _|Const _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)), _, _)) # # File "src/core/logic.ml", lines 4051-4057, characters 6-26: # 4051 | ......match ih_args with # 4052 | | (Comp.M ((_, LF.ClObj (_, ((LF.PObj hd) as mobj))), _)) :: xs -> # 4053 | if Solver.uninstantiated hd then mobj else grab xs # 4054 | | (Comp.M ((_, LF.ClObj (_, ((LF.MObj (LF.Root (_,hd,_,_))) as mobj))), _)) # 4055 | :: xs-> # 4056 | if Solver.uninstantiated hd then mobj else grab xs # 4057 | | _ :: xs -> grab xs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 4060-4064, characters 14-56: # 4060 | ..............match mobj with # 4061 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) # 4062 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) # 4063 | | LF.PObj LF.MPVar ((mmvar, _), _) # 4064 | | LF.PObj LF.MMVar ((mmvar, _), _) -> mmvar.LF.typ... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MObj # (Root # (_, # (BVar _|Const _|MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)| # FVar _|FMVar (_, _)|FPVar (_, _)|HClo (_, _, _)| # HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))), _, # _)) # # File "src/core/logic.ml", lines 4079-4090, characters 6-88: # 4079 | ......let Some cid = thm_cid in # 4080 | let i = Comp.Const(noLoc, cid) in # 4081 | let sc' = (fun e -> sc (Comp.Case (noLoc, # 4082 | Comp.PragmaNotCase, # 4083 | Whnf.cnormExp (fS i, LF.MShift 0), # ... # 4087 | pattern, # 4088 | LF.MShift 0, # 4089 | e)]))) in # 4090 | find_all_occurances dec (cG', cPool', cG_a') sc' cD thm_cid thm lst' cIH' cIH_all' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 4126-4128, characters 21-40: # 4126 | .....................match (currDepth, maxDepth) with # 4127 | | (Some k, None) -> (k, 0) # 4128 | | (Some k1, Some k2) -> (k1, k2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (None, _) # # File "src/core/logic.ml", lines 4290-4311, characters 9-83: # 4290 | .........let Some cid = thm_cid in # 4291 | let i = arg_builder (Comp.Const(noLoc, cid)) in # 4292 | let (ms', fS) = # 4293 | C.mctxToMSub cD (cMVars, LF.MShift 0) (fun s -> s) in # 4294 | let ms'' = rev_ms ms' 0 in # ... # 4308 | with # 4309 | | U.Failure _ | DepthReached _ | End_Of_Search -> # 4310 | focusIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc # 4311 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (thm, td, thm_cid)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 4595-4597, characters 6-57: # 4595 | ......match cG with # 4596 | | LF.Dec (_, Comp.CTypDecl (_, tau, _)) when k = 1 -> tau # 4597 | | LF.Dec (cG', _) -> find_comp_assumption cG' (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/logic.ml", lines 4895-4905, characters 10-31: # 4895 | ..........let [(cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, # 4896 | ms_b, pat, td_b, cid)] = blist in # 4897 | # 4898 | invert_all (cD, cD_a) (cG, cPool, cG_a) cIH_b # 4899 | (normCompGoal (cg, ms)) ms_b # ... # 4902 | [Comp.Branch(noLoc, LF.Empty, (cD, cG), pat, # 4903 | ms_b, e)]))) # 4904 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 4905 | (ind, thm, td, cid) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, ms_b, pat, td_b, cid):: # (_, _, _, _, _, _, _, _, _, _, _, _)::_ # # File "src/core/logic.ml", lines 4976-5015, characters 7-35: # 4976 | .......let Atom tA = g' in # 4977 | let cltyp = LF.MTyp tA in # 4978 | let sc' = # 4979 | (fun (cPsi', tM) -> # 4980 | let dctx_hat = Context.dctxToHat cPsi' in # ... # 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5014 | (ind, thm, td, thm_cid); # 5015 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Impl ((_, _), _)|All (_, _)) # # File "src/core/logic.ml", lines 4975-5015, characters 7-35: # 4975 | .......let Box(cPsi',g',_) = cg' in # 4976 | let Atom tA = g' in # 4977 | let cltyp = LF.MTyp tA in # 4978 | let sc' = # 4979 | (fun (cPsi', tM) -> # ... # 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5014 | (ind, thm, td, thm_cid); # 5015 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) # # File "src/core/logic.ml", lines 5024-5029, characters 11-51: # 5024 | ...........let LF.Root (_,hd,_,_) = tM in # 5025 | let dctx_hat = Context.dctxToHat cPsi' in # 5026 | let mfront = LF.ClObj (dctx_hat, LF.PObj hd) in # 5027 | let meta_obj = (noLoc, mfront) in # 5028 | let meta_typ = LF.ClTyp (cltyp, cPsi') in # 5029 | sc (Comp.Box(noLoc, meta_obj, meta_typ)). # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/logic.ml", lines 5020-5060, characters 7-34: # 5020 | .......let Atom tA = g' in # 5021 | let cltyp = LF.PTyp tA in # 5022 | let sc' = # 5023 | (fun (cPsi', tM) -> # 5024 | let LF.Root (_,hd,_,_) = tM in # ... # 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5059 | (ind, thm, td, thm_cid); # 5060 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Impl ((_, _), _)|All (_, _)) # # File "src/core/logic.ml", lines 5019-5060, characters 7-34: # 5019 | .......let Box(_,g',_) = cg' in # 5020 | let Atom tA = g' in # 5021 | let cltyp = LF.PTyp tA in # 5022 | let sc' = # 5023 | (fun (cPsi', tM) -> # ... # 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5059 | (ind, thm, td, thm_cid); # 5060 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) # # File "src/core/logic.ml", lines 4969-5085, characters 4-30: # 4969 | ....match cg with # 4970 | | Box (cPsi, g, Some M) -> # 4971 | (* We apply the msub here in case there are FREE MVARS that # 4972 | appear from unify *) # 4973 | let ms = Whnf.cnormMSub ms in # ... # 5082 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5083 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5084 | (ind, thm, td, thm_cid); # 5085 | raise End_Of_Search # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Box (_, _, None) # # File "src/core/logic.ml", lines 5223-5246, characters 7-36: # 5223 | .......let Some cid = thm_cid in # 5224 | let cIH_all' = Total.shift cIH_all in # 5225 | let cIH'' = Total.shift cIH' in # 5226 | let i = Comp.Const(noLoc, cid) in # 5227 | (try # ... # 5243 | | End_Of_Search | DepthReached _ -> # 5244 | blurIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc # 5245 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) # 5246 | (ind, thm, td, thm_cid)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5263-5286, characters 7-32: # 5263 | .......let Some cid = thm_cid in # 5264 | let i = Comp.Const(noLoc, cid) in # 5265 | let cIH'' = Total.shift cIH' in # 5266 | let cIH_all' = Total.shift cIH_all in # 5267 | let exp = Whnf.cnormExp (fS i, LF.MShift 0) in # ... # 5283 | in # 5284 | blurIH (cD, cD_a) (cG', cPool', cG_a') (cIH'', cIH_all') cg ms sc' # 5285 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) # 5286 | (ind, thm, td, thm_cid) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5393-5394, characters 6-46: # 5393 | ......match cp with # 5394 | | (_cc, _k, Boxed) -> (_cc, _k, Unboxed) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_cc, _k, Unboxed) # # File "src/core/logic.ml", lines 5441-5458, characters 10-49: # 5441 | ..........match r with # 5442 | | LF.ClTyp (LF.MTyp _, cPsi) -> # 5443 | let tM = # 5444 | LF.Root # 5445 | ( noLoc # ... # 5455 | LF.ClObj (Context.dctxToHat (Whnf.cnormDCtx (cPsi, LF.MShift 1)), # 5456 | LF.PObj hd) # 5457 | | LF.CTyp _ -> # 5458 | LF.CObj (LF.CtxVar (LF.CtxOffset 1)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/core/logic.ml", lines 5549-5554, characters 7-37: # 5549 | .......let Comp.CTypDecl (name, _, _) = tdecl in # 5550 | let sc' = (fun e -> sc (Comp.Fn (noLoc, name, e))) in # 5551 | let cIH' = Total.shift cIH in # 5552 | uniform_right (cD, cD_a) (cG', cPool', cG_a') cIH' cg' ms sc' # 5553 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (k+1) # 5554 | (ind, thm, td, thm_cid) blur # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/logic.ml", lines 5587-5590, characters 24-19: # 5587 | ........................match sp with # 5588 | | 0 -> Some 0 (* No splitting. *) # 5589 | | 1 -> None (* Only inversions. *) # 5590 | | 2 -> Some 1........................ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # 3 # # File "src/core/logic.ml", lines 5795-5798, characters 9-40: # 5795 | .........let Some iterm = !(mmvar.LF.instantiation) in # 5796 | (match iterm with # 5797 | | LF.IHead hd -> hd # 5798 | | _ -> raise NotImplementedYet) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5800-5803, characters 9-40: # 5800 | .........let Some iterm = !(mmvar.LF.instantiation) in # 5801 | (match iterm with # 5802 | | LF.IHead hd -> hd # 5803 | | _ -> raise NotImplementedYet) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5805-5808, characters 9-40: # 5805 | .........let Some iterm = !(mmvar.LF.instantiation) in # 5806 | (match iterm with # 5807 | | LF.IHead hd -> hd # 5808 | | _ -> raise NotImplementedYet) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5834-5835, characters 11-16: # 5834 | ...........let Some iterm = !(mmvar.LF.instantiation) in # 5835 | iterm # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5837-5838, characters 11-16: # 5837 | ...........let Some iterm = !(mmvar.LF.instantiation) in # 5838 | iterm # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5840-5841, characters 11-16: # 5840 | ...........let Some iterm = !(mmvar.LF.instantiation) in # 5841 | iterm # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5847-5849, characters 9-33: # 5847 | .........(match remove_head_mvars hd with # 5848 | | LF.IHead hd -> LF.Root (l, hd, remove_spine_mvars spine, p) # 5849 | | LF.INorm norm -> norm) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ISub _|ICtx _) # # File "src/core/logic.ml", lines 6066-6076, characters 8-33: # 6066 | ........match tau with # 6067 | | Comp.TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, _) -> Option.some n # 6068 | | Comp.TypPiBox (_, _, tau') -> ind_index tau' (n + 1) # 6069 | | Comp.TypInd (_) -> Option.some n # 6070 | | Comp.TypBox (_, _) -> Option.none # ... # 6073 | let ind = ind_index tau1 n in # 6074 | match ind with # 6075 | | Option.None -> ind_index tau2 (n + 1) # 6076 | | Option.Some _ -> ind # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Order.cmx -c -impl src/core/order.ml) # File "src/core/order.ml", lines 26-34, characters 2-23: # 26 | ..function # 27 | | I.Arg x -> Some [x] # 28 | | I.Lex xs -> # 29 | let f = # 30 | function # 31 | | I.Arg x -> Some x # 32 | | _ -> None (* We don't support nested lexicographic orders. *) # 33 | in # 34 | List.traverse f xs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Simul _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Erase.cmx -c -impl src/core/erase.ml) # File "src/core/erase.ml", lines 6-19, characters 2-33: # 6 | ..match (tau, n) with # 7 | | (_, 0) -> 0 # 8 | | (TypArr (_, _, tau), n) -> 1 + numeric_order_arg tau (n - 1) # 9 | | (TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, tau), n) -> # 10 | (* We count [Inductive] as 1 instead of throwing an error because # ... # 16 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Explicit; _ }, tau), n) -> # 17 | 1 + numeric_order_arg tau (n - 1) # 18 | | (TypPiBox (_, LF.Decl { plicity = Plicity.Implicit; _ }, tau), n) -> # 19 | numeric_order_arg tau (n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypPiBox (_, DeclOpt _, _), 1) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Substitution.cmx -c -impl src/core/substitution.ml) # File "src/core/substitution.ml", lines 105-124, characters 4-44: # 105 | ....match (n, s) with # 106 | | (_, Undefs) -> Undef # 107 | | (1, Dot (ft, _s)) -> ft # 108 | | (n, Dot (_ft, s)) -> bvarSub (n - 1) s # 109 | | (n, Shift k) -> Head (BVar (n + k)) # ... # 121 | Free BVar (n + k) ... -bp *) # 122 | Head (HClo (n + k, s, sigma)) # 123 | | (n, MSVar (k, ((s, t), sigma))) -> # 124 | Head (HMClo (n + k, ((s, t), sigma))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, (EmptySub|FSVar (_, _))) # # File "src/core/substitution.ml", lines 156-159, characters 12-73: # 156 | ............function # 157 | | (Last u, 1) -> u # 158 | | (Cons (u, _), 1) -> u # 159 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last u, 0) # # File "src/core/substitution.ml", lines 166-169, characters 12-73: # 166 | ............function # 167 | | (Last u, 1) -> u # 168 | | (Cons (u, _), 1) -> u # 169 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last u, 0) # # File "src/core/substitution.ml", lines 147-194, characters 7-10: # 147 | .......begin match bvarSub n s with # 148 | | Head (BVar x) -> # 149 | Head (Proj (BVar x, k)) # 150 | # 151 | | Head (PVar _ as h) -> # ... # 191 | | Head (AnnH _ ) -> failwith "Found head that is AnnH" # 192 | | Head (MMVar _ ) -> failwith "Found head that is MMVar" # 193 | | Head _ -> failwith "Found head that is not a BVar or PVar" # 194 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/substitution.ml", lines 203-206, characters 12-73: # 203 | ............function # 204 | | (Last u, 1) -> (u, s) # 205 | | (Cons (u, _), 1) -> (u, s) # 206 | | (Cons (u, tuple), n) -> nth (Dot (Obj u, s)) (tuple, n - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last u, 0) # # File "src/core/substitution.ml", lines 197-210, characters 7-10: # 197 | .......begin match frontSub (Head h) s with # 198 | | Head h' -> # 199 | Head (Proj (h', k)) # 200 | # 201 | | Obj (Tuple (_, tuple)) -> # ... # 207 | in # 208 | (* Obj (Clo (nth s (tuple, k))) *) # 209 | Obj (Pair.fst (nth s (tuple, k))) # 210 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Obj (Lam (_, _, _)|Root (_, _, _, _)|LFHole (_, _, _)|Clo _) # # File "src/core/substitution.ml", lines 213-214, characters 7-26: # 213 | .......let Head h' = frontSub (Head h) s in # 214 | Head (AnnH (h', a)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undef|Obj _) # # File "src/core/substitution.ml", lines 138-221, characters 4-35: # 138 | ....match ft with # 139 | | Head (HClo (n, s', sigma)) -> Head (HClo (n, s', comp sigma s)) # 140 | | Head (HMClo (n, ((s', theta), sigma))) -> Head (HMClo (n, ((s', theta), comp sigma s))) # 141 | | Head (BVar n) -> bvarSub n s # 142 | | Head (FVar _) -> ft # ... # 218 | | Obj u -> Obj (Clo (u, s)) # 219 | | Undef -> Undef # 220 | | Head (MMVar (n, s')) -> Head (MMVar (n, comp s' s)) # 221 | | Head (FPVar (_n, _s' )) -> ft # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head (MPVar _|FMVar _) # # File "src/core/substitution.ml", line 263, characters 13-30: # 263 | let decSub (TypDecl (x, tA)) s = TypDecl (x, TClo (tA, s)) # ^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/substitution.ml", lines 292-300, characters 6-33: # 292 | ......match s with # 293 | | EmptySub -> None # 294 | | Undefs -> None # 295 | | Shift _ -> None # 296 | | Dot (Undef, s') -> lookup (n + 1) s' p # 297 | | Dot (Head (BVar k), s') -> # 298 | if k = p # 299 | then Some (Head (BVar n)) # 300 | else lookup (n + 1) s' p # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dot # (Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), # _) # # File "src/core/substitution.ml", lines 314-324, characters 6-37: # 314 | ......match s with # 315 | | EmptySub -> # 316 | invert'' maxoffset Undefs # 317 | | Undefs -> # 318 | invert'' maxoffset Undefs # ... # 321 | | Dot (Head (BVar k), s') -> # 322 | invert' (n + 1) s' (max k maxoffset) # 323 | | Dot (_, s') -> (* Is this really necessary? -ac *) # 324 | invert' (n + 1) s' maxoffset # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/substitution.ml", lines 335-350, characters 4-65: # 335 | ....match (s, cPsi) with # 336 | | (Shift _ (* 0 *), Null) -> # 337 | Null # 338 | | (Shift _, CtxVar psi) -> # 339 | CtxVar psi # ... # 347 | | (Dot (Undef, t), DDec (cPsi, _)) -> # 348 | strengthen t cPsi # 349 | | (Shift n, cPsi) -> # 350 | strengthen (Dot (Head (BVar (n + 1)), Shift (n + 1))) cPsi # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dot (Head (BVar _k), t), (Null|CtxVar _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Context.cmx -c -impl src/core/context.ml) # File "src/core/context.ml", lines 90-104, characters 4-24: # 90 | ....function # 91 | | (DDec (_, TypDecl (x, tA')), 1) -> # 92 | TypDecl (x, TClo (tA', Shift k)) # 93 | # 94 | | (DDec (cPsi', TypDecl _), k') -> # ... # 101 | ctxDec' (cPsi', k'-1) # 102 | # 103 | | (CtxVar (CInst ({instantiation = {contents = Some (ICtx cPsi)}; _}, _)), k) -> # 104 | ctxDec' (cPsi, k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxVar # (CInst ({instantiation={contents=Some (INorm _|IHead _|ISub _)}; _ }, _)), # _) # # File "src/core/context.ml", lines 124-134, characters 4-24: # 124 | ....function # 125 | | (DDec (_, TypDecl (x, Sigma tArec)), 1) -> # 126 | TypDecl (x, Sigma (sigmaShift tArec (Shift k))) # 127 | # 128 | | (DDec (cPsi', TypDecl (_, Sigma _)), k') -> # ... # 131 | | (DDec (cPsi', TypDecl _), k') -> # 132 | ctxDec' (cPsi', k' - 1) # 133 | | (CtxVar (CInst ({ instantiation = {contents = Some (ICtx cPhi) }; _ }, _)) , k) -> # 134 | ctxDec' (cPhi, k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (DDec (cPsi', TypDeclOpt _), _) # # File "src/core/context.ml", lines 361-364, characters 2-49: # 361 | ..match (cPsi, k) with # 362 | | (DDec (_, TypDecl (x, _)), 1) -> x # 363 | | (DDec (_, TypDeclOpt x), 1) -> x # 364 | | (DDec (cPsi, _), k) -> getNameDCtx cPsi (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Null|CtxVar _), _) # # File "src/core/context.ml", lines 367-371, characters 2-27: # 367 | ..match (cD, k) with # 368 | | (Dec (_, Decl { name = u; _ }), 1) -> u # 369 | | (Dec (_, DeclOpt { name = u; _ }), 1) -> u # 370 | | (Dec (cD, _), k) -> # 371 | getNameMCtx cD (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Empty, _) # # File "src/core/context.ml", lines 374-377, characters 2-45: # 374 | ..match (cG, k) with # 375 | | (Dec (_, Comp.CTypDecl (x, _ , _)), 1) -> x # 376 | | (Dec (_, Comp.CTypDeclOpt x), 1) -> x # 377 | | (Dec (cG, _), k) -> getNameCtx cG (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Empty, _) # # File "src/core/context.ml", lines 401-403, characters 4-58: # 401 | ....function # 402 | | CtxVar ctx_var -> DDec (CtxVar ctx_var, new_typ_decl) # 403 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Null # # File "src/core/context.ml", lines 409-411, characters 4-58: # 409 | ....function # 410 | | CtxVar ctx_var -> Null # 411 | | DDec (cPsi, concrete) -> DDec (inner cPsi, concrete) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Null # # File "src/core/context.ml", lines 436-439, characters 2-28: # 436 | ..match (cD, psi_offset) with # 437 | | (Dec (_, Decl { typ = CTyp (Some cid_schema); _ }), 1) -> cid_schema # 438 | | (Dec (cD, _) , i) -> # 439 | lookupSchema cD (i - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Empty, _) # # File "src/core/context.ml", lines 446-453, characters 7-10: # 446 | .......begin match cvar with # 447 | | CtxName phi when Name.(psi = phi) -> (psi, schemaName) # 448 | | CtxName _ -> lookup cD (offset + 1) # 449 | | CtxOffset n -> # 450 | if n - offset = 1 # 451 | then (psi, schemaName) # 452 | else lookup cD (offset + 1) # 453 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CInst _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Store.cmx -c -impl src/core/store.ml) # File "src/core/store.ml", lines 212-217, characters 6-45: # 212 | ......function # 213 | | Int.LF.Atom(_, b, _) -> # 214 | List.iter (fun a -> addSubord a b) acc ; [b] # 215 | # 216 | | Int.LF.PiTyp((Int.LF.TypDecl(_, tA1), _, _), tA2) -> # 217 | inspect (acc @ (inspect [] tA1)) tA2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/store.ml", lines 222-226, characters 6-56: # 222 | ......function # 223 | | Int.LF.Typ -> # 224 | List.iter (fun a -> addSubord a cid_tp) acc # 225 | | Int.LF.PiKind((Int.LF.TypDecl(_, tA1), _, _), tK2) -> # 226 | inspectKind cid_tp (acc @ (inspect [] tA1)) tK2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Whnf.cmx -c -impl src/core/whnf.ml) # File "src/core/whnf.ml", lines 36-39, characters 2-73: # 36 | ..match cPsi with # 37 | | Null -> tA # 38 | | DDec (cPsi', decl) -> # 39 | raiseType cPsi' (PiTyp ((decl, Depend.maybe, Plicity.implicit), tA)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar _ # # File "src/core/whnf.ml", lines 133-148, characters 2-64: # 133 | ..match sA' with # 134 | | (PiTyp ((decl, _, _), tA'), s') -> # 135 | let (u', tM) = # 136 | lowerMVar' # 137 | (DDec (cPsi, LF.decSub decl s')) # ... # 145 | # 146 | | (Atom (loc, a, tS), s') -> # 147 | let u' = newMVar None (cPsi, Atom (loc, a, SClo (tS, s'))) plicity inductivity in # 148 | (u', Root (Location.ghost, MVar (u', LF.id), Nil, plicity)).................... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _, _) # # File "src/core/whnf.ml", lines 152-162, characters 2-25: # 152 | ..match (u, sA) with # 153 | | ( Inst { instantiation; typ = ClTyp (_, cPsi); plicity; inductivity; _ } # 154 | , (PiTyp _, _) # 155 | ) -> # 156 | let (u', tM) = lowerMVar' cPsi sA plicity inductivity in # ... # 159 | # 160 | | (_, (TClo (tA, s), s')) -> lowerMVar1 u (tA, LF.comp s s') # 161 | # 162 | | (_, (Atom _, _)) -> u # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Inst {typ=ClTyp (_, _); _ }, (Sigma _, _)) # # File "src/core/whnf.ml", lines 319-329, characters 4-31: # 319 | ....match s with # 320 | | MShift _ -> None # 321 | | MDot (MUndef, t') -> lookup (n + 1) t' p # 322 | # 323 | | MDot (MV k, t') # ... # 326 | | MDot (ClObj (_, PObj (PVar (k, Shift 0))), t') -> # 327 | if k = p # 328 | then Some n # 329 | else lookup (n + 1) t' p # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MDot (CObj (CtxVar (CtxName _|CInst _)), _) # # File "src/core/whnf.ml", lines 385-387, characters 7-59: # 385 | .......match normHead (h, sigma) with # 386 | | Head h' -> Root (loc, h', normSpine (tS, sigma), plicity) # 387 | | Obj tM -> reduce (tM, LF.id) (normSpine (tS, sigma)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 404-407, characters 5-8: # 404 | .....begin match normMMVar mmt with # 405 | | ResMM mmt' -> Head (HMClo (k, (mmt', normSub' (s, sigma)))) # 406 | | Result (ISub r) -> normFt' (normFt' (LF.bvarSub k r, s), sigma) # 407 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 409-413, characters 5-8: # 409 | .....begin match normMMVar mmt with # 410 | (* The order in which we normalize mm, n, s, and sigma seems to matter..*) # 411 | | ResMM mmt' -> Head (MMVar (mmt', normSub' (s, sigma))) # 412 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) # 413 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 415-419, characters 5-8: # 415 | .....begin match normMMVar mmt with # 416 | | ResMM mmt' -> Head (MPVar (mmt', normSub' (s, sigma))) # 417 | | Result (IHead h) -> normFt' (normHead (h, s), sigma) # 418 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) # 419 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (ISub _|ICtx _) # # File "src/core/whnf.ml", lines 422-425, characters 5-8: # 422 | .....begin match normMMVar (mm, MShift 0) with # 423 | | ResMM (mm', _) -> Head (MVar (Inst mm', normSub' (s, sigma))) # 424 | | Result (INorm n) -> Obj (norm (norm (n, s), sigma)) # 425 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 449-451, characters 2-32: # 449 | ..match ft with # 450 | | Head h -> normHead (h, s) # 451 | | Obj tM -> Obj (norm (tM, s)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 454-457, characters 2-37: # 454 | ..match tM with # 455 | | INorm n -> INorm (cnorm (n, mt)) # 456 | | IHead h -> IHead (cnormHead (h, mt)) # 457 | | ISub s -> ISub (cnormSub (s, mt)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ICtx _ # # File "src/core/whnf.ml", lines 463-466, characters 5-8: # 463 | .....begin match normHead (h, s) with # 464 | | Obj tM -> MObj tM # 465 | | Head h' -> PObj h' # 466 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 470-473, characters 2-64: # 470 | ..match normFt' (ft, LF.id) with # 471 | | Head h -> Head (Proj (h, i)) # 472 | | Obj (Tuple (_, tM)) -> Obj (reduceTuple (tM, i)) # 473 | | Obj _ -> Error.raise_violation "[reduceTupleFt] not a tuple" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 476-479, characters 2-50: # 476 | ..function # 477 | | (Last tM, 1) -> tM # 478 | | (Cons (tM, _), 1) -> tM # 479 | | (Cons (_, rest), k) -> reduceTuple (rest, k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Last tM, 0) # # File "src/core/whnf.ml", lines 507-521, characters 2-17: # 507 | ..function # 508 | | (LFHole (l, _, _), _) -> # 509 | raise (InvalidLFHole l) # 510 | # 511 | | (Root (loc, h, sp, plicity), spine) -> # ... # 518 | Lam (loc, n, tM') # 519 | # 520 | | (Clo sM, tS) -> # 521 | reduce sM tS # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _), SClo _) # # File "src/core/whnf.ml", lines 524-526, characters 2-54: # 524 | ..function # 525 | | (Nil, s) -> s # 526 | | (App (tN, tS), s) -> App (tN, appendSpine (tS, s)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (SClo _, _) # # File "src/core/whnf.ml", lines 537-543, characters 5-8: # 537 | .....begin match mmvar.instantiation.contents with # 538 | | Some (ISub s) -> # 539 | let s0 = cnormSub (LF.comp (normSub s) (normSub s'), mt) in # 540 | LF.comp (Shift n) s0 # 541 | | None -> # 542 | MSVar (n, ((mmvar, mt), normSub s')) # 543 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 562-573, characters 2-37: # 562 | ..match tA with # 563 | | Atom (loc, a, tS) -> # 564 | Atom (loc, a, normSpine (tS, sigma)) # 565 | # 566 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> # ... # 570 | normTyp (tA, LF.comp s sigma) # 571 | # 572 | | Sigma recA -> # 573 | Sigma (normTypRec (recA, sigma)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/whnf.ml", lines 620-629, characters 5-8: # 620 | .....begin match !u with # 621 | | None -> # 622 | (Some (CInst (mmvar, mcomp theta t)), k) # 623 | | Some (ICtx cPsi) -> # 624 | (* | (Some (CInst ((_, { contents = Some (ICtx cPsi) }, _, _, _, _), theta)), k) -> *) # 625 | begin match Context.dctxToHat (cnormDCtx (cPsi, mcomp theta t)) with # 626 | | (None, i) -> (None, k + i) (* cnorm_psihat (None, k + i) t *) # 627 | | (Some cvar', i) -> (Some cvar', k + i) (* cnorm_psihat (Some cvar', k + i) t *) # 628 | end # 629 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 631-641, characters 5-8: # 631 | .....begin match LF.applyMSub offset t with # 632 | | CObj cPsi -> # 633 | begin match Context.dctxToHat cPsi with # 634 | | (None, i) -> (None, k + i) # 635 | | (Some cvar', i) -> (Some cvar', k + i) # ... # 638 | | ClObj _ -> # 639 | Error.raise_violation # 640 | (Format.asprintf "[cnorm_psihat] ClObj impossible; offset %d" offset) # 641 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MUndef # # File "src/core/whnf.ml", lines 656-659, characters 5-8: # 656 | .....begin match LF.applyMSub k t with # 657 | | MV k' -> Head (MVar (Offset k', s')) # 658 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) # 659 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, (PObj _|SObj _)) # # File "src/core/whnf.ml", lines 662-666, characters 5-8: # 662 | .....begin match LF.applyMSub k t with # 663 | | MV k' -> Head (PVar (k', s')) # 664 | | ClObj (_, PObj h) -> normHead (h, s') # 665 | | ClObj (_, MObj tM) -> Obj (norm (tM, s')) # 666 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/whnf.ml", lines 669-672, characters 5-8: # 669 | .....begin match LF.applyMSub sv t with # 670 | | MV sv' -> Head (HClo (k, sv', s')) # 671 | | ClObj (_, SObj r) -> normFt' (LF.bvarSub k r, s') # 672 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, (MObj _|PObj _)) # # File "src/core/whnf.ml", lines 674-677, characters 5-8: # 674 | .....begin match normMMVar mmt with # 675 | | ResMM (mm', mt) -> Head (MMVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) # 676 | | Result (INorm n) -> Obj (cnorm (norm (n, s), t)) # 677 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 679-684, characters 5-8: # 679 | .....begin match normMMVar mmt with # 680 | | ResMM (mm', mt) -> Head (MPVar ((mm', cnormMSub' (mt, t)), cnormSub (s, t))) # 681 | | Result (IHead h) -> cnormFt' (normHead (h, s), t) # 682 | | Result (INorm n) -> # 683 | Obj (cnorm (norm (n, s), t)) # 684 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (ISub _|ICtx _) # # File "src/core/whnf.ml", lines 686-689, characters 5-8: # 686 | .....begin match normMMVar mmt with # 687 | | ResMM (mm', mt) -> Head (HMClo (k, ((mm', cnormMSub' (mt, t)), cnormSub (s, t)))) # 688 | | Result (ISub r) -> cnormFt' (normFt' (LF.bvarSub k r, s), t) # 689 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 691-694, characters 5-8: # 691 | .....begin match normMMVar (mm, MShift 0) with # 692 | | ResMM (mm', _) -> Head (MVar (Inst mm', cnormSub (s, t))) # 693 | | Result (INorm n) -> Obj (norm (n, s)) # 694 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Result (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 698-700, characters 2-38: # 698 | ..function # 699 | | (Head h, t) -> cnormHead' (h, t) # 700 | | (Obj tM, t) -> Obj (cnorm (tM, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undef, _) # # File "src/core/whnf.ml", lines 713-721, characters 5-8: # 713 | .....begin match cnormHead' (head, t) with # 714 | | Head h' -> Root (loc, h', cnormSpine (tS, t), plicity) # 715 | | Obj tM -> # 716 | (* in this ends up evaluating to a Root, we want to keep the # 717 | plicity that we had here *) # 718 | map_plicity # 719 | (fun _ -> plicity) # 720 | (reduce (tM, LF.id) (cnormSpine (tS, t))) # 721 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/whnf.ml", lines 728-729, characters 2-17: # 728 | ..match cnormHead' (h, t) with # 729 | | Head h' -> h' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undef|Obj _) # # File "src/core/whnf.ml", lines 752-758, characters 5-8: # 752 | .....begin match LF.applyMSub offset t with # 753 | | MV offset' -> SVar (offset', n, cnormSub (s', t)) # 754 | | ClObj (_, SObj r) -> # 755 | LF.comp (LF.comp (Shift n) r) (cnormSub (s', t)) # 756 | | ClObj _ -> # 757 | Error.raise_violation "[cnormSub] t @ offset must give an MV or ClObj SObj" # 758 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|CObj _) # # File "src/core/whnf.ml", lines 764-775, characters 5-56: # 764 | .....match mmvar.instantiation.contents with # 765 | | Some (ISub s) -> # 766 | dprintf # 767 | begin fun p -> # 768 | p.fmt "[cnormSub] @[<v>MSVar - MSInst for @[%a@]@]" # ... # 772 | let s0' = LF.comp (Shift n) s0 in # 773 | cnormSub (s0', t) # 774 | | None -> # 775 | MSVar (n, ((mmvar, cnormMSub (mcomp mt t)), s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ICtx _) # # File "src/core/whnf.ml", lines 793-803, characters 2-34: # 793 | ..match tA with # 794 | | Atom (loc, a, tS) -> # 795 | Atom (loc, a, cnormSpine (tS, t)) # 796 | # 797 | | PiTyp ((TypDecl _ as decl, depend, plicity), tB) -> # ... # 800 | | TClo (tA, s) -> normTyp (cnormTyp (tA, t), cnormSub (s, t)) # 801 | # 802 | | Sigma recA -> # 803 | Sigma (cnormTypRec (recA, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/whnf.ml", lines 832-837, characters 5-8: # 832 | .....begin match !u with # 833 | | None -> # 834 | CtxVar (CInst (mmvar, mcomp theta t)) # 835 | | Some (ICtx cPhi) -> # 836 | cnormDCtx (cPhi, mcomp theta t) # 837 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 840-843, characters 5-8: # 840 | .....begin match LF.applyMSub psi t with # 841 | | CObj cPsi' -> normDCtx cPsi' # 842 | | MV k -> CtxVar (CtxOffset k) # 843 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|ClObj (_, _)) # # File "src/core/whnf.ml", lines 886-889, characters 5-8: # 886 | .....begin match mmvar.instantiation.contents with # 887 | | None -> cPsi # 888 | | Some (ICtx cPhi) -> normDCtx (cnormDCtx (cPhi, theta)) # 889 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 960-973, characters 8-11: # 960 | ........begin match h' with # 961 | | BVar i -> # 962 | begin match LF.bvarSub i (LF.comp r sigma) with # 963 | | Obj tM -> whnfRedex ((tM, LF.id), (tS, sigma)) # 964 | | Head (BVar k) -> (Root (loc, BVar k, SClo (tS, sigma), plicity), LF.id) # ... # 970 | let h' = PVar (p, LF.comp (LF.comp s r) sigma) in # 971 | whnf (Root (loc, h', SClo (tS, sigma), plicity), LF.id) # 972 | | MPVar ((q, t'), r') -> whnf (Root (loc, MPVar ((q, t'), LF.comp r' r), SClo (tS, sigma), plicity), LF.id) # 973 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| # HClo (_, _, _)|HMClo (_, _)) # # File "src/core/whnf.ml", lines 956-979, characters 5-8: # 956 | .....begin match u with # 957 | (* MPVar instantiation must be a head *) # 958 | | Some (IHead h) -> # 959 | let h' = cnormHead (h, t) in # 960 | begin match h' with # ... # 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in # 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in # 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) # 979 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 954-979, characters 5-8: # 954 | .....let ClTyp (PTyp tA, cPsi) = mmvar.typ in # 955 | let u = mmvar.instantiation.contents in # 956 | begin match u with # 957 | (* MPVar instantiation must be a head *) # 958 | | Some (IHead h) -> # ... # 976 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in # 977 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in # 978 | (Root (loc, MPVar ((p', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) # 979 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 995-1011, characters 8-11: # 995 | ........begin match whnfTyp (tA, LF.id) with # 996 | | (Atom (loc', a, tS'), _ (* id *)) -> # 997 | (* meta-variable is of atomic type; tS = Nil *) # 998 | let u' = { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in # 999 | (Root (loc, MMVar ((u', t), LF.comp r sigma), SClo (tS, sigma), plicity), LF.id) # ... # 1008 | (* let _ = lowerMMVar cD u in # 1009 | whnf (tM, sigma) *) # 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" # 1011 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Sigma _|TClo _), _) # # File "src/core/whnf.ml", lines 985-1012, characters 5-8: # 985 | .....begin match u with # 986 | (* MMVar instantiation must be normal *) # 987 | | Some (INorm tM) -> # 988 | (* constraints associated with u must be in solved form *) # 989 | let tM' = cnorm (tM, t) in # ... # 1009 | whnf (tM, sigma) *) # 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" # 1011 | end # 1012 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 983-1012, characters 5-8: # 983 | .....let ClTyp (MTyp tA, cPsi) = mmvar.typ in # 984 | let u = mmvar.instantiation.contents in # 985 | begin match u with # 986 | (* MMVar instantiation must be normal *) # 987 | | Some (INorm tM) -> # ... # 1009 | whnf (tM, sigma) *) # 1010 | Error.raise_violation "Meta^2-variable needs to be of atomic type" # 1011 | end # 1012 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 1041-1053, characters 8-11: # 1041 | ........begin match whnfTyp (tA, LF.id) with # 1042 | | (Atom (loc', a, tS'), _ (* id *)) -> # 1043 | (* meta-variable is of atomic type; tS = Nil *) # 1044 | let u' = Inst { mmvar with typ = ClTyp (MTyp (Atom (loc', a, tS')), cPsi) } in # 1045 | (Root (loc, MVar (u', LF.comp r' sigma), SClo (tS, sigma), plicity), LF.id) # ... # 1050 | *) # 1051 | ignore (lowerMVar cvar); # 1052 | whnf (tM, sigma) # 1053 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Sigma _|TClo _), _) # # File "src/core/whnf.ml", lines 1036-1053, characters 8-11: # 1036 | ........let ClTyp (MTyp tA, cPsi) = mmvar.typ in # 1037 | (* note: we could split this case based on tA; # 1038 | * this would avoid possibly building closures with id # 1039 | *) # 1040 | let r' = normSub r in # ... # 1050 | *) # 1051 | ignore (lowerMVar cvar); # 1052 | whnf (tM, sigma) # 1053 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 1023-1054, characters 5-8: # 1023 | .....begin match u with # 1024 | | Some (INorm tM) -> # 1025 | (* constraints associated with u must be in solved form *) # 1026 | let r' = normSub r in # 1027 | let tM' = # ... # 1051 | ignore (lowerMVar cvar); # 1052 | whnf (tM, sigma) # 1053 | end # 1054 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (IHead _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 1073-1082, characters 5-8: # 1073 | .....begin match LF.bvarSub i sigma with # 1074 | | Head (BVar j) -> # 1075 | ( Root (loc, Proj (BVar j, k), SClo (tS, sigma), plicity) # 1076 | , LF.id # 1077 | ) # 1078 | | Head (PVar (q, s)) -> # 1079 | ( Root (loc, Proj (PVar (q, s), k), SClo (tS, sigma), plicity) # 1080 | , LF.id # 1081 | ) # 1082 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/whnf.ml", lines 1098-1109, characters 11-14: # 1098 | ...........begin match LF.bvarSub i (LF.comp r sigma) with # 1099 | | Head (BVar x) -> # 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) # 1101 | , LF.id # 1102 | ) # ... # 1106 | ) # 1107 | | Undef -> # 1108 | Error.raise_violation ("[whnf] Undef looked up at " ^ string_of_int i) # 1109 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Obj _ # # File "src/core/whnf.ml", lines 1096-1118, characters 8-11: # 1096 | ........begin match cnormHead (h, t) with # 1097 | | BVar i -> # 1098 | begin match LF.bvarSub i (LF.comp r sigma) with # 1099 | | Head (BVar x) -> # 1100 | ( Root (loc, Proj (BVar x, k), SClo (tS, sigma), plicity) # ... # 1115 | | MPVar ((q, t'), r') -> # 1116 | let h' = Proj (MPVar ((q, t'), LF.comp (LF.comp r' r) sigma), k) in # 1117 | (Root (loc, h', SClo (tS, sigma), plicity), LF.id) # 1118 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _|FPVar _| # HClo (_, _, _)|HMClo (_, _)) # # File "src/core/whnf.ml", lines 1120-1127, characters 8-9: # 1120 | ........let ClTyp (PTyp tA, cPsi) = mmvar.typ in # 1121 | (* constraints associated with q must be in solved form *) # 1122 | let (cPsi', tA') = (normDCtx cPsi, normTyp (tA, LF.id)) in # 1123 | let p' = { mmvar with typ = ClTyp (PTyp tA', cPsi') } in # 1124 | let h' = Proj (MPVar ((p', t), LF.comp r sigma), k) in # 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) # 1126 | , LF.id # 1127 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|STyp (_, _)), _) # # File "src/core/whnf.ml", lines 1093-1128, characters 5-8: # 1093 | .....begin match mmvar.instantiation.contents with # 1094 | | Some (IHead h) -> # 1095 | (* constraints associated with q must be in solved form *) # 1096 | begin match cnormHead (h, t) with # 1097 | | BVar i -> # ... # 1125 | ( Root (loc, h', SClo (tS, sigma), plicity) # 1126 | , LF.id # 1127 | ) # 1128 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|ISub _|ICtx _) # # File "src/core/whnf.ml", lines 1143-1157, characters 2-39: # 1143 | ..function # 1144 | | ((LFHole (l, id, name), s1), _) -> raise (InvalidLFHole l) # 1145 | | ((Root _ as root, s1), (Nil, _)) -> whnf (root, s1) # 1146 | # 1147 | | ((Lam (_, _, tM), s1), (App (tN, tS), s2)) -> # ... # 1154 | whnfRedex (sM, (tS, LF.comp s2' s2)) # 1155 | # 1156 | | ((Clo (tM, s), s1), sS) -> # 1157 | whnfRedex ((tM, LF.comp s s1), sS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Root (_, _, _, _), _), (App (_, _), _)) # # File "src/core/whnf.ml", lines 1180-1191, characters 2-15: # 1180 | ..function # 1181 | | [] -> true # 1182 | | ({ contents = Queued _ } :: cnstrs) -> # 1183 | constraints_solved cnstrs # 1184 | | ({ contents = Eqn (_, _, _, INorm tM, INorm tN) } :: cnstrs) -> # ... # 1188 | | ({ contents = Eqn (_, _, _, IHead h1, IHead h2) } :: cnstrs) -> # 1189 | if convHead (h1, LF.id) (h2, LF.id) # 1190 | then constraints_solved cnstrs # 1191 | else false # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # {contents=Eqn (_, _, _, INorm tM, (IHead _|ISub _|ICtx _))}::_ # # File "src/core/whnf.ml", lines 1283-1288, characters 2-71: # 1283 | ..match (spine1, spine2) with # 1284 | | ((Nil, _), (Nil, _)) -> true # 1285 | | ((App (tM1, spine1), s1), (App (tM2, spine2), s2)) -> # 1286 | conv (tM1, s1) (tM2, s2) && convSpine (spine1, s1) (spine2, s2) # 1287 | | (spine1, (SClo (tS, s), s')) -> convSpine spine1 (tS, LF.comp s s') # 1288 | | ((SClo (tS, s), s'), spine2) -> convSpine (tS, LF.comp s s') spine2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Nil, _), (App (_, _), _)) # # File "src/core/whnf.ml", lines 1457-1465, characters 2-32: # 1457 | ..match (cPsi, cPsi') with # 1458 | | (_, Empty) -> true # 1459 | | Dec (cPsi1, TypDecl (_, tA)), Dec (cPsi2, TypDecl (_, tB)) -> # 1460 | if convTyp (tA, LF.id) (tB, LF.id) # 1461 | then convSubsetCtx cPsi1 cPsi2 # 1462 | else # 1463 | (* keep tBs around and check that tA is a subordinate of tB, # 1464 | i.e. anything in tA cannot influence tB *) # 1465 | convSubsetCtx cPsi1 cPsi' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dec (_, TypDecl (_, _)), Dec (cPsi2, TypDeclOpt _)) # # File "src/core/whnf.ml", lines 1591-1593, characters 4-76: # 1591 | ....match mO with # 1592 | | CObj cPsi -> CObj (normDCtx cPsi) # 1593 | | ClObj (phat, n) -> ClObj (cnorm_psihat phat m_id, normMObj (n, LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|MV _) # # File "src/core/whnf.ml", lines 1604-1624, characters 2-49: # 1604 | ..function # 1605 | | Comp.TypBase (loc, c, mS) -> # 1606 | Comp.TypBase (loc, c, normMetaSpine mS) # 1607 | | Comp.TypCobase (loc, c, mS) -> # 1608 | Comp.TypCobase (loc, c, normMetaSpine mS) # ... # 1621 | Comp.TypPiBox # 1622 | (loc, (Decl { d with typ = typ' }), tau') # 1623 | # 1624 | | Comp.TypInd tau -> Comp.TypInd (normCTyp tau) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypPiBox (loc, DeclOpt _, _) # # File "src/core/whnf.ml", lines 1640-1643, characters 2-30: # 1640 | ..match cdecl with # 1641 | | Decl d -> # 1642 | let typ' = cnormMTyp (d.typ, t) in # 1643 | Decl { d with typ = typ' } # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/whnf.ml", lines 1646-1670, characters 2-60: # 1646 | ..function # 1647 | | (Comp.TypBase (loc, a, mS), t) -> # 1648 | let mS' = cnormMetaSpine (mS, t) in # 1649 | Comp.TypBase (loc, a, mS') # 1650 | | (Comp.TypCobase (loc, a, mS), t) -> # ... # 1667 | | (Comp.TypClo (tT, t'), t) -> # 1668 | cnormCTyp (tT, mcomp t' t) # 1669 | # 1670 | | (Comp.TypInd tau, t) -> Comp.TypInd (cnormCTyp (tau, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _), _) # # File "src/core/whnf.ml", lines 1673-1675, characters 2-47: # 1673 | ..match cdecl with # 1674 | | Comp.CTypDecl(n, typ, wf_t) -> # 1675 | Comp.CTypDecl(n, cnormCTyp (typ, t), wf_t) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", lines 1691-1707, characters 2-70: # 1691 | ..function # 1692 | | (Comp.TypBase (loc, c, mS), t) -> # 1693 | let mS' = normMetaSpine (cnormMetaSpine (mS, t)) in # 1694 | (Comp.TypBase (loc, c, mS'), m_id) # 1695 | | (Comp.TypCobase (loc, c, mS), t) -> # ... # 1704 | # 1705 | | (Comp.TypClo (tT, t'), t) -> cwhnfCTyp (tT, mcomp t' t) # 1706 | # 1707 | | (Comp.TypInd tau, t) -> (Comp.TypInd (Comp.TypClo (tau, t)), m_id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _), _) # # File "src/core/whnf.ml", lines 1902-1905, characters 2-74: # 1902 | ..match cG with # 1903 | | Empty -> Empty # 1904 | | Dec (cG, Comp.CTypDecl (x, tau, flag)) -> # 1905 | Dec (cwhnfCtx (cG, t), Comp.CTypDecl (x, Comp.TypClo (tau, t), flag)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/whnf.ml", lines 1928-1930, characters 2-62: # 1928 | ..function # 1929 | | Comp.CTypDecl (x, tau, flag) -> # 1930 | Comp.CTypDecl (x, normCTyp (cnormCTyp (tau, m_id)), flag) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", lines 1957-1962, characters 2-41: # 1957 | ..match cD with # 1958 | | Empty -> Empty # 1959 | | Dec (cD, Decl d) -> # 1960 | let typ' = normMTyp d.typ in # 1961 | let cD' = normMCtx cD in # 1962 | Dec (cD', Decl { d with typ = typ' }) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD, DeclOpt _) # # File "src/core/whnf.ml", lines 1990-1993, characters 2-60: # 1990 | ..match (tM1, tM2) with # 1991 | | (INorm n1, INorm n2) -> conv (n1, LF.id) (n2, LF.id) # 1992 | | (ISub s1, ISub s2) -> convSub s1 s2 # 1993 | | (IHead h1, IHead h2) -> convHead (h1, LF.id) (h2, LF.id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (INorm n1, (IHead _|ISub _|ICtx _)) # # File "src/core/whnf.ml", lines 1998-2004, characters 2-25: # 1998 | ..match (mS, mS') with # 1999 | | (Comp.MetaNil, Comp.MetaNil) -> true # 2000 | | (Comp.MetaApp (mO, mT, mS, p1), Comp.MetaApp (mO', mT', mS', p2)) -> # 2001 | convMetaObj mO mO' # 2002 | && convMetaTyp mT mT' # 2003 | && convMetaSpine mS mS' # 2004 | && Plicity.(p1 = p2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaNil, MetaApp (_, _, _, _)) # # File "src/core/whnf.ml", lines 2071-2075, characters 2-42: # 2071 | ..match (d1, d2) with # 2072 | | (CTypDeclOpt x1, CTypDeclOpt x2) -> Name.(x1 = x2) # 2073 | | (CTypDecl (x1, tau1, w1), CTypDecl (x2, tau2, w2)) -> # 2074 | Name.(x1 = x2) && Stdlib.(=) w1 w2 # 2075 | && convCTyp (tau1, m_id) (tau2, m_id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CTypDeclOpt x1, CTypDecl (_, _, _)) # # File "src/core/whnf.ml", lines 2095-2105, characters 2-8: # 2095 | ..match sA with # 2096 | | (Atom (loc, _, _) as tP, s) -> # 2097 | let u = newMVar (Some n) (cPsi, tclo tP s) plicity inductivity in # 2098 | Root (loc, MVar (u, s'), Nil, plicity) # 2099 | # ... # 2102 | ( Name.location x # 2103 | , x # 2104 | , etaExpandMV (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity # 2105 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/whnf.ml", lines 2120-2130, characters 2-8: # 2120 | ..match sA with # 2121 | | (Atom _ as tP, s) -> # 2122 | let u = newMMVar (Some n) (cD, cPsi, tclo tP s) plicity inductivity in # 2123 | Root (loc, MMVar ((u, m_id), s'), Nil, plicity) # 2124 | # ... # 2127 | ( loc # 2128 | , x # 2129 | , etaExpandMMV loc cD (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) n (LF.dot1 s') plicity inductivity # 2130 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/whnf.ml", lines 2135-2141, characters 2-42: # 2135 | ..match tM with # 2136 | | Lam (_, _, tM) -> closed (tM, LF.dot1 s) # 2137 | | Root (_, h, tS, _) -> # 2138 | closedHead h # 2139 | && closedSpine (tS, s) # 2140 | | LFHole _ -> false # 2141 | | Tuple (_, tup) -> closedTuple (tup, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Clo _ # # File "src/core/whnf.ml", lines 2166-2174, characters 2-28: # 2166 | ..function # 2167 | | EmptySub -> true # 2168 | | Undefs -> true # 2169 | | SVar (_, _, sigma) -> closedSub sigma # 2170 | | Shift _ -> true # 2171 | | Dot (ft, s) -> closedFront ft && closedSub s # 2172 | | MSVar (_, ((v, t), s)) -> # 2173 | (* the case for MMVar doesn't also check the substitution -je *) # 2174 | is_mmvar_instantiated v..................... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # FSVar (_, _) # # File "src/core/whnf.ml", lines 2185-2190, characters 2-40: # 2185 | ..match tA with # 2186 | | Atom (_, _, tS) -> closedSpine (tS, s) # 2187 | | PiTyp ((t_dec, _, _), tA) -> # 2188 | closedDecl (t_dec, s) # 2189 | && closedTyp (tA, LF.dot1 s) # 2190 | | Sigma recA -> closedTypRec (recA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/whnf.ml", lines 2208-2211, characters 5-8: # 2208 | .....begin match mmvar.instantiation.contents with # 2209 | | None -> false # 2210 | | Some (ICtx cPsi) -> closedDCtx (cnormDCtx (cPsi, theta)) # 2211 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/whnf.ml", lines 2241-2244, characters 2-56: # 2241 | ..function # 2242 | | CObj cPsi -> closedDCtx cPsi # 2243 | | ClObj (phat, t) -> # 2244 | closedDCtx (Context.hatToDCtx phat) && closedMObj t # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|MV _) # # File "src/core/whnf.ml", lines 2255-2264, characters 2-37: # 2255 | ..function # 2256 | | Comp.TypBase (_, _, mS) -> closedMetaSpine mS # 2257 | | Comp.TypCobase (_, _, mS) -> closedMetaSpine mS # 2258 | | Comp.TypBox (_, cT) -> closedMetaTyp cT # 2259 | | Comp.TypArr (_, cT1, cT2) -> closedCTyp cT1 && closedCTyp cT2 # 2260 | | Comp.TypCross (_, cTs) -> List2.for_all (fun cT -> closedCTyp cT) cTs # 2261 | | Comp.TypPiBox (_, ctyp_decl, cT) -> # 2262 | closedCTyp cT && closedDecl ctyp_decl # 2263 | | Comp.TypClo (cT, t) -> closedCTyp (cnormCTyp (cT, t)) (* to be improved Sun Dec 13 11:45:15 2009 -bp *) # 2264 | | Comp.TypInd tau -> closedCTyp tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDef (_, _, _) # # File "src/core/whnf.ml", line 2406, characters 37-65: # 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", line 2406, characters 8-36: # 2406 | let f (Comp.CTypDecl (_, tau1, _)) (Comp.CTypDecl (_, tau2, _)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/whnf.ml", line 2412, characters 32-55: # 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/whnf.ml", line 2412, characters 8-31: # 2412 | let f (Decl { typ = cU1; _ }) (Decl { typ = cU2; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/whnf.ml", lines 2418-2420, characters 2-93: # 2418 | ..function # 2419 | | (Atom _, _) as sA -> (cPsi, whnfTyp sA) # 2420 | | (PiTyp ((decl, _, _), tB), s) -> lowerTyp (DDec (cPsi, LF.decSub decl s)) (tB, LF.dot1 s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Sigma _|TClo _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Subord.cmx -c -impl src/core/subord.ml) # File "src/core/subord.ml", lines 98-101, characters 7-43: # 98 | .......function # 99 | | Atom _ -> [tA] # 100 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> # 101 | extract_neg tA1 @ extract_pos tA2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/subord.ml", lines 103-106, characters 7-43: # 103 | .......function # 104 | | Atom _ -> [] # 105 | | PiTyp ((TypDecl (_, tA1), _, _), tA2) -> # 106 | extract_pos tA1 @ extract_neg tA2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/subord.ml", lines 85-112, characters 2-47: # 85 | ..match tA with # 86 | | Atom (_, a, _) -> # 87 | Store.Cid.Typ.freeze a; # 88 | if List.exists # 89 | begin fun type_in_basis -> # ... # 109 | If we keep this, then we might not strengthen enough... -bp*) # 110 | List.fold_left (fun l tA -> relevant tA basis @ l) [] (extract_neg tA1) # 111 | @ relevant tA2 basis # 112 | | Sigma typRec -> relevantTypRec typRec basis # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/subord.ml", lines 159-161, characters 9-71: # 159 | .........match psi with # 160 | | CtxOffset _ -> Context.lookupCtxVarSchema cD psi # 161 | | CInst ({ typ = CTyp (Some cid_schema); _ }, _) -> cid_schema # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CInst ({typ=CTyp None; _ }, _) # # File "src/core/subord.ml", lines 155-187, characters 4-10: # 155 | ....match cPsi with # 156 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) # 157 | | CtxVar psi -> # 158 | let schema = # 159 | match psi with # ... # 184 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) # 185 | let thin_s_inv = Substitution.LF.invert thin_s in # 186 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) # 187 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/subord.ml", line 189, characters 8-45: # 189 | inner (match tP with Atom (_, a, _) -> [a]) cPsi # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) # # File "src/core/subord.ml", lines 215-216, characters 16-21: # 215 | ................let (_, Decl { typ = CTyp (Some s_cid); _ }) = Store.FCVar.get psi in # 216 | s_cid # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=CTyp None; _ }) # # File "src/core/subord.ml", lines 205-238, characters 4-10: # 205 | ....match Whnf.cnormDCtx (cPsi, MShift 0) with # 206 | | Null -> (Shift 0, Null) (* . |- shift(noCtx, 0) : . *) # 207 | | CtxVar psi -> # 208 | begin # 209 | try # ... # 235 | (* cPsi,x:tA |- dot1 thin_s <= cPsi', x:tA' where tA = [thin_s]([thin_s_inv]tA) *) # 236 | let thin_s_inv = Substitution.LF.invert thin_s in # 237 | (Substitution.LF.dot1 thin_s, DDec (cPsi', TypDecl (name, TClo (tA, thin_s_inv)))) # 238 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/subord.ml", lines 249-251, characters 11-24: # 249 | ...........let (_, Decl { typ = CTyp _; _ }) = Store.FCVar.get psi in # 250 | p.fmt "[thin'] CtxName psi = %a FOUND" # 251 | Name.pp psi # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=ClTyp (_, _); _ }) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Ctxsub.cmx -c -impl src/core/ctxsub.ml) # File "src/core/ctxsub.ml", lines 46-65, characters 2-36: # 46 | ..match sA' with # 47 | | (PiTyp ((decl, _, _), tA'), s') -> # 48 | let (tM , sAmv) = # 49 | lowerMVar # 50 | (DDec (cPsi, Substitution.LF.decSub decl s')) # ... # 62 | , Nil # 63 | , Plicity.explicit # 64 | ) , # 65 | ClTyp(MTyp (TClo sA') , cPsi)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _, _) # # File "src/core/ctxsub.ml", lines 88-158, characters 2-89: # 88 | ..function # 89 | | Null -> # 90 | (* Substitution.LF.id --changed 2010-07-26*) # 91 | (cD, ctxShift psi, 0) # 92 | # ... # 155 | # 156 | | DDec (_, TypDecl _) -> # 157 | (* For the moment, assume tA atomic. *) # 158 | Error.raise_not_implemented "[ctxToSub_mclosed] non-atomic cPsi entry not supported" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (_, TypDeclOpt _) # # File "src/core/ctxsub.ml", lines 174-216, characters 2-11: # 174 | ..function # 175 | | Null -> # 176 | (* Substitution.LF.id --changed 2010-07-26*) # 177 | ctxShift cPhi # 178 | # ... # 213 | (* dprint (fun () -> "shifted = " ^ subToString shifted);*) # 214 | let result = Dot (front, s) in # 215 | dprintf (fun p -> p.fmt "result = %a@\n" pp_sub result); # 216 | result # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi', TypDeclOpt _) # # File "src/core/ctxsub.ml", lines 250-255, characters 2-59: # 250 | ..function # 251 | | Empty -> MShift (Context.length cD0) # 252 | | Dec (cD', Decl { name = n; typ = mtyp; plicity; inductivity }) -> # 253 | let t = mctxToMMSub cD0 cD' in # 254 | let mtyp' = Whnf.cnormMTyp (mtyp, t) in # 255 | MDot (mdeclToMMVar cD0 n mtyp' plicity inductivity, t) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt _) # # File "src/core/ctxsub.ml", lines 261-263, characters 2-35: # 261 | ..function # 262 | | t when n <= 0 -> t # 263 | | MDot (_, t') -> drop (n - 1) t' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MShift _ # (However, some guarded clause may match this value.) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__ConvSigma.cmx -c -impl src/core/convSigma.ml) # File "src/core/convSigma.ml", lines 20-22, characters 2-54: # 20 | ..match (conv_list, k) with # 21 | | (d :: conv_list', 1) -> d # 22 | | (d :: conv_list', _) -> d + map conv_list' (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ([], _) # # File "src/core/convSigma.ml", lines 44-52, characters 2-21: # 44 | ..match tM with # 45 | | LF.Lam (loc, x, tN) -> # 46 | let tN' = strans_norm cD (LF.DDec (cPsi, LF.TypDeclOpt x)) (tN, S.LF.dot1 s) (1 :: conv_list) in # 47 | LF.Lam (loc, x, tN') # 48 | | LF.Root (loc, h, tS, plicity) -> # 49 | let h' = strans_head loc cD cPsi h conv_list in # 50 | let tS' = strans_spine cD cPsi (tS, s) conv_list in # 51 | LF.Root (loc, h', tS', plicity) # 52 | | LF.LFHole _ -> tM # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _|Tuple (_, _)) # # File "src/core/convSigma.ml", lines 55-101, characters 2-8: # 55 | ..match h with # 56 | | LF.BVar x -> LF.BVar (map conv_list x) # 57 | # 58 | | LF.MVar (LF.Offset u, sigma) -> # 59 | LF.MVar (LF.Offset u, strans_sub cD cPsi sigma conv_list) # ... # 98 | LF.BVar x' # 99 | with # 100 | | _ -> LF.Proj (LF.BVar x, j) # 101 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Proj # ((Const _|MMVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # HClo (_, _, _)|HMClo (_, _)), # _) # # File "src/core/convSigma.ml", lines 112-118, characters 2-26: # 112 | ..match mf with # 113 | | LF.ClObj (phat, LF.MObj tM) -> # 114 | LF.ClObj (phat, LF.MObj (strans_norm cD cPsi (tM, S.LF.id) conv_list )) # 115 | | LF.ClObj (phat, LF.PObj h) -> # 116 | LF.ClObj (phat, LF.PObj (strans_head Location.ghost cD cPsi h conv_list)) # 117 | | LF.MV u -> LF.MV u # 118 | | LF.MUndef -> LF.MUndef # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/convSigma.ml", lines 121-123, characters 2-55: # 121 | ..function # 122 | | (0, xs) -> n # 123 | | (k, x :: xs) -> shift_conv_list (n + x) (k - 1, xs) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, []) # # File "src/core/convSigma.ml", lines 163-170, characters 2-59: # 163 | ..match tA with # 164 | | LF.Atom (loc, a, tS ) -> # 165 | LF.Atom (loc, a, strans_spine cD cPsi (tS, s) conv_list ) # 166 | # 167 | | LF.PiTyp ((LF.TypDecl (x, tA), depend, plicity), tB) -> # 168 | let tA' = strans_typ cD cPsi (tA, s) conv_list in # 169 | let tB' = strans_typ cD cPsi (tB, S.LF.dot1 s) (1 :: conv_list) in # 170 | LF.PiTyp ((LF.TypDecl (x, tA'), depend, plicity), tB') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/convSigma.ml", lines 384-432, characters 2-24: # 384 | ..match Whnf.whnfTyp sA with # 385 | | LF.Sigma tRec as tA, s -> # 386 | (* FIXME: this doesn't do any strengthening !! -je *) # 387 | let tH = # 388 | mk_head ((new_mxvar n (cD, cPsi, LF.tclo tA s) plicity Inductivity.not_inductive, Whnf.m_id), s) # ... # 429 | let tN = # 430 | etaExpandStrGeneric new_mxvar mk_head loc cD cPsi' (tB, S.LF.dot1 s) plicity n (x :: names) # 431 | in # 432 | LF.Lam (loc, x, tN) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Prettyint.cmx -c -impl src/core/prettyint.ml) # File "src/core/prettyint.ml", lines 237-294, characters 4-39: # 237 | ....function # 238 | | LF.Atom (_, a, LF.Nil) -> # 239 | fprintf ppf "%s" # 240 | (R.render_cid_typ a) # 241 | # ... # 291 | | LF.TClo (typ, s) -> # 292 | fprintf ppf "TClo(%a,@ %a)" # 293 | (fmt_ppr_lf_typ cD cPsi lvl) typ # 294 | (fmt_ppr_lf_sub cD cPsi lvl) s # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/prettyint.ml", lines 434-545, characters 6-51: # 434 | ......function # 435 | | LF.HClo (h, s, sigma) -> # 436 | fprintf ppf "%s[%a[%a]]" # 437 | (R.render_bvar cPsi h) # 438 | (fmt_ppr_lf_offset cD) s # ... # 542 | (r_paren_if (paren s)) # 543 | # 544 | | LF.Proj (head, k) -> # 545 | fmt_head_with ("." ^ string_of_int k) head # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # AnnH (_, _) # # File "src/core/prettyint.ml", lines 769-771, characters 7-52: # 769 | .......match LF.(v.typ) with # 770 | | LF.ClTyp (_, cPsi) -> # 771 | fmt_ppr_lf_iterm LF.(v.cD) cPsi lvl ppf it # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/prettyint.ml", lines 785-794, characters 7-10: # 785 | .......begin match !g with # 786 | | None -> # 787 | fprintf ppf "?%a[%a]" # 788 | Name.pp LF.(v.name) # 789 | (fmt_ppr_lf_msub cD 0) theta # 790 | # 791 | | Some (LF.ICtx cPsi) -> # 792 | fprintf ppf "%a" # 793 | (fmt_ppr_lf_dctx LF.(v.cD) 0) (Whnf.cnormDCtx (cPsi, theta)) # 794 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/prettyint.ml", lines 878-890, characters 4-38: # 878 | ....function # 879 | | LF.Null -> () # 880 | # 881 | | LF.DDec (LF.Null, LF.TypDecl (x, tA)) -> # 882 | fprintf ppf "%a : %a" (* formerly "., %s : %a" -jd 2010-06-03 *) # ... # 887 | fprintf ppf "%a, %a : %a" # 888 | (ppr_typ_decl_dctx cD) cPsi # 889 | Name.pp x # 890 | (fmt_ppr_lf_typ cD cPsi 0) tA # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/prettyint.ml", lines 974-1006, characters 4-26: # 974 | ....function # 975 | | LF.Typ -> # 976 | fprintf ppf "type" # 977 | # 978 | | LF.PiKind ((LF.TypDecl (x, a), (Depend.Yes | Depend.Maybe), Plicity.Explicit), k) -> # ... # 1003 | (l_paren_if cond) # 1004 | (fmt_ppr_lf_typ LF.Empty cPsi 1) a # 1005 | (fmt_ppr_lf_kind (LF.DDec(cPsi, LF.TypDeclOpt x)) 0) k # 1006 | (r_paren_if cond) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # # File "src/core/prettyint.ml", lines 1097-1109, characters 4-40: # 1097 | ....function # 1098 | | LF.Queued id -> # 1099 | fprintf ppf "@[QUEUED %d@]" id # 1100 | | LF.(Eqn (id, cD, cPsi, INorm tM1, INorm tM2)) -> # 1101 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" # ... # 1106 | fprintf ppf "@[%d.@ @[<v>@[%a@]@ =@ @[%a@]@]@]" # 1107 | id # 1108 | (fmt_ppr_lf_head cD cPsi l0) h1 # 1109 | (fmt_ppr_lf_head cD cPsi l0) h2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) # # File "src/core/prettyint.ml", lines 1147-1228, characters 4-39: # 1147 | ....function # 1148 | | Comp.TypBase (_, c, mS)-> # 1149 | let cond = lvl > 10 in # 1150 | fprintf ppf "%s@[<2>%s@[%a@]@]%s" # 1151 | (l_paren_if cond) # ... # 1225 | fprintf ppf "@[%a@]*" # 1226 | (fmt_ppr_cmp_typ cD 10) tau # 1227 | else # 1228 | fmt_ppr_cmp_typ cD lvl ppf tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDef (_, _, _) # # File "src/core/prettyint.ml", lines 1236-1241, characters 4-48: # 1236 | ....function # 1237 | | Comp.PatNil -> fprintf ppf "" # 1238 | | Comp.PatApp (_, pat, pat_spine) -> # 1239 | fprintf ppf "@[%a@]@ @[%a@]" # 1240 | (fmt_ppr_cmp_pattern cD cG (lvl + 1)) pat # 1241 | (fmt_ppr_pat_spine cD cG lvl) pat_spine # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # # File "src/core/prettyint.ml", lines 1245-1248, characters 6-65: # 1245 | ......match (ms, n) with # 1246 | | (_, 0) -> ms # 1247 | | (Comp.PatNil, _) -> ms # 1248 | | (Comp.PatApp (_, _, rest), n) -> dropSpineLeft rest (n-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatObs (_, _, _, _), 1) # # File "src/core/prettyint.ml", lines 1507-1550, characters 4-26: # 1507 | ....function # 1508 | | Comp.FunValue _ -> fprintf ppf " fn " # 1509 | | Comp.ThmValue _ -> fprintf ppf " rec " # 1510 | | Comp.MLamValue _ -> fprintf ppf " mlam " # 1511 | | Comp.CtxValue _ -> fprintf ppf " mlam " # ... # 1547 | fprintf ppf "%s%s%a%s" # 1548 | (l_paren_if cond) # 1549 | (R.render_cid_comp_const c) print_spine pat_spine # 1550 | (r_paren_if cond) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # FnValue (_, _, _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Apxnorm.cmx -c -impl src/core/apxnorm.ml) # File "src/core/apxnorm.ml", lines 44-49, characters 2-33: # 44 | ..function # 45 | | Apx.LF.Lam (loc, x, m') -> Apx.LF.Lam(loc, x, shiftApxTerm (k + 1) m') # 46 | | Apx.LF.Root (loc, h , spine) -> # 47 | let h' = shiftApxHead k h in # 48 | let spine' = shiftApxSpine k spine in # 49 | Apx.LF.Root(loc, h', spine') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (LFHole (_, _)|Tuple (_, _)|Ann (_, _, _)) # # File "src/core/apxnorm.ml", lines 70-80, characters 2-35: # 70 | ..function # 71 | | Apx.LF.EmptySub -> Apx.LF.EmptySub # 72 | | Apx.LF.Id -> Apx.LF.Id # 73 | | Apx.LF.Dot (Apx.LF.Head h, s) -> # 74 | let h' = shiftApxHead k h in # ... # 77 | | Apx.LF.Dot (Apx.LF.Obj m, s) -> # 78 | let m' = shiftApxTerm k m in # 79 | let s' = shiftApxSub k s in # 80 | Apx.LF.Dot (Apx.LF.Obj m', s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (SVar (_, _)|FSVar (_, _)) # # File "src/core/apxnorm.ml", lines 126-128, characters 4-49: # 126 | ....match (l_delta, t) with # 127 | | (0, t) -> t # 128 | | (k, Int.LF.MDot(_ , t')) -> drop t' (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, MShift _) # # File "src/core/apxnorm.ml", lines 134-151, characters 6-36: # 134 | ......match Substitution.LF.applyMSub offset t with # 135 | | Int.LF.MV u -> Apx.LF.Offset u # 136 | | Int.LF.ClObj (_, clobj) -> # 137 | let (u, mtyp) = Whnf.mctxLookup cD offset' in # 138 | dprintf # ... # 148 | end; # 149 | let t' = drop t l_delta in # 150 | let mtyp' = Whnf.cnormMTyp (mtyp, t')in # 151 | Apx.LF.MInst (clobj, mtyp') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|CObj _) # # File "src/core/apxnorm.ml", lines 267-276, characters 7-10: # 267 | .......begin match Substitution.LF.applyMSub offset t with # 268 | | Int.LF.CObj (Int.LF.CtxVar (Int.LF.CtxOffset psi0)) -> # 269 | Apx.LF.CtxVar (Apx.LF.CtxOffset psi0) # 270 | | Int.LF.CObj Int.LF.Null -> # 271 | Apx.LF.Null # 272 | | Int.LF.CObj (Int.LF.DDec _) -> # 273 | raise (Error (loc, CtxOverGeneral)) # 274 | (* Apx.LF.CtxVar (Apx.LF.CInst cPsi) *) # 275 | | Int.LF.MV offset' -> Apx.LF.CtxVar (Apx.LF.CtxOffset offset') # 276 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CObj (CtxVar (CtxName _|CInst _)) # # File "src/core/apxnorm.ml", lines 288-355, characters 2-27: # 288 | ..match e with # 289 | | Apx.Comp.Fn (loc, f, e) -> # 290 | Apx.Comp.Fn (loc, f, cnormApxExp cD delta e cDt) # 291 | | Apx.Comp.Fun (loc, fbr) -> # 292 | Apx.Comp.Fun (loc, cnormApxFBranches cD delta fbr cDt) # ... # 352 | # 353 | | Apx.Comp.Var _ # 354 | | Apx.Comp.DataConst _ # 355 | | Apx.Comp.Const _ -> e # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ann (_, _, _) # # File "src/core/apxnorm.ml", lines 388-392, characters 4-63: # 388 | ....function # 389 | | Apx.LF.Empty -> cD'' # 390 | | Apx.LF.Dec (delta2', Apx.LF.Decl (x, _, plicity)) -> # 391 | let cD1'' = append_mctx cD'' delta2' in # 392 | Int.LF.Dec (cD1'', Int.LF.DeclOpt { name = x; plicity }) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (delta2', DeclOpt _) # # File "src/core/apxnorm.ml", lines 421-431, characters 2-27: # 421 | ..function # 422 | | Apx.LF.Lam (_, _, m') -> collectApxTerm fMVs m' # 423 | # 424 | | Apx.LF.Root (_, h, s) -> # 425 | let fMVs' = collectApxHead fMVs h in # ... # 428 | | Apx.LF.Tuple (_, tuple) -> # 429 | collectApxTuple fMVs tuple # 430 | # 431 | | Apx.LF.LFHole _ -> fMVs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ann (_, _, _) # # File "src/core/apxnorm.ml", line 502, characters 27-50: # 502 | and collectApxTypDecl fMVs (Apx.LF.TypDecl (_, a))= # ^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/apxnorm.ml", lines 530-538, characters 2-44: # 530 | ..function # 531 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp a, c_psi), _) # 532 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp a, c_psi), _) -> # 533 | let fMVs' = collectApxDCtx fMVs c_psi in # 534 | collectApxTyp fMVs' a # 535 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp (_, c_phi), c_psi), _) -> # 536 | let fMVs' = collectApxDCtx fMVs c_psi in # 537 | collectApxDCtx fMVs' c_phi # 538 | | Apx.LF.Decl(_, Apx.LF.CTyp _, _) -> fMVs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt _ # # File "src/core/apxnorm.ml", lines 556-563, characters 2-31: # 556 | ..function # 557 | | Apx.LF.Atom (loc, c, tS) -> # 558 | collectApxSpine fMVd tS # 559 | | Apx.LF.PiTyp ((Apx.LF.TypDecl (x, tA), _, _ ), tB) -> # 560 | let fMVd1 = collectApxTyp fMVd tA in # 561 | collectApxTyp fMVd1 tB # 562 | | Apx.LF.Sigma trec -> # 563 | collectApxTypRec fMVd trec # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/apxnorm.ml", lines 573-581, characters 2-45: # 573 | ..function # 574 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.STyp(_, cPhi), cPsi), _) -> # 575 | let fMVd1 = collectApxDCtx fMVd cPsi in # 576 | collectApxDCtx fMVd1 cPhi # 577 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.MTyp tA, cPsi), _) # 578 | | Apx.LF.Decl(_, Apx.LF.ClTyp (Apx.LF.PTyp tA, cPsi), _) -> # 579 | let fMVd1 = collectApxDCtx fMVd cPsi in # 580 | collectApxTyp fMVd1 tA # 581 | | Apx.LF.Decl (_, Apx.LF.CTyp _, _) -> fMVd # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt _ # # File "src/core/apxnorm.ml", lines 584-603, characters 2-32: # 584 | ..function # 585 | | Apx.Comp.TypArr (_, tau1, tau2) -> # 586 | let fMVd1 = collectApxCompTyp fMVd tau1 in # 587 | collectApxCompTyp fMVd1 tau2 # 588 | | Apx.Comp.TypCross (_, taus) -> # ... # 600 | let fMVd1 = collectApxDCtx fMVd cPsi in # 601 | collectApxDCtx fMVd1 cPhi # 602 | | Apx.Comp.TypBase (_loc, _c, mS) -> # 603 | collectApxMetaSpine fMVd mS # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypBox (_, (_, CTyp _)) # # File "src/core/apxnorm.ml", lines 606-618, characters 2-32: # 606 | ..function # 607 | | Apx.Comp.PatMetaObj (loc, mO) -> # 608 | collectApxMetaObj fMVd mO # 609 | | Apx.Comp.PatConst (loc, c, pat_spine) -> # 610 | collectApxPatSpine fMVd pat_spine # ... # 615 | |> List.fold_left collectApxPattern fMVd # 616 | | Apx.Comp.PatAnn (loc, pat, tau) -> # 617 | let fMVd1 = collectApxCompTyp fMVd tau in # 618 | collectApxPattern fMVd1 pat # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatFVar (_, _) # # File "src/core/apxnorm.ml", lines 836-886, characters 2-33: # 836 | ..function # 837 | | Apx.Comp.Fn (loc, f, e) -> # 838 | Apx.Comp.Fn (loc, f, fmvApxExp fMVs cD d_param e) # 839 | # 840 | | Apx.Comp.Fun (loc, fbr) -> # ... # 883 | # 884 | | Apx.Comp.Var _ # 885 | | Apx.Comp.DataConst _ # 886 | | Apx.Comp.Const _ as i -> i # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ann (_, _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Abstract.cmx -c -impl src/core/abstract.ml) # File "src/core/abstract.ml", lines 253-257, characters 4-47: # 253 | ....function # 254 | | I.Atom _ -> (k, tS) # 255 | | I.PiTyp (_, tA') -> # 256 | let tN = I.Root (loc, I.BVar k, I.Nil, Plicity.explicit) in # 257 | etaExpSpine (k + 1) (I.App (tN, tS)) tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/abstract.ml", lines 260-263, characters 4-49: # 260 | ....match tA with # 261 | | I.Atom _ -> tM # 262 | | I.PiTyp ((I.TypDecl (x, _), _, _), tA') -> # 263 | I.Lam (loc, x, etaExpPrefix loc (tM, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/abstract.ml", lines 267-269, characters 4-19: # 267 | ....match h with # 268 | | I.BVar x -> I.BVar (x + k - 1) # 269 | | I.FVar _ -> h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/abstract.ml", lines 317-332, characters 2-17: # 317 | ..function # 318 | | I.Empty -> I.Empty # 319 | # 320 | | I.Dec (cQ', FDecl (MMV _, Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), _, _)))) -> # 321 | begin match raiseType cPsi tA with # ... # 329 | I.Dec (ctxToCtx cQ', I.TypDecl (x, tA)) # 330 | # 331 | | I.Dec (cQ', FDecl (_, Impure)) -> # 332 | ctxToCtx cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec # (_, FDecl (MMV _, Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) # # File "src/core/abstract.ml", lines 336-355, characters 2-20: # 336 | ..function # 337 | | I.Empty -> I.Empty # 338 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> # 339 | let plicity' = f plicity in # 340 | let cQ'' = ctxToMCtx f cQ' in # ... # 352 | | I.Dec (cQ', FDecl (FV _, Pure (LFTyp tA)))-> # 353 | Error.raise_violation "Free variables in computation-level reconstruction." # 354 | | I.Dec (cQ', FDecl (_, Impure)) -> # 355 | ctxToMCtx f cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (MMV (_, _), Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 358-365, characters 2-76: # 358 | ..function # 359 | | I.Empty -> I.Empty # 360 | | I.Dec (cQ', I.Decl { name = x; typ = I.CTyp (Option.Some w); plicity; inductivity }) -> # 361 | let cQ'' = mctxToCtx cQ' in # 362 | I.Dec (cQ'', CtxV (x, w, plicity, inductivity)) # 363 | | I.Dec (cQ', I.Decl { name = n; typ = ityp; plicity; inductivity }) -> # 364 | let cQ'' = mctxToCtx cQ' in # 365 | I.Dec (cQ'', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cQ', DeclOpt _) # # File "src/core/abstract.ml", lines 368-384, characters 2-32: # 368 | ..function # 369 | | I.Empty -> I.Empty # 370 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, _, _)))) -> # 371 | let cQ'' = ctxToMCtx_pattern (n :: names) cQ' in # 372 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive }) # ... # 381 | I.Dec (cQ'', I.Decl { name = x; typ =I.CTyp (Some w); plicity; inductivity }) # 382 | # 383 | | I.Dec (cQ', FDecl (_, Impure)) -> # 384 | ctxToMCtx_pattern names cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (FV _, Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 409-421, characters 2-35: # 409 | ..function # 410 | | (I.Lam (loc, x, tM), s) -> # 411 | let (cQ', tM') = collectTerm p cQ (cvar, offset + 1) (tM, LF.dot1 s) in # 412 | (cQ', I.Lam (loc, x, tM')) # 413 | | (I.Tuple (loc, tuple), s) -> # ... # 418 | let (cQ'', tS') = collectSpine p cQ' phat (tS, s) in # 419 | (cQ'', I.Root (loc, h', tS', plicity)) # 420 | | (I.LFHole (loc, id, name), s) -> # 421 | (cQ, I.LFHole (loc, id, name)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _, _) # # File "src/core/abstract.ml", lines 481-485, characters 7-49: # 481 | .......let (cD_d, I.Decl { typ = mtyp; plicity; inductivity; _ }) = Store.FCVar.get name in # 482 | let mtyp' = Whnf.cnormMTyp (mtyp, Int.LF.MShift (p - Context.length cD_d)) in # 483 | if !pat_flag # 484 | then MetaTyp (mtyp', Plicity.explicit, Inductivity.not_inductive) # 485 | else MetaTyp (mtyp', plicity, inductivity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, DeclOpt { _ }) # # File "src/core/abstract.ml", lines 512-517, characters 10-11: # 512 | ..........let (cQ', MetaTyp (typ, plicity, inductivity)) = # 513 | addVar loc p cQ (MMV (name, instantiation)) (MetaTyp (typ, plicity, inductivity)) # 514 | in # 515 | ( cQ' # 516 | , I.{ v with typ; plicity; inductivity } # 517 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cQ', LFTyp _) # # File "src/core/abstract.ml", lines 615-652, characters 2-26: # 615 | ..function # 616 | | (I.BVar _ as head, _) # 617 | | (I.Const _ as head, _) -> (cQ, head) # 618 | # 619 | | (I.FVar name, _) -> # ... # 649 | # 650 | | (I.Proj (head, j), s) -> # 651 | let (cQ', h') = collectHead k cQ phat loc (head, s) in # 652 | (cQ', I.Proj (h', j)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)), _) # # File "src/core/abstract.ml", lines 656-671, characters 2-27: # 656 | ..function # 657 | | (I.Atom (loc, a, tS), s) -> # 658 | let (cQ', tS') = collectSpine p cQ phat (tS, s) in # 659 | (cQ', I.Atom (loc, a, tS')) # 660 | # ... # 668 | # 669 | | (I.Sigma typRec, s) -> # 670 | let (cQ', typRec') = collectTypRec p cQ phat (typRec, s) in # 671 | (cQ', I.Sigma typRec') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 686-691, characters 2-66: # 686 | ..function # 687 | | (I.Typ, _) -> (cQ, I.Typ) # 688 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> # 689 | let (cQ', tA') = collectTyp p cQ phat (tA, s) in # 690 | let (cQ'', tK') = collectKind p cQ' (cvar, offset + 1) (tK, LF.dot1 s) in # 691 | (cQ'', I.PiKind ((I.TypDecl (x, tA'), depend, plicity), tK')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", line 759, characters 22-32: # 759 | let collectCDecl p cQ (I.Decl d) = # ^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/abstract.ml", lines 784-790, characters 2-8: # 784 | ..function # 785 | | (I.Typ, _) -> I.Typ # 786 | | (I.PiKind ((I.TypDecl (x, tA), depend, plicity), tK), s) -> # 787 | I.PiKind # 788 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) # 789 | , abstractKind cQ (offset + 1) (tK, LF.dot1 s) # 790 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 795-803, characters 2-8: # 795 | ..function # 796 | | (I.Atom (loc, a, tS), s (* id *)) -> # 797 | I.Atom (loc, a, abstractSpine cQ offset (tS, s)) # 798 | # 799 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> # 800 | I.PiTyp # 801 | ( (I.TypDecl (x, abstractTyp cQ offset (tA, s)), depend, plicity) # 802 | , abstractTyp cQ (offset + 1) (tB, LF.dot1 s) # 803 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 818-843, characters 2-8: # 818 | ..function # 819 | | (I.Lam (loc, x, tM), s) -> # 820 | I.Lam (loc, x, abstractTerm cQ (offset + 1) (tM, LF.dot1 s)) # 821 | # 822 | | ( I.(Root # ... # 840 | , abstractHead cQ offset tH # 841 | , abstractSpine cQ offset (tS, s) # 842 | , plicity # 843 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((LFHole (_, _, _)|Clo _|Tuple (_, _)), _) # # File "src/core/abstract.ml", lines 846-851, characters 2-59: # 846 | ..function # 847 | | I.BVar _ as tH -> tH # 848 | | I.Const _ as tH -> tH # 849 | | I.FVar n -> I.BVar (index_of cQ (FV n) + offset) # 850 | | I.AnnH _ -> # 851 | Error.raise_not_implemented "[abstractHead] AnnH case" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MMVar _|MPVar _|MVar _|PVar _|Proj (_, _)|FMVar _|FPVar _|HClo (_, _, _)| # HMClo (_, _)) # # File "src/core/abstract.ml", lines 855-869, characters 2-85: # 855 | ..match (s, cPsi) with # 856 | | (I.Shift _, I.Null) -> tS # 857 | | (I.Shift k, I.DDec _) -> # 858 | subToSpine cQ offset (I.Dot (I.Head (I.BVar (k + 1)), I.Shift (k + 1)), cPsi) tS # 859 | # ... # 866 | (* subToSpine cQ offset s (I.App (I.Root (I.BVar k, I.Nil), tS)) *) # 867 | # 868 | | (I.Dot (I.Obj tM, s), I.DDec (cPsi', _)) -> # 869 | subToSpine cQ offset (s, cPsi') (I.App (abstractTerm cQ offset (tM, LF.id), tS)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Shift _, CtxVar _) # # File "src/core/abstract.ml", lines 880-894, characters 2-48: # 880 | ..function # 881 | | I.Empty -> I.Empty # 882 | | I.Dec (cQ, FDecl (_, Impure)) -> abstractCtx cQ # 883 | | I.Dec (cQ, FDecl (MMV (n, r), Pure (MetaTyp (I.ClTyp (I.MTyp tA, cPsi), plicity, inductivity)))) -> # 884 | let cQ' = abstractCtx cQ in # ... # 891 | | I.Dec (cQ, FDecl (FV f, Pure (LFTyp tA))) -> # 892 | let cQ' = abstractCtx cQ in # 893 | let tA' = abstractTyp cQ 0 (tA, LF.id) in # 894 | I.Dec (cQ', FDecl (FV f, Pure (LFTyp tA'))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec # (_, # FDecl (MMV (_, _), Pure (MetaTyp (ClTyp ((PTyp _|STyp (_, _)), _), _, _)))) # # File "src/core/abstract.ml", lines 900-906, characters 2-39: # 900 | ..match cPsi with # 901 | | I.Null -> I.Null # 902 | | I.CtxVar psi -> cPsi # 903 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> # 904 | let cPsi' = abstractDctx cQ cPsi (l - 1) in # 905 | let tA' = abstractTyp cQ (l - 1) (tA, LF.id) in # 906 | I.DDec (cPsi', I.TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/abstract.ml", lines 930-940, characters 2-20: # 930 | ..function # 931 | | (I.Atom (loc, a, tS), s (* id *)) -> # 932 | I.Atom (loc, a, abstractMVarSpine cQ offset (tS, s)) # 933 | | (I.PiTyp ((I.TypDecl (x, tA), depend, plicity), tB), s) -> # 934 | I.PiTyp # ... # 937 | ) # 938 | | (I.Sigma typRec, s) -> # 939 | let typRec' = abstractMVarTypRec cQ offset (typRec, s) in # 940 | I.Sigma typRec' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/abstract.ml", lines 954-962, characters 2-29: # 954 | ..function # 955 | | (I.Lam (loc, x, tM), s) -> # 956 | I.Lam (loc, x, abstractMVarTerm cQ offset (tM, LF.dot1 s)) # 957 | | (I.Tuple (loc, tuple), s) -> # 958 | I.Tuple (loc, abstractMVarTuple cQ offset (tuple, s)) # 959 | | (I.Root (loc, tH, tS, plicity), s (* LF.id *)) -> # 960 | I.Root (loc, abstractMVarHead cQ offset tH, abstractMVarSpine cQ offset (tS, s), plicity) # 961 | | (I.LFHole (loc, id, name), s) -> # 962 | I.LFHole (loc, id, name) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _, _) # # File "src/core/abstract.ml", lines 1000-1036, characters 2-46: # 1000 | ..function # 1001 | | I.BVar _ as mH -> mH # 1002 | | I.Const _ as mH -> mH # 1003 | # 1004 | | I.FPVar ns -> I.PVar (abstractFVarSub cQ loff ns) # ... # 1033 | Error.raise_not_implemented "[abstractMVarHead] AnnH case" # 1034 | # 1035 | | I.Proj (head, k) -> # 1036 | I.Proj (abstractMVarHead cQ loff head, k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (FVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/abstract.ml", lines 1091-1097, characters 2-39: # 1091 | ..function # 1092 | | I.Null -> I.Null # 1093 | | I.CtxVar cv -> I.CtxVar (abstractCtxVar cQ loff cv) # 1094 | | I.DDec (cPsi, I.TypDecl (x, tA)) -> # 1095 | let cPsi' = abstractMVarDctx cQ loff cPsi in # 1096 | let tA' = abstractMVarTyp cQ loff (tA, LF.id) in # 1097 | I.DDec (cPsi', I.TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/abstract.ml", line 1110, characters 30-40: # 1110 | and abstractMVarCdecl cQ loff (I.Decl d) = # ^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/abstract.ml", lines 1121-1138, characters 2-58: # 1121 | ..match cQ with # 1122 | | I.Empty -> I.Empty # 1123 | | I.Dec (cQ, FDecl (v, Pure (MetaTyp (ityp, plicity, inductivity)))) -> # 1124 | let cQ' = abstractMVarCtx cQ (l - 1) in # 1125 | I.Dec (cQ', FDecl (v, Pure (MetaTyp (abstractMVarMTyp cQ ityp (l, 0), plicity, inductivity)))) # ... # 1135 | * is it ever hit on correct code? -jd 2009-02-12 # 1136 | * No. This case should not occur in correct code - bp # 1137 | *) # 1138 | raise (Error (Name.location name, UnknownIdentifier)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (MMV _, Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 1150-1154, characters 2-20: # 1150 | ..function # 1151 | | I.ClObj (phat, tM) -> # 1152 | I.ClObj (abstractMVarHat cQ off phat, abstrClObj cQ off tM) # 1153 | | I.CObj cPsi -> I.CObj (abstractMVarDctx cQ off cPsi) # 1154 | | I.MV k -> I.MV k # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MUndef # # File "src/core/abstract.ml", lines 1167-1179, characters 4-21: # 1167 | ....function # 1168 | | I.Empty -> I.Empty # 1169 | | I.Dec (cQ', FDecl (FV n, Pure (MetaTyp (ityp, plicity, inductivity)))) -> # 1170 | let cQ'' = ctxToMCtx' cQ' in # 1171 | I.Dec (cQ'', I.Decl { name = n; typ = ityp; plicity; inductivity }) # ... # 1176 | let cQ'' = ctxToMCtx' cQ' in # 1177 | I.Dec (cQ'', I.Decl { name = x; typ = I.CTyp (Option.some w); plicity; inductivity }) # 1178 | | I.Dec (cQ', FDecl (_, Impure)) -> # 1179 | ctxToMCtx' cQ' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, FDecl (FV _, Pure (LFTyp _))) # # File "src/core/abstract.ml", lines 1208-1217, characters 2-8: # 1208 | ..match cQ with # 1209 | | Int.LF.Empty -> (tA', 0) # 1210 | | Int.LF.Dec (_, FDecl (s, _)) -> # 1211 | let cQ' = abstractCtx cQ in # 1212 | let tA2 = abstractTyp cQ' 0 (tA', LF.id) in # 1213 | let cPsi = ctxToCtx cQ' in # 1214 | begin match raiseType' cPsi tA2 with # 1215 | | (None, tA3) -> (tA3, length' cPsi) # 1216 | | _ -> raise (Error (Location.ghost, LeftoverVars)) # 1217 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, CtxV _) # # File "src/core/abstract.ml", lines 1246-1287, characters 2-28: # 1246 | ..function # 1247 | | Comp.TypBase (loc, a, ms) -> # 1248 | let (cQ', ms') = collect_meta_spine p cQ ms in # 1249 | (cQ', Comp.TypBase (loc, a, ms')) # 1250 | | Comp.TypCobase (loc, a, ms) -> # ... # 1284 | # 1285 | | Comp.TypInd tau -> # 1286 | let (cQ', tau') = collectCompTyp p cQ tau in # 1287 | (cQ', Comp.TypInd tau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDef (_, _, _) # # File "src/core/abstract.ml", lines 1291-1296, characters 2-54: # 1291 | ..function # 1292 | | I.Empty -> (cQ, I.Empty) # 1293 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> # 1294 | let (cQ1, cG') = collectGctx cQ cG in # 1295 | let (cQ2, tau') = collectCompTyp 0 cQ1 tau in # 1296 | (cQ2, I.Dec (cG', Comp.CTypDecl (x, tau', flag))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/abstract.ml", lines 1463-1489, characters 2-52: # 1463 | ..function # 1464 | | Comp.TypBase (loc, a, cS) -> # 1465 | let cS' = abstractMVarMetaSpine cQ offset cS in # 1466 | Comp.TypBase (loc, a, cS') # 1467 | | Comp.TypCobase (loc, a, cS) -> # ... # 1486 | ) # 1487 | # 1488 | | Comp.TypInd tau -> # 1489 | Comp.TypInd (abstractMVarCompTyp cQ offset tau) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _)|TypClo (_, _)) # # File "src/core/abstract.ml", lines 1492-1497, characters 2-47: # 1492 | ..function # 1493 | | I.Empty -> I.Empty # 1494 | | I.Dec (cG, Comp.CTypDecl (x, tau, flag)) -> # 1495 | let cG' = abstractMVarGctx cQ offset cG in # 1496 | let tau' = abstractMVarCompTyp cQ offset tau in # 1497 | I.Dec (cG', Comp.CTypDecl (x, tau', flag)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/abstract.ml", lines 1698-1700, characters 4-48: # 1698 | ....match (p, cD) with # 1699 | | (0, _) -> cD # 1700 | | (_, I.Dec (cD', decl)) -> drop (p - 1) cD' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, Empty) # # File "src/core/abstract.ml", lines 1722-1724, characters 8-24: # 1722 | ........let I.Dec (cD1', decl) = cD1 in # 1723 | let cD = subtract cD1' cD2 in # 1724 | I.Dec (cD, decl) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/abstract.ml", lines 1785-1789, characters 2-24: # 1785 | ..function # 1786 | | I.Null -> cPsi1 # 1787 | | I.DDec (cPsi2', dec) -> # 1788 | let cPsi1' = appDCtx cPsi1 cPsi2' in # 1789 | I.Dec (cPsi1', dec) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Unify.cmx -c -impl src/core/unify.ml) # File "src/core/unify.ml", line 163, characters 30-55: # 163 | let genMMVarstr loc cD cPsi (Atom (_, a, _) as tP, s) = # ^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _) # # File "src/core/unify.ml", lines 575-585, characters 6-9: # 575 | ......begin match applyMSub k ms with # 576 | | MUndef -> # 577 | (* Psi1, x:tA |- s' <= Psi2 *) # 578 | (Whnf.mcomp mt' (MShift 1), cD2) # 579 | # ... # 582 | A = [mt']([mt']^-1 A) and cPsi = [mt']([mt']^-1 cPsi *) # 583 | let mtt' = Whnf.m_invert (Whnf.cnormMSub mt') in # 584 | (Whnf.mvar_dot1 mt', Dec (cD2, Decl { name = n; typ = Whnf.cnormMTyp (ctyp, mtt'); plicity; inductivity })) # 585 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 566-590, characters 4-38: # 566 | ....match (t, cD1) with # 567 | | (MShift _, Empty) -> (Whnf.m_id, Empty) # 568 | # 569 | | (MShift k, Dec _) -> # 570 | pruneMCtx' cD (MDot (MV (k + 1), MShift (k + 1)), cD1) ms # ... # 587 | | (MDot (MUndef, mt), Dec (cD1, _)) -> # 588 | let (mt', cD2) = pruneMCtx' cD (mt, cD1) ms in # 589 | (* cD1 |- mt' <= cD2 *) # 590 | (Whnf.mcomp mt' (MShift 1), cD2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MDot (MV k, mt), Dec (cD1, DeclOpt _)) # # File "src/core/unify.ml", lines 810-819, characters 7-10: # 810 | .......begin match applyMSub u ms with # 811 | | MV v -> # 812 | Root # 813 | ( loc # 814 | , MVar (Offset v, invSub cD0 phat (t', cPsi1) ss rOccur) # 815 | , Nil # 816 | , plicity # 817 | ) # 818 | | MUndef -> raise NotInvertible # 819 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 822-830, characters 7-46: # 822 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in # 823 | let d = Context.length cD0 - Context.length cD_d in # 824 | let cPsi1 = # 825 | if d = 0 # 826 | then cPsi1 # 827 | else Whnf.cnormDCtx (cPsi1, MShift d) # 828 | in # 829 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in # 830 | Root (loc, FMVar (u, s'), Nil, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=CTyp _; _ }) # # File "src/core/unify.ml", lines 833-841, characters 7-46: # 833 | .......let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get p in # 834 | let d = Context.length cD0 - Context.length cD_d in # 835 | let cPsi1 = # 836 | if d = 0 # 837 | then cPsi1 # 838 | else Whnf.cnormDCtx (cPsi1, MShift d) # 839 | in # 840 | let s' = invSub cD0 phat (comp t s, cPsi1) ss rOccur in # 841 | Root (loc, FPVar (p, s'), Nil, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=CTyp _; _ }) # # File "src/core/unify.ml", lines 846-850, characters 7-10: # 846 | .......begin match applyMSub p ms with # 847 | | MV q -> # 848 | Root (loc, PVar (q, invSub cD0 phat (t', cPsi1) ss rOccur), Nil, plicity) # 849 | | MUndef -> raise NotInvertible # 850 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 747-862, characters 4-62: # 747 | ....match sM with # 748 | | (Lam (loc, x, tM), s) -> # 749 | Lam (loc, x, invNorm cD0 ((cvar, offset + 1), (tM, dot1 s), (ms, dot1 ssubst), rOccur)) # 750 | # 751 | | (Root (loc, MVar (Inst u, t), tS, plicity), s) -> # ... # 859 | ) # 860 | # 861 | | (Tuple (loc, trec), s) -> # 862 | Tuple (loc, invTuple cD0 (phat, (trec, s), ss, rOccur)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((LFHole (_, _, _)|Clo _), _) # # File "src/core/unify.ml", lines 888-891, characters 7-10: # 888 | .......begin match bvarSub k ssubst with # 889 | | Undef -> raise NotInvertible # 890 | | Head (BVar k') -> BVar k' # 891 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 894-897, characters 7-10: # 894 | .......begin match bvarSub k ssubst with # 895 | | Head (BVar _ as head) -> head # 896 | | Undef -> raise NotInvertible # 897 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 932-936, characters 7-10: # 932 | .......begin match applyMSub u ms with # 933 | | MV v -> # 934 | MVar (Offset v, invSub cD0 phat (t, cPsi1) ss rOccur) # 935 | | MUndef -> raise NotInvertible # 936 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 940-944, characters 7-10: # 940 | .......begin match applyMSub p ms with # 941 | | MV q -> # 942 | PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur) # 943 | | MUndef -> raise NotInvertible # 944 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 948-952, characters 7-10: # 948 | .......begin match applyMSub p ms with # 949 | | MV q -> # 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) # 951 | | MUndef -> raise NotInvertible # 952 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 886-952, characters 4-10: # 886 | ....match head with # 887 | | BVar k -> # 888 | begin match bvarSub k ssubst with # 889 | | Undef -> raise NotInvertible # 890 | | Head (BVar k') -> BVar k' # ... # 949 | | MV q -> # 950 | Proj (PVar (q, invSub cD0 phat (t, cPsi1) ss rOccur), i) # 951 | | MUndef -> raise NotInvertible # 952 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Proj # ((Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)), # _) # # File "src/core/unify.ml", lines 956-959, characters 4-46: # 956 | ....function # 957 | | Undefs -> raise (Failure "Variable dependency") # 958 | | Shift k -> Shift (n + k) # 959 | | Dot (ft, ss') -> shiftInvSub (n - 1) ss' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/unify.ml", lines 981-985, characters 9-40: # 981 | .........match applyMSub s ms with # 982 | | MV v -> # 983 | let (_, cPhi, _, cPsi') = Whnf.mctxSDec cD0 v in # 984 | (v, cPhi, cPsi') # 985 | | MUndef -> raise NotInvertible # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1024-1030, characters 7-10: # 1024 | .......begin match applyMSub s ms with # 1025 | | MV v -> # 1026 | let (_, cPhi, _, cPsi1) = Whnf.mctxSDec cD0 v in # 1027 | (* applyMSub to ctx_offset ? *) # 1028 | SVar (v, n, invSub cD0 phat (t, cPsi1) ss rOccur) # 1029 | | MUndef -> raise NotInvertible # 1030 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1033-1034, characters 7-64: # 1033 | .......let (_, Decl { typ = ClTyp (STyp (LF.Subst, _), cPsi'); _ }) = Store.FCVar.get s_name in # 1034 | FSVar (n, (s_name, invSub cD0 phat (t, cPsi') ss rOccur)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=ClTyp (STyp (Ren, _), _); _ }) # # File "src/core/unify.ml", lines 1063-1069, characters 4-74: # 1063 | ....match (mt, cD1) with # 1064 | | (MShift n, _) -> checkDefined (Whnf.mcomp (MShift n) ms) # 1065 | | (MDot (ClObj (phat, SObj sigma), mt'), Dec (cD', Decl { typ = ClTyp (STyp (_, cPhi), _); _ })) -> # 1066 | let sigma' = invSub cD0 phat (sigma, cPhi) (ms, id) rOccur in # 1067 | MDot (ClObj (phat, SObj sigma'), invMSub cD0 (mt', cD') ms rOccur) # 1068 | | (MDot (mobj, mt'), Dec (cD', _)) -> # 1069 | MDot (invMObj cD0 mobj ms rOccur, invMSub cD0 (mt', cD') ms rOccur) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MDot (mobj, mt'), Empty) # # File "src/core/unify.ml", lines 1072-1080, characters 4-90: # 1072 | ....match mobj with # 1073 | | MV n -> # 1074 | begin match applyMSub n ms with # 1075 | | MUndef -> raise NotInvertible # 1076 | | ft -> ft # 1077 | end # 1078 | | ClObj (phat, MObj tM) -> ClObj (phat, MObj (invNorm cD0 (phat, (tM, id), (ms, id), rOccur))) # 1079 | | CObj cPsi -> Error.raise_violation "Not implemented" # 1080 | | ClObj (phat, PObj h) -> ClObj (phat, PObj (invHead cD0 (phat, h, (ms, id), rOccur))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/unify.ml", lines 1152-1154, characters 7-80: # 1152 | .......let Shift 0 = s in (* Assert s is supposed to be the identity *) # 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in # 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Shift 1 # # File "src/core/unify.ml", lines 1124-1154, characters 4-80: # 1124 | ....match sM with # 1125 | | (LFHole _ as n, _) -> n # 1126 | | (Lam (loc, x, tM), s) -> # 1127 | dprintf # 1128 | begin fun p -> # ... # 1151 | | (Root (loc, head, tS, plicity), s) -> # 1152 | let Shift 0 = s in (* Assert s is supposed to be the identity *) # 1153 | let newHead = pruneHead cD0 cPsi' (loc, head) ss rOccur in # 1154 | Root (loc, newHead, pruneSpine cD0 cPsi' phat (tS, s) ss rOccur, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Clo _, _) # # File "src/core/unify.ml", lines 1173-1184, characters 4-9: # 1173 | ....let ClTyp (tp, cPsi1) = mmvar.typ in # 1174 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur # 1175 | then raise (Failure "Variable occurrence") # 1176 | else # 1177 | begin # ... # 1181 | instantiateMMVarWithMMVar mmvar.instantiation loc (v, id2) tP' mmvar.constraints.contents; # 1182 | let (mr, r) = comp2 (comp2 id2 mtt) ss in # 1183 | ((v, mr), r) # 1184 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1187-1199, characters 4-37: # 1187 | ....let ClTyp (MTyp tP, cPsi1) = mmvar.typ in # 1188 | if eq_cvarRef (MMVarRef mmvar.instantiation) rOccur # 1189 | then raise (Failure "Variable occurrence") # 1190 | else # 1191 | let (idsub, cPsi2) = pruneSub cD0 cPsi' (Context.dctxToHat cPsi') (t, cPsi1) ss rOccur in # ... # 1196 | , Root (loc, MVar (v, idsub), Nil, Plicity.explicit) # 1197 | , mmvar.constraints.contents # 1198 | ); # 1199 | (v, comp (comp idsub t) ssubst) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 1202-1211, characters 3-10: # 1202 | ...let (cD_d, Decl { typ = ClTyp (_, cPsi1); _ }) = Store.FCVar.get u in # 1203 | let d = Context.length cD0 - Context.length cD_d in # 1204 | let cPsi1 = # 1205 | if d = 0 # 1206 | then cPsi1 # 1207 | else Whnf.cnormDCtx (cPsi1, MShift d) # 1208 | in # 1209 | let t' = simplifySub cD0 cPsi t in # 1210 | let s' = invSub cD0 (Context.dctxToHat cPsi) (t', cPsi1) ss rOccur in # 1211 | (u, s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=CTyp _; _ }) # # File "src/core/unify.ml", lines 1216-1219, characters 7-14: # 1216 | .......let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in # 1217 | let t' = simplifySub cD0 cPsi t in # 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in # 1219 | (v, s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, CTyp _) # # File "src/core/unify.ml", lines 1214-1220, characters 4-63: # 1214 | ....match applyMSub u ms with # 1215 | | MV v -> # 1216 | let (_, ClTyp (_, cPsi1)) = Whnf.mctxLookup cD0 v in # 1217 | let t' = simplifySub cD0 cPsi t in # 1218 | let s' = pruneSubst cD0 cPsi (t', cPsi1) ss rOccur in # 1219 | (v, s') # 1220 | | MUndef -> raise (Failure "[Prune] Bound MVar dependency") # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1246-1254, characters 7-10: # 1246 | .......begin match bvarSub k ssubst with # 1247 | | Undef -> # 1248 | let s = # 1249 | Format.asprintf "[Prune] Bound variable dependency : head = %a" # 1250 | (P.fmt_ppr_lf_head cD0 cPsi' P.l0) head # 1251 | in # 1252 | raise (Failure s) # 1253 | | Head (BVar _ as h') -> h' # 1254 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1223-1258, characters 4-11: # 1223 | ....match head with # 1224 | | MMVar ((i, mt), t) -> # 1225 | MMVar (pruneMMVarInst cD0 cPsi' loc i (mt, t) ss rOccur) # 1226 | | MVar (Inst i, t) -> # 1227 | MVar (pruneMVarInst cD0 cPsi' loc i (Whnf.normSub t) ss rOccur) # ... # 1255 | # 1256 | | Const _ # 1257 | | FVar _ -> # 1258 | head # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (AnnH (_, _)|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1293-1317, characters 4-57: # 1293 | ....match (s, cPsi1) with # 1294 | | (EmptySub, Null) -> EmptySub # 1295 | | (Undefs, Null) -> EmptySub # 1296 | | (Shift n, DDec _) -> # 1297 | pruneSubst cD cPsi (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur # ... # 1314 | # 1315 | | (Dot _, _) # 1316 | | (EmptySub, _) # 1317 | -> Error.raise_violation "Badly typed substitution" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Undefs, (CtxVar _|DDec (_, _))) # # File "src/core/unify.ml", lines 1321-1323, characters 4-70: # 1321 | ....match ft with # 1322 | | Obj tM -> Obj (prune cD cPsi (Context.dctxToHat cPsi) (tM, id) ss rOccur) # 1323 | | Head h -> Head (pruneHead cD cPsi (Location.ghost, h) ss rOccur) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Undef # # File "src/core/unify.ml", lines 1354-1357, characters 9-59: # 1354 | .........function # 1355 | | Undefs -> (EmptySub, Null) # 1356 | | Shift k -> (id, CtxVar psi) # 1357 | | Dot (ft, ssubst') -> shiftInvSub (n - 1) ssubst' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/unify.ml", lines 1370-1374, characters 9-40: # 1370 | .........match applyMSub s mt with # 1371 | | MV v -> # 1372 | let (_, _, _, cPsi') = Whnf.mctxSDec cD0 v in # 1373 | cPsi' # 1374 | | MUndef -> raise NotInvertible # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ClObj (_, _)|CObj _) # # File "src/core/unify.ml", lines 1387-1390, characters 7-18: # 1387 | .......let ClTyp (STyp (_, cPhi2), cPhi1) = mmvar.typ in # 1388 | let cPhi1' = Whnf.cnormDCtx (cPhi1, Whnf.m_id) in # 1389 | ignore (invSub cD0 phat (sigma, cPhi1') ss rOccur); # 1390 | (id, cPsi1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|PTyp _), _) # # File "src/core/unify.ml", lines 1398-1400, characters 7-18: # 1398 | .......let (_, Decl { typ = ClTyp (STyp _, cPsi'); _ }) = Store.FCVar.get s in # 1399 | ignore (invSub cD0 phat (sigma, cPsi') ss rOccur); # 1400 | (id, cPsi1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) # # File "src/core/unify.ml", lines 1407-1426, characters 7-10: # 1407 | .......begin match bvarSub n ssubst with # 1408 | | Undef -> # 1409 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in # 1410 | (comp s1' shift, cPsi1') # 1411 | # ... # 1423 | in # 1424 | (* cPsi1' |- s1_i <= cPsi' *) # 1425 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) # 1426 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1431-1448, characters 7-10: # 1431 | .......begin match bvarSub n ssubst with # 1432 | | Undef -> # 1433 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (s', cPsi') ss rOccur in # 1434 | (comp s1' shift, cPsi1') # 1435 | # ... # 1445 | in # 1446 | (* cPsi1' |- s1_i <= cPsi' *) # 1447 | (dot1 s1', DDec (cPsi1', TypDecl (x, TClo (tA, s1_i)))) # 1448 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1343-1471, characters 4-31: # 1343 | ....match (s, cPsi1) with # 1344 | | (Shift n, DDec _) -> # 1345 | pruneSub' cD0 cPsi phat (Dot (Head (BVar (n + 1)), Shift (n + 1)), cPsi1) ss rOccur # 1346 | | (Shift _, Null) # 1347 | | (EmptySub, Null) # ... # 1468 | # 1469 | | (Dot (Undef, t), DDec (cPsi1, _)) -> # 1470 | let (s1', cPsi1') = pruneSub' cD0 cPsi phat (t, cPsi1) ss rOccur in # 1471 | (comp s1' shift, cPsi1') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub, (CtxVar _|DDec (_, _))) # # File "src/core/unify.ml", lines 1474-1487, characters 4-21: # 1474 | ....match sA with # 1475 | | (Atom (loc, a, tS), s) -> Atom (loc, a, pruneSpine cD0 cPsi phat (tS, s) (mss, ss) rOccur) # 1476 | | (PiTyp ((TypDecl (x, tA), depend, plicity), tB), s) -> # 1477 | let tA' = pruneTyp cD0 cPsi phat (tA, s) (mss, ss) rOccur in # 1478 | let tB' = pruneTyp cD0 cPsi phat (tB, dot1 s) (mss, dot1 ss) rOccur in # ... # 1484 | # 1485 | | (Sigma typ_rec, s) -> # 1486 | let typ_rec' = pruneTypRec cD0 cPsi phat (typ_rec, s) (mss, ss) rOccur in # 1487 | Sigma typ_rec' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TClo _, _) # # File "src/core/unify.ml", lines 1504-1507, characters 7-10: # 1504 | .......begin match applyMSub psi ms with # 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' # 1506 | | MV k -> CtxVar (CtxOffset k) # 1507 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MUndef|ClObj (_, _)) # # File "src/core/unify.ml", lines 1510-1514, characters 7-10: # 1510 | .......begin match mmvar.instantiation.contents with # 1511 | | None -> cPsi # 1512 | | Some (ICtx cPhi) -> # 1513 | pruneDCtx cD cPhi (Whnf.mcomp theta ms) rOccur # 1514 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/unify.ml", lines 1501-1529, characters 4-37: # 1501 | ....match cPsi with # 1502 | | Null -> Null # 1503 | | CtxVar (CtxOffset psi) -> # 1504 | begin match applyMSub psi ms with # 1505 | | CObj (cPsi') -> Whnf.normDCtx cPsi' # ... # 1526 | (ms, Substitution.LF.id) # 1527 | rOccur # 1528 | in # 1529 | DDec (cPsi', TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/unify.ml", lines 1574-1583, characters 7-10: # 1574 | .......begin match bvarSub k ssubst with # 1575 | | Undef -> # 1576 | (* Psi1, x:tA |- s' <= Psi2 *) # 1577 | (comp s' shift, cPsi2) # 1578 | # 1579 | | Head (BVar _) -> # 1580 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since # 1581 | A = [s']([s']^-1 A) *) # 1582 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) # 1583 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1590-1599, characters 7-10: # 1590 | .......begin match bvarSub k ssubst with # 1591 | | Undef -> # 1592 | (* Psi1, x:tA |- s' <= Psi2 *) # 1593 | (comp s' shift, cPsi2) # 1594 | # 1595 | | Head (BVar _) -> # 1596 | (* Psi1, x:A |- s' <= Psi2, x:([s']^-1 A) since # 1597 | A = [s']([s']^-1 A) *) # 1598 | (dot1 s', DDec (cPsi2, TypDecl (x, TClo (tA, invert (Whnf.normSub s'))))) # 1599 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _| # FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/unify.ml", lines 1551-1604, characters 4-29: # 1551 | ....match (t, cPsi1) with # 1552 | | (EmptySub, Null) # 1553 | | (Undefs, Null) # 1554 | | (Shift _, Null) -> # 1555 | (id, Null) # ... # 1601 | | (Dot (Undef, t), DDec (cPsi1, _)) -> # 1602 | let (s', cPsi2) = pruneCtx' phat (t, cPsi1) ss in # 1603 | (* sP1 |- s' <= cPsi2 *) # 1604 | (comp s' shift, cPsi2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub, (CtxVar _|DDec (_, _))) # # File "src/core/unify.ml", lines 1646-1651, characters 4-56: # 1646 | ....match (sTup1, sTup2) with # 1647 | | ((Last tM, s1), (Last tN, s2)) -> # 1648 | unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2) # 1649 | | ((Cons (tM, tup1), s1), (Cons (tN, tup2), s2)) -> # 1650 | (unifyTerm mflag cD0 cPsi (tM, s1) (tN, s2); # 1651 | unifyTuple mflag cD0 cPsi (tup1, s1) (tup2, s2)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Last tM, s1), (Cons (_, _), _)) # # File "src/core/unify.ml", lines 1654-1680, characters 4-9: # 1654 | ....let ClTyp (_, cPsi1) = mmvar.typ in # 1655 | if isId t1' # 1656 | then instantiateMVar (mmvar.instantiation, sM2, mmvar.constraints.contents) # 1657 | else # 1658 | begin # ... # 1677 | (* This might actually need to add a constraint, in which case # 1678 | "NotInvertible" seems the wrong kind of exception... *) # 1679 | Error.raise_violation "Unification violation" # 1680 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1694-1705, characters 9-35: # 1694 | .........match Whnf.whnfTyp sA with # 1695 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> # 1696 | (* cPsi' |- Pi x:A.B <= typ # 1697 | cPsi |- s <= cPsi' # 1698 | cPsi |- tN <= [s]tA # ... # 1702 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in # 1703 | LF.App (tN, tS) # 1704 | # 1705 | | (LF.Atom _, _) -> LF.Nil # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/unify.ml", lines 1683-1710, characters 4-15: # 1683 | ....let ClTyp (_, cPsi1) = mmvar.typ in # 1684 | match sM2 with # 1685 | | Root (loc, Const c, _, plicity) -> # 1686 | let tA = (Store.Cid.Term.get c).Store.Cid.Term.Entry.typ in # 1687 | dprintf # ... # 1707 | let tM1 = Root (loc, Const c, genSpine mmvar.cD cPsi1 (tA, id), plicity) in # 1708 | instantiateMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); # 1709 | Some tM1 # 1710 | | _ -> None # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1716-1729, characters 6-32: # 1716 | ......match Whnf.whnfTyp sA with # 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> # 1718 | (* cPsi' |- Pi x:A.B <= typ # 1719 | cPsi |- s <= cPsi' # 1720 | cPsi |- tN <= [s]tA # ... # 1726 | in # 1727 | let tS = genSpine cD1 cPsi1 (tB, LF.Dot (LF.Obj tN, s)) in # 1728 | LF.App (tN, tS) # 1729 | | (LF.Atom _, _) -> LF.Nil # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/unify.ml", lines 1714-1762, characters 4-15: # 1714 | ....let ClTyp (MTyp tB, cPsi1) = mmvar.typ in # 1715 | let rec genSpine cD1 cPsi1 sA = # 1716 | match Whnf.whnfTyp sA with # 1717 | | (LF.PiTyp ((LF.TypDecl (n, tA), _, _), tB), s) -> # 1718 | (* cPsi' |- Pi x:A.B <= typ # ... # 1759 | instantiateMMVar (mmvar.instantiation, tM1, mmvar.constraints.contents); # 1760 | Some tM1 # 1761 | # 1762 | | _ -> None # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 1766-1769, characters 4-79: # 1766 | ....match tm with # 1767 | | (INorm n, _) -> INorm (prune cD cPsi hat (n, id) ss rOccur) # 1768 | | (IHead h, _) -> IHead (pruneHead cD cPsi (Location.ghost, h) ss rOccur) # 1769 | | (ISub s, STyp (_, cPhi)) -> ISub (pruneSubst cD cPsi (s, cPhi) ss rOccur) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ISub s, (MTyp _|PTyp _)) # # File "src/core/unify.ml", lines 1772-1796, characters 4-9: # 1772 | ....let ClTyp (tp, cPsi1) = mmvar.typ in # 1773 | if isId t1' && isMId mt1 # 1774 | then # 1775 | begin # 1776 | dprint (fun () -> "[unifyMMVarTerm] 200 - id/m_id"); # ... # 1793 | (* with | NotInvertible -> Error.raise_violation "Unification violation" *) # 1794 | (* This might actually need to add a constraint, in which case "NotInvertible" seems # 1795 | the wrong kind of exception... *) # 1796 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1810-1882, characters 4-76: # 1810 | ....let ClTyp (_, cPsi1) = mmvar.typ in # 1811 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub mt1) in # 1812 | (* cD |- mtt1 : cD0 and cD ; cPsi |- t1' : cPsi1 *) # 1813 | let (flat_cPsi, conv_list) = ConvSigma.flattenDCtx cD0 cPsi in # 1814 | let s_tup = ConvSigma.gen_tup_sub conv_list in (* flat_cPsi |- s_tup : cPsi *) # ... # 1879 | p.fmt "[unifyMMVarTermProj]: tM2 (after pruning) = %a" # 1880 | (P.fmt_ppr_lf_normal cD0 flat_cPsi P.l0) tM2' # 1881 | end; # 1882 | instantiateMMVar (mmvar.instantiation, sM2', mmvar.constraints.contents) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1885-1918, characters 4-102: # 1885 | ....let ClTyp (tp1, cPsi1) = mmvar1.typ in # 1886 | let (s', cPsi') = intersection (Context.dctxToHat cPsi) (Whnf.normSub t1') (Whnf.normSub t2') cPsi1 in # 1887 | (* if cD ; cPsi |- t1' <= cPsi1 and cD ; cPsi |- t2' <= cPsi1 # 1888 | then cD ; cPsi1 |- s' <= cPsi' *) # 1889 | let (mt', cD') = m_intersection (Whnf.cnormMSub mt1) (Whnf.cnormMSub mt2) mmvar1.cD in # ... # 1915 | [|w[s']/u|](u[t1]) = [t1](w[s']) # 1916 | [|w[s']/u|](u[t2]) = [t2](w[s']) # 1917 | *) # 1918 | instantiateMMVarWithMMVar mmvar1.instantiation loc (w, (mt', s')) tp1' mmvar1.constraints.contents # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/unify.ml", lines 1934-1975, characters 7-12: # 1934 | .......let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in # 1935 | dprnt "(000) MVar-MVar"; # 1936 | (* by invariant of whnf: # 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id # 1938 | r1 and r2 are uninstantiated (None) # ... # 1972 | begin # 1973 | let id = next_constraint_id () in # 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) # 1975 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 1933-1975, characters 7-12: # 1933 | .......let ClTyp (MTyp tP1, cPsi1) = mmvar1.typ in # 1934 | let ClTyp (MTyp tP2, cPsi2) = mmvar2.typ in # 1935 | dprnt "(000) MVar-MVar"; # 1936 | (* by invariant of whnf: # 1937 | meta-variables are lowered during whnf, s1 = s2 = id or co-id # ... # 1972 | begin # 1973 | let id = next_constraint_id () in # 1974 | addConstraint (mmvar1.constraints, ref (Eqn (id, cD0, cPsi, INorm sN, INorm sM))) # 1975 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/unify.ml", lines 2439-2452, characters 4-52: # 2439 | ....match (spine1, spine2) with # 2440 | | ((Nil, _), (Nil, _)) -> () # 2441 | # 2442 | | ((SClo (tS1, s1'), s1), sS) -> # 2443 | unifySpine mflag cD0 cPsi (tS1, comp s1' s1) sS # ... # 2449 | (* dprint (fun () -> "[unifySpine] " ^ P.normalToString cD0 cPsi (tM1, s1) ^ # 2450 | " == " ^ P.normalToString cD0 cPsi (tM2, s2));*) # 2451 | unifyTerm mflag cD0 cPsi (tM1, s1) (tM2, s2); # 2452 | unifySpine mflag cD0 cPsi (tS1, s1) (tS2, s2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Nil, _), (App (_, _), _)) # # File "src/core/unify.ml", lines 2659-2710, characters 7-61: # 2659 | .......let CTyp schema1, CTyp schema2 = mmvar1.typ, mmvar2.typ in # 2660 | if mmvar1.instantiation == mmvar2.instantiation # 2661 | then # 2662 | if Option.equal Id.cid_schema_equal schema1 schema2 # 2663 | then # ... # 2707 | Error.raise_violation # 2708 | "Case where both meta-substitutions associated with \ # 2709 | context variables are not pattern substitutions \ # 2710 | should not happen and is not implemented for now" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CTyp schema1, ClTyp (_, _)) # # File "src/core/unify.ml", lines 2714-2747, characters 7-61: # 2714 | .......let CTyp s_cid = mmvar.typ in # 2715 | if isPatMSub theta # 2716 | then # 2717 | begin # 2718 | let mtt1 = Whnf.m_invert (Whnf.cnormMSub theta) in # ... # 2744 | Error.raise_violation # 2745 | "Case where both meta-substitutions associated with \ # 2746 | context variables are not pattern substitutions \ # 2747 | should not happen and is not implemented for now" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (_, _) # # File "src/core/unify.ml", lines 2785-2786, characters 4-43: # 2785 | ....let Decl { typ = cT; _ } = cdecl in # 2786 | unifyMObj cD (mO, t) (mO', t') (cT, mt) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/unify.ml", lines 2820-2832, characters 7-53: # 2820 | .......let Comp.PiKind (_, cdecl, cK') = cK in # 2821 | let mOt = Whnf.cnormMetaObj (mO, t) in # 2822 | (* let mOt' = Whnf.cnormMetaObj (mO', t') in *) # 2823 | unifyMetaObj cD (mO, t) (mO', t') (cdecl, mt); # 2824 | let mt' = MDot (Comp.metaObjToMFront mOt, mt) in # ... # 2829 | P.(fmt_ppr_cmp_meta_typ cD) (Whnf.cnormMTyp (mT', t')) # 2830 | end; # 2831 | unifyMetaTyp cD (mT, t) (mT', t'); # 2832 | unifyMetaSpine cD (mS, t) (mS', t') (cK', mt') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Ctype _ # # File "src/core/unify.ml", lines 2837-2840, characters 4-81: # 2837 | ....function # 2838 | | (MTyp tA1, MTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) # 2839 | | (PTyp tA1, PTyp tA2) -> unifyTyp Unification cD cPsi (tA1, id) (tA2, id) # 2840 | | (STyp (_, cPhi1), STyp (_, cPhi2)) -> unifyDCtx1 Unification cD cPhi1 cPhi2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MTyp tA1, (PTyp _|STyp (_, _))) # # File "src/core/unify.ml", line 2836, characters 17-28: # 2836 | and unifyClTyp Unification cD cPsi = # ^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Matching # # File "src/core/unify.ml", line 2842, characters 18-29: # 2842 | and unifyCLFTyp Unification cD ctyp1 ctyp2 = # ^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Matching # # File "src/core/unify.ml", lines 2938-2941, characters 4-62: # 2938 | ....match (itM1, itM2) with # 2939 | | (INorm tM1, INorm tM2) -> unifyTerm Unification cD cPsi (tM1, id) (tM2, id) # 2940 | | (IHead tH1, IHead tH2) -> unifyHead Unification cD cPsi tH1 tH2 # 2941 | | (ISub s1, ISub s2) -> unifySub Unification cD cPsi s1 s2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (INorm tM1, (IHead _|ISub _|ICtx _)) # # File "src/core/unify.ml", lines 2950-2962, characters 7-10: # 2950 | .......begin match !cnstr with # 2951 | | Queued id -> # 2952 | forceCnstr mflag (nextCnstr ()) # 2953 | | Eqn (c_id, cD, cPsi, INorm tM1, INorm tM2) -> # 2954 | solveConstraint cnstr; # ... # 2959 | solveConstraint cnstr; # 2960 | unifyHead mflag cD cPsi h1 h2; # 2961 | forceCnstr mflag (nextCnstr ()) # 2962 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Eqn (_, _, _, INorm tM1, (IHead _|ISub _|ICtx _)) # # File "src/core/unify.ml", lines 2994-3029, characters 7-100: # 2994 | .......let Eqn (_, cD, cPsi, itM1, itM2) as c' = !c in # 2995 | solveConstraint c; # 2996 | dprintf # 2997 | begin fun p -> # 2998 | p.fmt "[forceGlobalCnstr'] @[<v>processing nontrivial constraint\ # ... # 3026 | *) # 3027 | if solvedCnstrs (!globalCnstrs) # 3028 | then (resetGlobalCnstrs (); forceGlobalCnstr' cnstrs) # 3029 | else raise (GlobalCnstrFailure (Location.ghost, "[forceGlobalCnstr'] Constraints generated")) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Queued _ # # File "src/core/unify.ml", lines 3202-3204, characters 8-68: # 3202 | ........match (m1, m2) with # 3203 | | (MObj tM1, MObj tM2) -> unify Empty cPsi (tM1, id) (tM2,id) # 3204 | | (PObj h, PObj h') -> unifyHead Unification Empty cPsi h h' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MObj tM1, (PObj _|SObj _)) # # File "src/core/unify.ml", lines 3208-3217, characters 4-49: # 3208 | ....match (m1, m2) with # 3209 | | (CObj cPsi, CObj cPhi) -> # 3210 | unifyDCtx1 # 3211 | Unification # 3212 | Empty # 3213 | (Whnf.cnormDCtx (cPsi, Whnf.m_id)) # 3214 | (Whnf.cnormDCtx (cPhi, Whnf.m_id)) # 3215 | | (ClObj (phat1, m1), ClObj (phat2, m2)) -> # 3216 | (* unify_phat phat1 phat2; *) # 3217 | unifyClObj (Context.hatToDCtx phat1) m1 m2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CObj cPsi, (MUndef|ClObj (_, _)|MV _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Opsem.cmx -c -impl src/core/opsem.ml) # File "src/core/opsem.ml", lines 80-83, characters 2-30: # 80 | ..match cM' with # 81 | | LF.ClObj (phat, LF.MObj tM) -> (loc, cM') # 82 | | LF.ClObj (phat, LF.PObj h) -> (loc, cM') # 83 | | LF.CObj cPsi -> (loc, cM') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClObj (_, SObj _) # # File "src/core/opsem.ml", lines 121-137, characters 7-17: # 121 | .......function # 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch # 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) # 124 | when Id.cid_comp_dest_equal cid cid' -> # 125 | Value (eval_exp e (theta, eta)) (* should we append theta' and eta'? *) # ... # 134 | | Value v -> Value v # 135 | end # 136 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, ps), e, _, _), br) -> # 137 | trim br # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ConsValBranch (((PatNil|PatApp (_, _, _)), _, _, _), _) # # File "src/core/opsem.ml", lines 119-142, characters 5-8: # 119 | .....let Comp.FunValue fbr = eval_exp e (theta, eta) in # 120 | let rec trim = # 121 | function # 122 | | Comp.NilValBranch -> FunBranch Comp.NilValBranch # 123 | | Comp.ConsValBranch ((Comp.PatObs(_, cid', _, Comp.PatNil), e, theta, eta), br) # ... # 139 | begin match trim fbr with # 140 | | FunBranch fr -> Comp.FunValue fr # 141 | | Value v -> v # 142 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (FnValue (_, _, _, _)|ThmValue (_, _, _, _)|MLamValue (_, _, _, _)| # CtxValue (_, _, _, _)|BoxValue (_, _)|ConstValue _|DataValue (_, _)| # TupleValue (T (_, _, _))) # # File "src/core/opsem.ml", lines 91-290, characters 2-50: # 91 | ..match i with # 92 | | Comp.Const (_, cid) -> # 93 | dprint (fun () -> "[eval_exp] Const " ^ R.render_cid_prog cid); # 94 | begin match (Store.Cid.Comp.get cid).Store.Cid.Comp.Entry.prog with # 95 | | Some (Comp.ThmValue (cid, Comp.Program e', theta', eta')) -> # ... # 287 | eval_branches loc vscrut branches (theta, eta) # 288 | # 289 | | Comp.Hole (_) -> # 290 | Error.raise_violation "Source contains holes" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MApp (_, _, (_, ClObj (_, SObj _)), _, _) # # File "src/core/opsem.ml", lines 321-325, characters 2-36: # 321 | ..match (cObj, cObj') with # 322 | | (LF.MObj tM, LF.MObj tM') -> # 323 | Unify.unify LF.Empty cPsi' (tM, Substitution.LF.id) (tM', Substitution.LF.id) # 324 | | (LF.PObj h, LF.PObj h') -> # 325 | Unify.unifyH LF.Empty phat h h' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MObj tM, (PObj _|SObj _)) # # File "src/core/opsem.ml", lines 437-458, characters 4-10: # 437 | ....function # 438 | | Comp.NilValBranch -> FunBranch (Comp.NilValBranch) # 439 | | Comp.ConsValBranch ((Comp.PatApp (_, p, Comp.PatNil), e, theta, eta), brs) -> # 440 | begin try # 441 | let eta' = match_pattern (v, eta) (p, theta) in # ... # 455 | eval_branch brs # 456 | | Unify.Failure msg -> (dprint (fun () -> "Branch failed : " ^ msg); # 457 | eval_branch brs) # 458 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ConsValBranch (((PatNil|PatObs (_, _, _, _)), _, _, _), _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Lfcheck.cmx -c -impl src/core/lfcheck.ml) # File "src/core/lfcheck.ml", lines 225-230, characters 2-19: # 225 | ..function # 226 | | Null -> Ctxsub.ctxShift cPhi (* S.LF.id *) # 227 | | DDec (cPsi', TypDecl (n, tA)) -> # 228 | let s = (ctxToSub' cPhi cPsi' : sub) in # 229 | let u = Whnf.etaExpandMV cPhi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in # 230 | Dot (Obj u, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi', TypDeclOpt _) # # File "src/core/lfcheck.ml", lines 246-330, characters 2-55: # 246 | ..match (sM, sA) with # 247 | | ((Lam (loc, name, tM), s1), (PiTyp ((TypDecl _ as tX, _, _), tB), s2)) -> (* Offset by 1 *) # 248 | check cD # 249 | (DDec (cPsi, S.LF.decSub tX s2)) # 250 | (tM, S.LF.dot1 s1) # ... # 327 | raise (Error (loc, (CheckError (cD, cPsi, sM, sA)))) # 328 | end # 329 | | ((Root (loc, _, _, _), _ (* id *)), _ ) -> # 330 | raise (Error (loc, CheckError (cD, cPsi, sM, sA))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Clo _, _), _) # # File "src/core/lfcheck.ml", lines 361-370, characters 4-23: # 361 | ....match (tS, sA) with # 362 | | ((Nil, _), sP) -> sP # 363 | # 364 | | ((SClo (tS, s'), s), sA) -> # 365 | syn (tS, S.LF.comp s' s) sA # 366 | # 367 | | ((App (tM, tS), s1), (PiTyp ((TypDecl (_, tA1), _, _), tB2), s2)) -> # 368 | check cD cPsi (tM, s1) (tA1, s2); # 369 | let tB2 = Whnf.whnfTyp (tB2, Dot (Obj (Clo (tM, s1)), s2)) in # 370 | syn (tS, s1) tB2 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((App (tM, tS), s1), (PiTyp ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfcheck.ml", line 346, characters 16-50: # 346 | and syn cD cPsi (Root (loc, h, tS, _), s (* id *)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)), _) # # File "src/core/lfcheck.ml", lines 393-394, characters 5-7: # 393 | .....let TypDecl (_, tA) = ctxDec cPsi k' in # 394 | tA # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfcheck.ml", lines 400-409, characters 10-25: # 400 | ..........let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in # 401 | dprintf # 402 | begin fun p -> # 403 | p.fmt "[InferHead] @[<v>%a |- %a@,where %a has type %a@]" # 404 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi # 405 | (P.fmt_ppr_lf_head cD cPsi P.l0) head # 406 | (P.fmt_ppr_lf_head cD cPsi P.l0) tuple_head # 407 | (P.fmt_ppr_lf_typ_rec cD cPsi P.l0) recA # 408 | end; # 409 | (recA, S.LF.id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfcheck.ml", lines 411-413, characters 10-19: # 411 | ..........let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in # 412 | checkSub loc cD cPsi s Subst cPsi'; # 413 | (recA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _) # # File "src/core/lfcheck.ml", lines 398-414, characters 7-64: # 398 | .......match tuple_head with # 399 | | BVar k' -> # 400 | let TypDecl (_, Sigma recA) = ctxSigmaDec cPsi k' in # 401 | dprintf # 402 | begin fun p -> # ... # 411 | let (_, Sigma recA, cPsi') = Whnf.mctxPDec cD p in # 412 | checkSub loc cD cPsi s Subst cPsi'; # 413 | (recA, s) # 414 | | FPVar (name, _) -> raise (Error (loc, LeftoverFV name)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfcheck.ml", lines 446-457, characters 5-17: # 446 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in # 447 | dprintf # 448 | begin fun p -> # 449 | let f = P.fmt_ppr_lf_dctx cD P.l0 in # 450 | p.fmt "[inferHead] @[<v>%a@,%a |- %a <= %a@]" # ... # 454 | f cPsi' # 455 | end; # 456 | checkSub loc cD cPsi s Subst cPsi' ; # 457 | TClo (tA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/lfcheck.ml", lines 461-474, characters 5-37: # 461 | .....let ClTyp (MTyp tA, cPsi') = mmvar.typ in # 462 | dprintf # 463 | begin fun p -> # 464 | let f = P.fmt_ppr_lf_mctx P.l0 in # 465 | p.fmt "[inferHead] @[<v>MMVar %a@,cD = %a@,t' = %a@,cD' = %a@]" # ... # 471 | checkMSub loc cD t' mmvar.cD; # 472 | dprint (fun () -> "[inferHead] MMVar - msub done \n"); # 473 | checkSub loc cD cPsi r Subst (Whnf.cnormDCtx (cPsi', t')) ; # 474 | TClo (Whnf.cnormTyp (tA, t'), r) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/lfcheck.ml", lines 391-506, characters 2-41: # 391 | ..match (head, cl) with # 392 | | (BVar k', _) -> # 393 | let TypDecl (_, tA) = ctxDec cPsi k' in # 394 | tA # 395 | # ... # 503 | TClo (tA, s) # 504 | # 505 | | (FVar name, _) | (FMVar (name, _), _) | (FPVar (name, _), _) -> # 506 | raise (Error (loc, LeftoverFV name)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MVar (Inst _, _), Subst) # (However, some guarded clause may match this value.) # # File "src/core/lfcheck.ml", lines 509-528, characters 2-13: # 509 | ..match cPsi with # 510 | | Null -> true (* we need to succeed because coverage should detect that # 511 | it is not inhabited *) # 512 | # 513 | | CtxVar ctx_var -> # ... # 525 | # 526 | | DDec (rest, TypDecl _) -> # 527 | canAppear cD rest head sA loc # 528 | || false........................................... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (rest, TypDeclOpt _) # # File "src/core/lfcheck.ml", lines 643-655, characters 2-23: # 643 | ..match sS1, sK with # 644 | | (Nil, _), sK -> # 645 | sK # 646 | # 647 | | (SClo (tS, s'), s), sK -> # ... # 652 | synKSpine cD cPsi (tS, s1) (kK, Dot (Obj (Clo (tM, s1)), s2)) # 653 | # 654 | | (App _, _), (Typ, _) -> # 655 | raise SpineMismatch # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((App (_, _), _), (PiKind ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfcheck.ml", lines 664-681, characters 2-47: # 664 | ..match tA with # 665 | | Atom (loc, a, tS) -> # 666 | let tK = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in # 667 | begin # 668 | try # ... # 678 | checkTyp cD cPsi (tA, s); # 679 | checkTyp cD (DDec (cPsi, TypDecl (x, TClo (tA, s)))) (tB, S.LF.dot1 s) # 680 | # 681 | | Sigma arec -> checkTypRec cD cPsi (arec, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfcheck.ml", lines 710-714, characters 2-53: # 710 | ..function # 711 | | Typ -> () # 712 | | PiKind ((TypDecl (x, tA), _, _), kind) -> # 713 | checkTyp cD cPsi (tA, S.LF.id); # 714 | checkKind cD (DDec (cPsi, TypDecl (x, tA))) kind # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # # File "src/core/lfcheck.ml", lines 724-725, characters 2-47: # 724 | ..match decl with # 725 | | TypDecl (_, tA) -> checkTyp cD cPsi (tA, s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfcheck.ml", lines 734-754, characters 2-7: # 734 | ..match cPsi with # 735 | | Null -> () # 736 | | DDec (cPsi, tX) -> # 737 | checkDCtx cD cPsi; # 738 | checkDec cD cPsi (tX, S.LF.id) # ... # 751 | (P.fmt_ppr_lf_mctx P.l0) cD # 752 | end; # 753 | ignore (Whnf.mctxLookup cD k); # 754 | () # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/lfcheck.ml", lines 962-963, characters 5-47: # 962 | .....let Some (ICtx cPhi) = mmvar.instantiation.contents in # 963 | checkSchema loc cD cPhi schema_name schema # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (INorm _|IHead _|ISub _) # # File "src/core/lfcheck.ml", lines 1019-1027, characters 2-57: # 1019 | ..match (sArec, sBrec) with # 1020 | | ((SigmaLast _, _), (SigmaLast _, _)) -> # 1021 | None # 1022 | # 1023 | | ((SigmaElem (_, _, recA), s), (SigmaLast _, _)) -> # 1024 | Some (recA, s) # 1025 | # 1026 | | ((SigmaElem (_, _, recA), s), (SigmaElem (_, _, recB), s')) -> # 1027 | elemPostfix (recA, S.LF.dot1 s) (recB, S.LF.dot1 s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((SigmaLast (_, _), _), (SigmaElem (_, _, _), _)) # # File "src/core/lfcheck.ml", lines 1075-1101, characters 2-69: # 1075 | ..match (cM, cTt) with # 1076 | | (CObj cPsi, (CTyp (Some w), _)) -> # 1077 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get w in # 1078 | checkSchema loc cD cPsi name schema # 1079 | # ... # 1098 | let mtyp1 = Whnf.cnormMTyp (mtyp1, t) in # 1099 | let (_, mtyp2) = Whnf.mctxLookup cD u in # 1100 | if Bool.not (Whnf.convMTyp mtyp1 mtyp2) # 1101 | then Error.raise_violation ("Contextual substitution ill-typed") # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CObj cPsi, (CTyp None, _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Total.cmx -c -impl src/core/total.ml) # File "src/core/total.ml", lines 31-45, characters 6-9: # 31 | ......begin match (x, args) with # 32 | | (_, []) -> # 33 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n Report as a bug." # 34 | | (Comp.M (cM, _ ), (Comp.M (cM', _ ) :: _)) -> # 35 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \nBeluga cannot establish that the given recursive call is a size-preserving variant of it.\nArgument found: %a@\nArgument expected: %a@" # ... # 42 | # 43 | | (Comp.V _, _) -> # 44 | Format.dprintf "Recursive call is incompatible with valid automatically generated recursive calls. \n\n Found computation-level variable while generated recursive call expected a meta-object.\n\nCheck specified totality declaration." # 45 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (M (_, _), (E|DC)::_) # # File "src/core/total.ml", lines 138-141, characters 2-56: # 138 | ..function # 139 | | LF.Empty -> LF.Empty # 140 | | LF.Dec (cG, Comp.CTypDecl (x, tau, _)) -> # 141 | LF.Dec (mark_gctx cG, Comp.CTypDecl (x, tau, true)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # # File "src/core/total.ml", lines 155-157, characters 2-40: # 155 | ..function # 156 | | None -> " _ " # 157 | | Some (Comp.Arg x) -> string_of_int x # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (Lex _|Simul _) # # File "src/core/total.ml", line 249, characters 30-37: # 249 | let xs = List.map (fun (Arg x) -> x) xs in # ^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lex _|Simul _) # # File "src/core/total.ml", lines 245-258, characters 4-41: # 245 | ....match dec.order with # 246 | | `inductive (Arg x) -> # 247 | (dec.name, Some [x], (tau, Whnf.m_id)) # 248 | | `inductive (Lex xs) -> # 249 | let xs = List.map (fun (Arg x) -> x) xs in # ... # 255 | | `not_recursive # 256 | | `trust # 257 | | `partial -> # 258 | (dec.name, None, (tau, Whnf.m_id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # `inductive (Simul _) # # File "src/core/total.ml", line 331, characters 19-54: # 331 | let gen_var loc cD (LF.Decl { name = x; typ = cU; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/total.ml", lines 404-413, characters 2-31: # 404 | ..function # 405 | | [] -> [] # 406 | | Comp.M (cM, cU) :: args -> # 407 | if uninstantiated_arg cM # 408 | then Comp.DC :: generalize args # 409 | else Comp.M (cM, cU) :: generalize args # 410 | | Comp.V x :: args -> # 411 | Comp.V x :: generalize args # 412 | | Comp.DC :: args -> # 413 | Comp.DC :: generalize args # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # E::_ # # File "src/core/total.ml", line 445, characters 19-25: # 445 | let existsElem b (1, n) (LF.SchElem (some_part, block_part)) = # ^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (0, _) # # File "src/core/total.ml", lines 509-511, characters 6-47: # 509 | ......let LF.ClTyp (LF.MTyp tA, cPsi) = cU in # 510 | (Unify.unifyMetaTyp cD (cU , Whnf.m_id) (cU0, Whnf.m_id); # 511 | gen_meta_obj (k, Substitution.LF.id) cU) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/total.ml", lines 544-592, characters 2-30: # 544 | ..function # 545 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) # 546 | | (1, (Comp.TypPiBox (_, LF.Decl { typ = cU'; _ }, tau), theta)) -> # 547 | let cU0 = Whnf.cnormMTyp (cU', theta) in # 548 | begin # ... # 589 | # 590 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> # 591 | let (spine, tau_r) = rec_spine cD (k, cU) (n - 1, (tau2, theta)) in # 592 | (Comp.DC :: spine, tau_r) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (2, # ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| # TypCross (_, _)|TypClo (_, _)|TypInd _), # _)) # # File "src/core/total.ml", lines 595-619, characters 2-30: # 595 | ..function # 596 | | (0, ttau) -> ([], Whnf.cnormCTyp ttau) # 597 | # 598 | | (1, (Comp.TypPiBox _, _)) -> # 599 | raise Not_compatible (* Error *) # ... # 616 | # 617 | | (n, (Comp.TypArr (_, _, tau2), theta)) -> # 618 | let (spine, tau_r) = rec_spine' cD (x, ttau0) (n - 1, (tau2, theta)) in # 619 | (Comp.DC :: spine, tau_r) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (1, # ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| # TypCross (_, _)|TypClo (_, _)|TypInd _), # _)) # # File "src/core/total.ml", lines 622-713, characters 2-43: # 622 | ..match cD' with # 623 | | LF.Empty -> cIH # 624 | # 625 | | LF.Dec (cD', LF.Decl { name = u; typ = cU; inductivity = Inductivity.Not_inductive; _ }) -> # 626 | dprintf # ... # 710 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d@\n" j); # 711 | let cIH' = mk_all (cIH, j) mf_list in # 712 | dprintf (fun p -> p.fmt "[gen_rec_calls] for j = %d" (j + 1)); # 713 | gen_rec_calls cD cIH' (cD', j + 1) mfs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt _) # # File "src/core/total.ml", lines 725-791, characters 2-47: # 725 | ..match cG0 with # 726 | | LF.Empty -> cIH # 727 | | LF.Dec (cG', Comp.CTypDecl (x, tau0, false)) -> # 728 | gen_rec_calls' cD cG cIH (cG', j + 1) mfs # 729 | # ... # 788 | mk_all cIH' mf_list # 789 | in # 790 | let cIH' = mk_all cIH mf_list in # 791 | gen_rec_calls' cD cG cIH' (cG', j + 1) mfs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, CTypDeclOpt _) # # File "src/core/total.ml", lines 860-868, characters 2-69: # 860 | ..match cPsi with # 861 | (* cPsi |- tA *) # 862 | | LF.Null -> None # 863 | | LF.CtxVar _ -> None # 864 | | LF.DDec (cPsi, LF.TypDecl (_, tB)) -> # 865 | if Whnf.convTyp (tA, Substitution.LF.invShift) (tB, Substitution.LF.id) # 866 | then Some k # 867 | else # 868 | pos cPsi (Whnf.normTyp (tA, Substitution.LF.invShift)) (k + 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi, TypDeclOpt _) # # File "src/core/total.ml", lines 1087-1111, characters 5-8: # 1087 | .....begin # 1088 | match prefixDCtx cD cPsi cPsi0 (* cPsi0 = cPsi, cPsi1 *) , # 1089 | prefix_hat # 1090 | (Whnf.cnorm_psihat phat Whnf.m_id) # 1091 | (Whnf.cnorm_psihat phat' Whnf.m_id) # ... # 1108 | end ; # 1109 | (l, LF.ClObj (Context.extend_hatctx k phat0, LF.MObj (Whnf.norm (tM, dot_k s_proj k)))) , LF.ClTyp (Whnf.normClTyp (tA , dot_k s_proj k), padctx cPsi' k) # 1110 | end # 1111 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Some k', None) # # File "src/core/total.ml", lines 1121-1124, characters 5-87: # 1121 | .....let LF.Root (_, tH', _, _) = # 1122 | Whnf.norm (LF.Root (l, tH, LF.Nil, Plicity.explicit), s_proj) # 1123 | in # 1124 | (l, LF.ClObj (phat0, LF.PObj tH')) , LF.ClTyp (Whnf.normClTyp (tA, s_proj), cPsi') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/total.ml", lines 1134-1140, characters 2-65: # 1134 | ..match args with # 1135 | | [] -> [] # 1136 | | Comp.DC :: args -> Comp.DC :: shiftArgs cD args (cPsi', s_proj, cPsi) # 1137 | | Comp.V x :: args -> Comp.V x :: shiftArgs cD args (cPsi', s_proj, cPsi) # 1138 | | Comp.M (cM, cU ) :: args -> # 1139 | let cM' , cU'= shiftMetaObj cD (cM , cU) (cPsi', s_proj, cPsi) in # 1140 | Comp.M (cM', cU') :: shiftArgs cD args (cPsi', s_proj, cPsi) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # E::_ # # File "src/core/total.ml", lines 1316-1337, characters 2-40: # 1316 | ..function # 1317 | | Comp.TypBase (loc, c, _) -> # 1318 | Bool.not (Id.cid_comp_typ_equal a c) # 1319 | && begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with # 1320 | | Sgn.Positivity -> true # ... # 1334 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && no_occurs a tau2 # 1335 | | Comp.TypCross (_, taus) -> List2.for_all (no_occurs a) taus # 1336 | | Comp.TypPiBox (_, _, tau') -> no_occurs a tau' # 1337 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1340-1360, characters 2-40: # 1340 | ..function # 1341 | | Comp.TypBase (loc, c, _) -> # 1342 | Id.cid_comp_typ_equal a c # 1343 | || begin match (Store.Cid.CompTyp.get c).Store.Cid.CompTyp.Entry.positivity with # 1344 | | Sgn.Positivity -> true # ... # 1357 | | Comp.TypArr (_, tau1, tau2) -> no_occurs a tau1 && check_positive a tau2 # 1358 | | Comp.TypCross (_, taus) -> List2.for_all (check_positive a) taus # 1359 | | Comp.TypPiBox (_, _, tau') -> check_positive a tau' # 1360 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1364-1372, characters 2-40: # 1364 | ..function # 1365 | | Comp.TypBase _ -> true # 1366 | | Comp.TypCobase _ -> true # 1367 | | Comp.TypDef _ -> raise Unimplemented # 1368 | | Comp.TypBox _ -> true # 1369 | | Comp.TypArr (_, tau1, tau2) -> check_positive a tau1 && positive a tau2 # 1370 | | Comp.TypCross (_, taus) -> List2.for_all (positive a) taus # 1371 | | Comp.TypPiBox (_, _, tau') -> positive a tau' # 1372 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1492-1531, characters 2-27: # 1492 | ..match tau1 with # 1493 | | Comp.TypBase (loc, c, mS1) -> # 1494 | if Id.cid_comp_typ_equal a c # 1495 | then # 1496 | begin # ... # 1528 | | Comp.TypBox _ # 1529 | | Comp.TypClo _ # 1530 | | Comp.TypCobase _ # 1531 | | Comp.TypDef _ -> true # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # # File "src/core/total.ml", lines 1555-1580, characters 8-48: # 1555 | ........function # 1556 | | Comp.TypBase _ # 1557 | | Comp.TypCobase _ # 1558 | | Comp.TypBox _ -> true # 1559 | # ... # 1577 | | Comp.TypPiBox (_, dec, tau') -> strat (LF.Dec (cD0, dec)) tau' # 1578 | # 1579 | | Comp.TypDef _ # 1580 | | Comp.TypClo _ -> raise Unimplemented # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypInd _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Coverage.cmx -c -impl src/core/coverage.ml) # File "src/core/coverage.ml", line 76, characters 26-46: # 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) # ^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/coverage.ml", lines 75-78, characters 2-5: # 75 | ..let Some (CTypDecl (_, tau, _)) = # 76 | Context.find' cG (fun (CTypDecl (y, _, _)) -> Name.(x = y)) # 77 | in # 78 | tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (CTypDeclOpt _) # # File "src/core/coverage.ml", line 195, characters 20-45: # 195 | let gen_str cD cPsi (LF.Atom (_, a, _) as tP) = # ^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)) # # File "src/core/coverage.ml", lines 214-218, characters 4-74: # 214 | ....match tA with # 215 | | LF.Atom _ -> LF.Root (Location.ghost, tH, tS, Plicity.explicit) # 216 | | LF.PiTyp ((LF.TypDecl (x, tB0), _, _), tB) -> # 217 | let tM = eta (tB0, s) LF.Nil in # 218 | LF.Lam (Location.ghost, x, eta (tB, S.LF.dot1 s) (LF.App (tM, tS))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/coverage.ml", lines 271-281, characters 4-58: # 271 | ....function # 272 | | MetaSub (cPsi, s, LF.STyp (_, cPhi)) -> # 273 | fprintf ppf "%a |- %a : %a" # 274 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi # 275 | (P.fmt_ppr_lf_sub cD cPsi P.l0) s # ... # 278 | fprintf ppf "%a |- %a : %a" # 279 | (P.fmt_ppr_lf_dctx cD P.l0) cPsi # 280 | (P.fmt_ppr_lf_normal cD cPsi P.l0) tR # 281 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp sA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MetaSub (cPsi, s, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 304-308, characters 4-73: # 304 | ....function # 305 | | CovCtx cPsi -> fmt_ppr_covctx cD ppf cPsi # 306 | | CovSub (cPsi, s, LF.STyp (_, cPhi)) -> fmt_ppr_covsub cD ppf (cPsi, s, cPhi) # 307 | | CovGoal (cPsi, tR, sA) -> fmt_ppr_covgoal cD ppf (cPsi, tR, sA) # 308 | | CovPatt (cG, patt, ttau) -> fmt_ppr_covpatt cD ppf (cG, patt, ttau) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CovSub (cPsi, s, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 483-484, characters 7-73: # 483 | .......let Comp.TypBox (_, mT) = tau_sc in # 484 | check_meta_obj cD_p mO (Whnf.cnormMTyp (mT, t)) && is_id cD_p t cD # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| # TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) # # File "src/core/coverage.ml", lines 545-546, characters 9-44: # 545 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 543-547, characters 7-10: # 543 | .......begin # 544 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in # 545 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 546 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # 547 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 580-619, characters 5-8: # 580 | .....let LF.MPVar (_, s') as tH' = Whnf.cnormHead (tH', t) in # 581 | dprintf # 582 | begin fun p -> # 583 | p.fmt "[pre_match_head] @[<v>pvar - case\ # 584 | @,pattern: @[@[%a@]@ |- @[%a@]@]\ # ... # 616 | end; # 617 | SplitCand # 618 | (* CtxSplitCand (pre_match_dctx cD cD_p cPsi cPsi_p [] []) *) # 619 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (BVar _|Const _|MMVar (({instantiation={ _ }; constraints={ _ }; _ }, _), _)| # MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)|FVar _|FMVar (_, _)| # FPVar (_, _)|HClo (_, _, _)| # HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))) # # File "src/core/coverage.ml", lines 638-639, characters 9-44: # 638 | .........let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 636-640, characters 7-10: # 636 | .......begin # 637 | let LF.TypDecl (_, tA) = Context.ctxDec cPsi k in # 638 | let LF.TypDecl (_, tA') = Context.ctxDec cPsi' k' in # 639 | Yes ((tA, S.LF.id), (tA', S.LF.id)) # 640 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 695-708, characters 5-59: # 695 | .....let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in # 696 | let covGoal' = # 697 | CovGoal # 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) # 699 | , tM, (tB, S.LF.dot1 s) # ... # 705 | , tN, (tB', S.LF.dot1 s') # 706 | ) # 707 | in # 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) # # File "src/core/coverage.ml", lines 694-708, characters 5-59: # 694 | .....let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in # 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in # 696 | let covGoal' = # 697 | CovGoal # 698 | ( LF.DDec (cPsi, S.LF.decSub tdecl s) # ... # 705 | , tN, (tB', S.LF.dot1 s') # 706 | ) # 707 | in # 708 | pre_match cD cD_p covGoal' patt' matchCands splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Atom (_, _, _)|Sigma _|TClo (_, _)), _) # # File "src/core/coverage.ml", lines 692-737, characters 2-8: # 692 | ..match (tM, tN) with # 693 | | (LF.Lam (_, x, tM), LF.Lam (_, _, tN)) -> # 694 | let LF.PiTyp ((tdecl, _, _), tB), s = Whnf.whnfTyp sA in # 695 | let LF.PiTyp ((tdecl', _, _), tB'), s' = Whnf.whnfTyp sA' in # 696 | let covGoal' = # ... # 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) # 735 | # 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) # 737 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, x, tM), (Root (_, _, _, _)|LFHole (_, _, _)|Clo _|Tuple (_, _))) # # File "src/core/coverage.ml", lines 684-737, characters 2-8: # 684 | ..let MetaPatt (cPhi, tN, sA') = patt in # 685 | dprintf # 686 | begin fun p -> # 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ # 688 | @,pattern: @[%a@]@]" # ... # 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) # 735 | # 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) # 737 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaSub (_, _, _)|GenPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 683-737, characters 2-8: # 683 | ..let CovGoal (cPsi, tM, sA) = covGoal in # 684 | let MetaPatt (cPhi, tN, sA') = patt in # 685 | dprintf # 686 | begin fun p -> # 687 | p.fmt "[pre_match] @[<v>cov goal: @[%a@]\ # ... # 734 | (Eqn (covGoal, patt) :: matchCands, splitCands) # 735 | # 736 | | SplitCand -> (matchCands, Split (covGoal, patt) :: splitCands) # 737 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 744-758, characters 5-18: # 744 | .....let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in # 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in # 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in # 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in # 748 | let sC2' = (tC2, LF.Dot (LF.Obj (tM'), s')) in # ... # 755 | (cPsi, tS, sB2') # 756 | (cPsi', tS', sC2') # 757 | matchCands' # 758 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 743-758, characters 5-18: # 743 | .....let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in # 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in # 745 | let covGoal1 = CovGoal (cPsi, tM, (tB1, s)) in # 746 | let patt1 = MetaPatt (cPsi', tM', (tC1, s')) in # 747 | let sB2' = (tB2, LF.Dot (LF.Obj (tM), s)) in # ... # 755 | (cPsi, tS, sB2') # 756 | (cPsi', tS', sC2') # 757 | matchCands' # 758 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 740-758, characters 2-18: # 740 | ..match (tS, tS') with # 741 | | (LF.Nil, LF.Nil) -> (matchCands, splitCands) # 742 | | (LF.App (tM, tS), LF.App (tM', tS')) -> # 743 | let LF.PiTyp ((LF.TypDecl (_, tB1), _, _), tB2), s = Whnf.whnfTyp sA in # 744 | let LF.PiTyp ((LF.TypDecl (_, tC1), _, _), tC2), s' = Whnf.whnfTyp sA' in # ... # 755 | (cPsi, tS, sB2') # 756 | (cPsi', tS', sC2') # 757 | matchCands' # 758 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Nil, (App (_, _)|SClo _)) # # File "src/core/coverage.ml", lines 793-797, characters 5-63: # 793 | .....let LF.TypDecl (_, tA1) = tdecl1 in # 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in # 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in # 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in # 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 792-797, characters 5-63: # 792 | .....let LF.TypDecl (_, tA0) = tdecl0 in # 793 | let LF.TypDecl (_, tA1) = tdecl1 in # 794 | let covGoal = CovSub (cPsi0, s0, LF.STyp (r0, cPhi0)) in # 795 | let patt = MetaSub (cPsi1, s1, LF.STyp (r1, cPhi1)) in # 796 | let (matchCands', splitCands') = pre_match_front cD cD_p (cPhi0, f0, tA0) (cPhi1, f1, tA1) matchCands splitCands in # 797 | pre_match_sub cD cD_p covGoal patt matchCands' splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 763-816, characters 2-74: # 763 | ..match ((s0, cPhi0), (s1, cPhi1)) with # 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) # 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> # 766 | if n = k # 767 | then (matchCands, splitCands) # ... # 813 | # 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) # 815 | # 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Shift _, _), # (Dot # (Head # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)| # FVar _|FMVar _|FPVar _|HClo (_, _, _)|HMClo (_, _)), # _), # _)) # # File "src/core/coverage.ml", lines 762-816, characters 2-74: # 762 | ..let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in # 763 | match ((s0, cPhi0), (s1, cPhi1)) with # 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) # 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> # 766 | if n = k # ... # 813 | # 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) # 815 | # 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MetaSub (cPsi1, s1, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 761-816, characters 2-74: # 761 | ..let CovSub (cPsi0, s0, (LF.STyp (r0, cPhi0) as sT0)) = covGoal in # 762 | let MetaSub (cPsi1, s1, (LF.STyp (r1, cPhi1) as sT1)) = patt in # 763 | match ((s0, cPhi0), (s1, cPhi1)) with # 764 | | ((LF.EmptySub, LF.Null), (LF.EmptySub, LF.Null)) -> (matchCands, splitCands) # 765 | | ((LF.Shift k, _), (LF.Shift n, _)) -> # ... # 813 | # 814 | | ((LF.SVar _, _), _) -> (matchCands, Split (covGoal, patt) :: splitCands) # 815 | # 816 | | (_, (LF.SVar _, _)) -> (Eqn (covGoal, patt) :: matchCands, splitCands) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CovSub (cPsi0, s0, (MTyp _|PTyp _)) # # File "src/core/coverage.ml", lines 819-830, characters 2-57: # 819 | ..match (f0, f1) with # 820 | | (LF.Head h0, LF.Head h1) -> # 821 | let tM0 = eta_expand (h0, tA0) in # 822 | let tM1 = eta_expand (h1, tA1) in # 823 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in # ... # 827 | | (LF.Obj tM0, LF.Obj tM1) -> # 828 | let covGoal = CovGoal (cPhi0, tM0, (tA0, S.LF.id)) in # 829 | let patt = MetaPatt (cPhi1, tM1, (tA1, S.LF.id)) in # 830 | pre_match cD cD_p covGoal patt matchCands splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Head h0, (Undef|Obj _)) # # File "src/core/coverage.ml", lines 839-851, characters 5-18: # 839 | .....let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in # 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in # 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in # 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in # 843 | let sK2' = (tK2, LF.Dot (LF.Obj tM', s')) in # ... # 848 | (cPsi, tS, sK1') # 849 | (cPsi', tS', sK2') # 850 | matchCands' # 851 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 838-851, characters 5-18: # 838 | .....let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in # 839 | let LF.PiKind ((LF.TypDecl (_, tC), _, _), tK2), s' = sK' in # 840 | let covGoal1 = CovGoal (cPsi, tM, (tB, s)) in # 841 | let patt1 = MetaPatt (cPsi', tM', (tC, s')) in # 842 | let sK1' = (tK1, LF.Dot (LF.Obj tM, s)) in # ... # 848 | (cPsi, tS, sK1') # 849 | (cPsi', tS', sK2') # 850 | matchCands' # 851 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 834-851, characters 2-18: # 834 | ..match ((tS1, sK1), (tS2, sK2)) with # 835 | | ((LF.Nil, (LF.Typ, _)), (LF.Nil, (LF.Typ, _))) -> # 836 | (matchCands, splitCands) # 837 | | ((LF.App (tM, tS), sK), (LF.App (tM', tS'), sK')) -> # 838 | let LF.PiKind ((LF.TypDecl (_, tB), _, _), tK1), s = sK in # ... # 848 | (cPsi, tS, sK1') # 849 | (cPsi', tS', sK2') # 850 | matchCands' # 851 | splitCands' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Nil, (Typ, _)), (Nil, (PiKind (_, _), _))) # # File "src/core/coverage.ml", lines 860-903, characters 2-17: # 860 | ..match (Whnf.whnfTyp sA, Whnf.whnfTyp sB) with # 861 | | ((LF.Atom (_, a, tS1), s1), (LF.Atom (loc, b, tS2), s2)) -> # 862 | let tK1 = (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind in # 863 | let tK2 = (Store.Cid.Typ.get b).Store.Cid.Typ.Entry.kind in # 864 | let tS1' = Whnf.normSpine (tS1, s1) in # ... # 900 | (trec1, s1) # 901 | (trec2, s2) # 902 | matchCands # 903 | splitCands # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((Atom (_, a, tS1), s1), ((PiTyp (_, _)|Sigma _|TClo _), _)) # # File "src/core/coverage.ml", lines 907-927, characters 2-12: # 907 | ..match (srec1, srec2) with # 908 | | ((LF.SigmaLast (_, tA1), s1), (LF.SigmaLast (_, tA2), s2)) -> # 909 | pre_match_typ cD cD_p (cPsi, (tA1, s1)) (cPhi, (tA2, s2)) matchCands splitCands # 910 | # 911 | | ((LF.SigmaElem (x1, tA1, trec1), s1), (LF.SigmaElem (x2, tA2, trec2), s2)) -> # ... # 924 | (LF.DDec (cPsi, LF.TypDecl (x1, LF.TClo (tA1, s1)))) # 925 | (LF.DDec (cPhi, LF.TypDecl (x2, LF.TClo (tA2, s2)))) # 926 | (trec1, S.LF.dot1 s1) (trec2, S.LF.dot1 s2) # 927 | mC sC # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((SigmaLast (_, tA1), s1), (SigmaElem (_, _, _), _)) # # File "src/core/coverage.ml", lines 952-1004, characters 2-31: # 952 | ..match ((mO, mt), (mO_p, mtp)) with # 953 | | LF.((CObj cPsi, _), (CObj cPsi', _)) -> # 954 | pre_match_dctx cD cD_p cPsi cPsi' mC sC # 955 | | LF.((ClObj (_, clobj), ClTyp (cltyp, cPsi)), (ClObj (_, clobj'), ClTyp (cltyp', cPsi'))) -> # 956 | match ((clobj, cltyp), (clobj', cltyp')) with # ... # 1001 | (mobj cD_p) (loc', mO_p) # 1002 | (mtyp cD_p) mtp # 1003 | in # 1004 | Error.raise_violation s # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((CObj cPsi, _), ((MUndef|ClObj (_, _)|MV _), _)) # # File "src/core/coverage.ml", lines 1092-1104, characters 5-10: # 1092 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1095 | let t2 = LF.MDot (mO, t) in # 1096 | let t2' = LF.MDot (mO', t') in # ... # 1101 | (pS, (tau2, t2)) # 1102 | (pS', (tau2', t2')) # 1103 | mC1 # 1104 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1091-1104, characters 5-10: # 1091 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1092 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1093 | let tau1 = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1094 | let tau1' = LF.ClTyp (LF.MTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1095 | let t2 = LF.MDot (mO, t) in # ... # 1101 | (pS, (tau2, t2)) # 1102 | (pS', (tau2', t2')) # 1103 | mC1 # 1104 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1110-1122, characters 5-10: # 1110 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1113 | let t2 = LF.MDot (mO, t) in # 1114 | let t2' = LF.MDot (mO', t') in # ... # 1119 | (pS, (tau2, t2)) # 1120 | (pS', (tau2', t2')) # 1121 | mC1 # 1122 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1109-1122, characters 5-10: # 1109 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1110 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1111 | let tau1 = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA, t)), Whnf.cnormDCtx (cPsi, t)) in # 1112 | let tau1' = LF.ClTyp (LF.PTyp (Whnf.cnormTyp (tA', t')), Whnf.cnormDCtx (cPsi', t')) in # 1113 | let t2 = LF.MDot (mO, t) in # ... # 1119 | (pS, (tau2, t2)) # 1120 | (pS', (tau2', t2')) # 1121 | mC1 # 1122 | sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1128-1134, characters 5-84: # 1128 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1129 | let tau1 = LF.CTyp w in # 1130 | let tau1' = LF.CTyp w' in # 1131 | let t2 = LF.MDot (mO, t) in # 1132 | let t2' = LF.MDot (mO', t')in # 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in # 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1127-1134, characters 5-84: # 1127 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1128 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1129 | let tau1 = LF.CTyp w in # 1130 | let tau1' = LF.CTyp w' in # 1131 | let t2 = LF.MDot (mO, t) in # 1132 | let t2' = LF.MDot (mO', t')in # 1133 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), tau1) ((loc', mO'), tau1') mC sC in # 1134 | match_spines (cD, cG) (cD_p, cG_p) (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1139-1147, characters 5-51: # 1139 | .....let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in # 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in # 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in # 1143 | let t2 = LF.MDot (mO, t) in # 1144 | let t2' = LF.MDot (mO', t') in # 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in # 1146 | match_spines (cD, cG) (cD_p, cG_p) # 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1138-1147, characters 5-51: # 1138 | .....let Comp.PatMetaObj (_, (loc, mO)) = pat in # 1139 | let Comp.PatMetaObj (_, (loc', mO')) = pat' in # 1140 | let mk_cltyp cl cPhi cPsi t = LF.(ClTyp (STyp (cl, Whnf.cnormDCtx (cPhi, t)), Whnf.cnormDCtx (cPsi, t))) in # 1141 | let mT1 = mk_cltyp cl cPhi cPsi t in # 1142 | let mT2 = mk_cltyp cl' cPhi' cPsi' t' in # 1143 | let t2 = LF.MDot (mO, t) in # 1144 | let t2' = LF.MDot (mO', t') in # 1145 | let (mC1, sC1) = match_metaobj cD cD_p ((loc, mO), mT1) ((loc', mO'), mT2) mC sC in # 1146 | match_spines (cD, cG) (cD_p, cG_p) # 1147 | (pS, (tau2, t2)) (pS', (tau2', t2')) mC1 sC1 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/coverage.ml", lines 1186-1224, characters 2-8: # 1186 | ..match Whnf.whnfTyp sA with # 1187 | | (LF.PiTyp ((LF.TypDecl (u, tA), _, _), tB), s) -> # 1188 | (* cPsi' |- Pi x:A.B <= typ # 1189 | cPsi |- s <= cPsi' # 1190 | cPsi |- tN <= [s]tA # ... # 1221 | Some LF.Nil # 1222 | with # 1223 | | U.Failure _ -> None # 1224 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp ((TypDeclOpt _, _, _), _), _) # # File "src/core/coverage.ml", lines 1343-1349, characters 2-29: # 1343 | ..let LF.TypDecl (_, tA) = Context.ctxDec cPsi i in (* x_i : tA in cPsi *) # 1344 | (* We call expand_head_sigma here because it might be *projections* # 1345 | of the bound variable that are relevant to the matching. # 1346 | *) # 1347 | expand_head_sigma (LF.BVar i, tA) # 1348 | |> List.map (fun (tH, tA) -> (tH, tA, 0)) # 1349 | |> genAllObj (cD, cPsi, tP) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", line 1484, characters 17-61: # 1484 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), ms) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', ((Null|CtxVar _), _, (_, _)), _) # # File "src/core/coverage.ml", lines 1468-1493, characters 2-14: # 1468 | ..match tA with # 1469 | | LF.Atom _ -> # 1470 | genPVar cov_problem @ genBVars cov_problem # 1471 | | LF.Sigma trec -> # 1472 | Error.raise_not_implemented "[genBCovGoals] not implemented for Sigma types" # ... # 1490 | in # 1491 | (cD', cg', ms) # 1492 | end # 1493 | cg_list # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/coverage.ml", line 1544, characters 17-60: # 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', ((Null|CtxVar _), _, (_, _)), _) # # File "src/core/coverage.ml", lines 1541-1552, characters 5-16: # 1541 | .....let LF.TypDecl (x, _) = tdecl in # 1542 | let cov_goals = genCovGoals (cD, LF.DDec (cPsi, tdecl), tB) in # 1543 | List.map # 1544 | begin fun (cD', (LF.DDec (cPsi', tdecl'), tM, sA), t) -> # 1545 | ( cD' # ... # 1549 | , t # 1550 | ) # 1551 | end # 1552 | cov_goals # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 1512-1552, characters 2-16: # 1512 | ..match tA with # 1513 | | LF.Atom (_, a, tS) -> # 1514 | let g_pv = genPVar cov_problem in (* (cD', cg, ms) list *) # 1515 | dprintf # 1516 | begin fun p -> # ... # 1549 | , t # 1550 | ) # 1551 | end # 1552 | cov_goals # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/coverage.ml", lines 1582-1700, characters 5-8: # 1582 | .....begin match mc with # 1583 | | Eqn (CovSub (cPsi, s, sT), MetaSub (cPsi_p, s_p, sT_p)) -> # 1584 | let cT = LF.ClTyp (sT, cPsi) in # 1585 | let cT_p = LF.ClTyp (sT_p, cPsi_p) in # 1586 | let cM = (Location.ghost, LF.ClObj (Context.dctxToHat cPsi, LF.SObj s)) in # ... # 1697 | NotSolvable # 1698 | end # 1699 | end # 1700 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Eqn (CovSub (cPsi, s, sT), (MetaPatt (_, _, _)|GenPatt (_, _, _))) # # File "src/core/coverage.ml", lines 1725-1730, characters 5-11: # 1725 | .....let CovGoal (cPsi', tR', sA') as covG = CovGoal (cPsi, tR, (tA, S.LF.id)) in # 1726 | (* let MetaPatt (cPhi, _, sB') = patt in *) # 1727 | (* let (mL', sL') = pre_match_typ cD cD_p (cPsi, sA') (cPhi, sB') matchL' splitL' in *) # 1728 | (* let (mL', sL') = pre_match_dctx cD cD_p cPsi cPhi matchL' splitL' in *) # 1729 | let result = pre_match cD cD_p covG patt matchL' splitL' in # 1730 | result # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 1719-1741, characters 2-94: # 1719 | ..match splitL with # 1720 | | [] -> (matchL, []) # 1721 | | Split (CovGoal (cPsi, tR, sA), patt) :: splits -> # 1722 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in # 1723 | let tA = Whnf.normTyp sA in # ... # 1738 | pre_match_dctx cD cD_p cPsi' cPsi_patt matchL' splitL' # 1739 | | SplitPat ((Comp.PatFVar (loc, x), (tau, t)), pPatt_p) :: splits -> # 1740 | let (matchL', splitL') = refineSplits cD cD_p matchL splits ms in # 1741 | (matchL', SplitPat ((Comp.PatFVar (loc, x), (tau, Whnf.mcomp t ms)), pPatt_p) :: splitL') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Split ((CovCtx _|CovPatt (_, _, _)), _)::_ # # File "src/core/coverage.ml", lines 1973-2000, characters 5-6: # 1973 | .....let (cPsi, (LF.Atom (_, a, _) as tP, s)) = # 1974 | Whnf.lowerTyp (LF.CtxVar (LF.CtxOffset (k + d))) (tA, s') # 1975 | in # 1976 | (* bp : Context substitution associated with declaration is off by 1 *) # 1977 | let (ss', cPsi') = Subord.thin' cD'' a cPsi in # ... # 1997 | in # 1998 | ( LF.Dec (cD'', mdec) # 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) # 2000 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cPsi, ((PiTyp ((_, _, _), _)|Sigma _|TClo (_, _)), _)) # # File "src/core/coverage.ml", lines 1964-2000, characters 2-6: # 1964 | ..match decls with # 1965 | | LF.Empty -> (cD', S.LF.id) # 1966 | | LF.(Dec (decls, TypDecl (x, tA))) -> # 1967 | let x = NameGen.renumber names x in # 1968 | let names = x :: names in # ... # 1997 | in # 1998 | ( LF.Dec (cD'', mdec) # 1999 | , LF.Dot (LF.Obj mv, Whnf.cnormSub (s', LF.MShift 1)) # 2000 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (decls, TypDeclOpt _) # # File "src/core/coverage.ml", line 1963, characters 28-52: # 1963 | let rec decTomdec names cD' (LF.CtxOffset k as cpsi) (d, decls) = # ^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) # # File "src/core/coverage.ml", line 2096, characters 17-48: # 2096 | let genCtx names (LF.Dec (cD', LF.Decl _) as cD) cpsi = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt { _ }) # # File "src/core/coverage.ml", line 2123, characters 23-82: # 2123 | let genContextGoals cD (x, LF.CTyp (Option.Some schema_cid), plicity, inductivity) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (x, CTyp None, _, _) # # File "src/core/coverage.ml", lines 2144-2178, characters 5-87: # 2144 | .....let LF.TypDecl (x, tA) = decl in # 2145 | let s = LF.SVar (2, 0, S.LF.id) in # 2146 | let mT = LF.ClTyp (LF.STyp (r0, cPhi'), cPsi) in # 2147 | let name = Whnf.newMTypName mT in # 2148 | let cD' = # ... # 2175 | in # 2176 | let cPsi' = Whnf.cnormDCtx (cPsi, LF.MShift 2) in # 2177 | let cPhi'' = Whnf.cnormDCtx (cPhi, LF.MShift 2) in # 2178 | [(cD'', CovSub (cPsi', LF.Dot (LF.Obj tM, s), LF.STyp (r0, cPhi'')), LF.MShift 2)] # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/coverage.ml", lines 2186-2239, characters 2-8: # 2186 | ..match cT with # 2187 | | LF.ClTyp (clTyp, cPsi) -> # 2188 | begin match clTyp with # 2189 | | LF.MTyp tA -> # 2190 | dprintf # ... # 2236 | , Atomic # 2237 | ) # 2238 | end # 2239 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp _ # # File "src/core/coverage.ml", lines 2249-2250, characters 11-60: # 2249 | ...........let LF.Decl { name = x; typ = cU; plicity; inductivity } = d in # 2250 | genContextGoals cD' (x, cU, plicity, inductivity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/coverage.ml", lines 2242-2278, characters 2-58: # 2242 | ..match (cv_list, cD) with # 2243 | | ([], _) -> NoCandidate # 2244 | | ([LF.CtxOffset j], LF.Dec (cD', d)) -> # 2245 | if j = k # 2246 | then # ... # 2275 | SomeCtxCands ctx_goals' # 2276 | end # 2277 | else # 2278 | best_ctx_cand (cD', cv_list) (k + 1) (d :: cD_tail) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxOffset j::[], Empty) # # File "src/core/coverage.ml", lines 2308-2309, characters 25-35: # 2308 | .........................let LF.Root (_, tH, _, _) = tR in # 2309 | LF.PObj tH # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/coverage.ml", lines 2302-2309, characters 22-35: # 2302 | ......................match cT with # 2303 | (* gonna be a ClTyp because we're in the CovGoal branch *) # 2304 | | LF.ClTyp (LF.MTyp _, _) -> LF.MObj tR # 2305 | | LF.ClTyp (LF.PTyp _, _) -> # 2306 | (* ensure that PTyp is added as a PObj to the # 2307 | msub; otherwise normalization WILL crash. *) # 2308 | let LF.Root (_, tH, _, _) = tR in # 2309 | LF.PObj tH # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/core/coverage.ml", lines 2294-2331, characters 17-50: # 2294 | .................match cg with # 2295 | | CovGoal (cPsi', tR, sA') -> # 2296 | dprintf # 2297 | begin fun p -> # 2298 | p.fmt "[best_cand] generated covgoal @[%a@]" # ... # 2328 | , Whnf.cnormClTyp (sT, LF.MShift k) # 2329 | ) # 2330 | in # 2331 | TermCandidate (cD'', cg', ms0). # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovPatt (_, _, _)) # # File "src/core/coverage.ml", lines 2335-2348, characters 11-17: # 2335 | ...........match best_cand (cD', mvlist') (k + 1) (md :: cD_tail) with # 2336 | | NoCandidate -> SomeTermCands (dep0, cov_goals0) # 2337 | | SomeTermCands (dep, cov_goals) -> # 2338 | begin match dep, dep0 with # 2339 | | Dependent, Atomic -> SomeTermCands (dep, cov_goals) # ... # 2345 | then SomeTermCands (dep, cov_goals) # 2346 | else SomeTermCands (dep0, cov_goals0) # 2347 | *) # 2348 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # SomeCtxCands _ # # File "src/core/coverage.ml", lines 2282-2356, characters 2-55: # 2282 | ..match (mv_list, cD) with # 2283 | | ([], _) -> NoCandidate # 2284 | | (LF.Offset j :: mvlist', LF.(Dec (cD', (Decl { typ = cT; _ } as md)))) -> # 2285 | if k = j # 2286 | then # ... # 2353 | best_cand (cD', mvlist') (k + 1) (md :: cD_tail) # 2354 | end # 2355 | else # 2356 | best_cand (cD', mv_list) (k + 1) (md :: cD_tail) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Offset j::mvlist', Dec (cD', DeclOpt _)) # # File "src/core/coverage.ml", lines 2430-2438, characters 7-13: # 2430 | .......match cl with # 2431 | | LF.PTyp _ -> # 2432 | let v = Whnf.newMPVar (Some u) (LF.Empty, cPsi', tP') plicity inductivity in # 2433 | LF.(PObj (mpvar ((v, Whnf.m_id), S.LF.id))) # 2434 | | LF.MTyp _ -> # 2435 | LF.MObj # 2436 | (ConvSigma.etaExpandMMVstr # 2437 | Location.ghost LF.Empty cPsi' (tP', S.LF.id) plicity (Some u) (u :: names) # 2438 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/coverage.ml", line 2581, characters 16-42: # 2581 | begin fun (CovGoal (cPsi', tR, sA')) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/coverage.ml", lines 2630-2632, characters 10-46: # 2630 | ..........match tC with # 2631 | | MTyp _ -> fun sA -> MTyp (TClo sA) # 2632 | | PTyp _ -> fun sA -> PTyp (TClo sA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/coverage.ml", lines 2626-2667, characters 5-8: # 2626 | .....begin match mT with # 2627 | | LF.(ClTyp (tC, cPsi)) -> # 2628 | let f = # 2629 | let open LF in # 2630 | match tC with # ... # 2664 | , t # 2665 | ) # 2666 | end # 2667 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp None # # File "src/core/coverage.ml", lines 2714-2762, characters 2-55: # 2714 | ..function # 2715 | | [] -> vlist # 2716 | | Split (CovGoal (_, LF.Root (_, LF.MVar (u, _), _, _), _), _) :: sl -> # 2717 | let (pvlist, cvlist, mvlist) = vlist in # 2718 | if List.mem u mvlist # ... # 2759 | let (pvlist, cvlist, mvlist) = vlist in # 2760 | if List.mem x pvlist # 2761 | then mvInSplit cD vlist sl # 2762 | else mvInSplit cD (x :: pvlist, cvlist, mvlist) sl # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # SplitCtx ((Null|DDec (_, _)), _)::_ # # File "src/core/coverage.ml", line 2773, characters 30-44: # 2773 | begin fun (LF.Offset k) (LF.Offset k') -> # ^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Inst {instantiation={ _ }; constraints={ _ }; _ } # # File "src/core/coverage.ml", line 2773, characters 16-29: # 2773 | begin fun (LF.Offset k) (LF.Offset k') -> # ^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Inst {instantiation={ _ }; constraints={ _ }; _ } # # File "src/core/coverage.ml", line 2784, characters 33-50: # 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> # ^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) # # File "src/core/coverage.ml", line 2784, characters 16-32: # 2784 | begin fun (LF.CtxOffset k) (LF.CtxOffset k') -> # ^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CtxName _|CInst ({instantiation={ _ }; constraints={ _ }; _ }, _)) # # File "src/core/coverage.ml", line 2867, characters 55-73: # 2867 | Prettycov.fmt_ppr_cov_goals (List.map (fun (TermCandidate cg) -> cg) cgoals) # ^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxCandidate (_, _, _) # # File "src/core/coverage.ml", lines 2903-2908, characters 2-33: # 2903 | ..function # 2904 | | Comp.PatNil -> Comp.PatNil # 2905 | | Comp.PatApp (loc, pat, pS) -> # 2906 | let pat' = subst_pattern (pat_r, pv) pat in # 2907 | let pS' = subst_pattern_spine (pat_r, pv) pS in # 2908 | Comp.PatApp (loc, pat', pS') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # # File "src/core/coverage.ml", line 2979, characters 32-45: # 2979 | let best_pv_cand names (cD, cG) (x :: pvlist) = # ^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/coverage.ml", lines 3002-3013, characters 2-40: # 3002 | ..match sl with # 3003 | | [] -> pvlist # 3004 | | Split (CovGoal _, _) :: sl -> pvInSplitCand sl pvlist # 3005 | | Split (CovSub _, _) :: sl -> pvInSplitCand sl pvlist # 3006 | | SplitCtx _ :: sl -> pvInSplitCand sl pvlist # ... # 3010 | ); # 3011 | if List.mem x pvlist # 3012 | then pvInSplitCand sl pvlist # 3013 | else pvInSplitCand sl (x :: pvlist) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Split ((CovCtx _|CovPatt (_, _, _)), _)::_ # # File "src/core/coverage.ml", lines 3223-3231, characters 2-27: # 3223 | ..let CovPatt (cG', pat', ttau') = covGoal in # 3224 | dprintf # 3225 | begin fun p -> # 3226 | p.fmt "[gen_candidates] @[<v>pat = @[%a@]@,pat' = @[%a@]@]" # 3227 | (P.fmt_ppr_cmp_pattern cD_p cG_p P.l0) pat # 3228 | (P.fmt_ppr_cmp_pattern cD_p cG' P.l0) pat' # 3229 | end; # 3230 | let (ml, sl) = match_pattern (cD, cG') (cD_p, cG_p) (pat', ttau') (pat, ttau) [] [] in # 3231 | Cand (cD_p, cG_p, ml, sl) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovGoal (_, _, (_, _))|CovCtx _|CovSub (_, _, _)) # # File "src/core/coverage.ml", line 3222, characters 33-66: # 3222 | let gen_candidate loc cD covGoal (cD_p, GenPatt (cG_p, pat, ttau)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_p, (MetaPatt (_, _, (_, _))|MetaSub (_, _, _))) # # File "src/core/coverage.ml", lines 3399-3434, characters 2-50: # 3399 | ..function # 3400 | | LF.Empty -> false # 3401 | | LF.Dec (cD', (LF.Decl { typ = LF.ClTyp (LF.MTyp tA, cPsi); _} as cdecl)) -> # 3402 | begin # 3403 | try # ... # 3431 | print_string "Unable to prove given type is empty\n"; check_emptiness cD' # 3432 | end # 3433 | # 3434 | | LF.Dec (cD', LF.Decl _) -> check_emptiness cD' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cD', DeclOpt _) # # File "src/core/coverage.ml", lines 3437-3447, characters 2-8: # 3437 | ..function # 3438 | | LF.Empty -> false # 3439 | | LF.Dec (cG, Comp.CTypDecl (_, tau, _)) -> # 3440 | begin # 3441 | try # ... # 3444 | | _ -> check_empty_comp names cD cG # 3445 | with # 3446 | | _ -> check_empty_comp names cD cG # 3447 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG, CTypDeclOpt _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Interactive.cmx -c -impl src/core/interactive.ml) # File "src/core/interactive.ml", lines 202-213, characters 10-26: # 202 | ..........let Cover.CovGoal (cPsi', tR, sA') = cg in # 203 | let ms' = LF.MDot (LF.ClObj (Context.dctxToHat cPsi', LF.MObj tR), ms) in # 204 | let k = List.length cD_tail in # 205 | let (cD'', ms0) = Coverage.addToMCtx cDg' (cD_tail, ms') in # 206 | let cg' = # ... # 210 | , (Whnf.cnormTyp (Whnf.normTyp sA', LF.MShift k), S.LF.id) # 211 | ) # 212 | in # 213 | (cD'', cg', ms0) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CovCtx _|CovSub (_, _, _)|CovPatt (_, _, (_, _))) # # File "src/core/interactive.ml", line 183, characters 18-73: # 183 | let genCGoals cD' (LF.Decl { name =n; typ = mtyp; plicity; inductivity }) cD_tail = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Check.cmx -c -impl src/core/check.ml) # File "src/core/check.ml", lines 471-475, characters 4-46: # 471 | ....function # 472 | | I.Root (_, h, tS, _) -> fmv_spine (fmv_head cD h) tS # 473 | | I.Lam (_, _, tM) -> fmv_normal cD tM # 474 | | I.LFHole _ -> cD # 475 | | I.Tuple (_, tuple) -> fmv_tuple cD tuple # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Clo _ # # File "src/core/check.ml", lines 490-492, characters 4-55: # 490 | ....function # 491 | | I.Nil -> cD # 492 | | I.App (tM, tS) -> fmv_spine (fmv_normal cD tM) tS # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # SClo _ # # File "src/core/check.ml", lines 500-503, characters 4-61: # 500 | ....function # 501 | | I.Null -> cD # 502 | | I.CtxVar (I.CtxOffset k) -> mark_ind cD k # 503 | | I.DDec (cPsi, decl) -> fmv_decl (fmv_dctx cD cPsi) decl # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/check.ml", lines 511-514, characters 4-38: # 511 | ....function # 512 | | I.Atom (_, _, tS) -> fmv_spine cD tS # 513 | | I.PiTyp ((decl, _, _), tA) -> fmv_typ (fmv_decl cD decl) tA # 514 | | I.Sigma trec -> fmv_trec cD trec # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/check.ml", lines 534-538, characters 4-68: # 534 | ....function # 535 | | (_, I.CObj (cPsi)) -> fmv_dctx cD cPsi # 536 | | (_, I.ClObj (phat, I.MObj tM)) -> fmv_normal cD tM # 537 | | (_, I.ClObj (phat, I.PObj h)) -> fmv_head (fmv_hat cD phat) h # 538 | | (_, I.ClObj (phat, I.SObj s)) -> fmv_subst (fmv_hat cD phat) s # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, (MUndef|MV _)) # # File "src/core/check.ml", lines 553-556, characters 4-43: # 553 | ....function # 554 | | PatNil -> cD # 555 | | PatApp (_, pat, pat_spine) -> # 556 | fmv_pat_spine (fmv cD pat) pat_spine # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PatObs (_, _, _, _) # # File "src/core/check.ml", lines 561-595, characters 4-10: # 561 | ....match (t, cD) with # 562 | | (I.MShift k, I.Empty) -> cD1' # 563 | | (I.MShift k, cD) # 564 | when k < 0 -> # 565 | Error.raise_violation "Contextual substitution ill-formed" # ... # 592 | else # 593 | id_map_ind cD1' ms cD # 594 | | _ -> id_map_ind cD1' ms cD # 595 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MDot (_, _), Dec (cD, DeclOpt _)) # # File "src/core/check.ml", line 618, characters 11-38: # 618 | |> fun (CTypDecl (u, tau, wf_tag)) -> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/check.ml", lines 747-771, characters 6-12: # 747 | ......match cPsi0 with # 748 | | Int.LF.Null -> () (* raise (Error (Location.ghost, IllegalParamTyp (cD, cPsi, tA))) *) # 749 | | Int.LF.CtxVar psi -> # 750 | (* tA is an instance of a schema block *) # 751 | let { Store.Cid.Schema.Entry.name; schema = Int.LF.Schema elems } = # ... # 768 | Unify.unifyTyp cD cPsi (tA, Substitution.LF.id) (tB0, Substitution.LF.id) # 769 | with # 770 | | _ -> checkParamTypeValid' (cPsi0', n + 1) # 771 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (cPsi0', TypDeclOpt _) # # File "src/core/check.ml", lines 776-796, characters 4-68: # 776 | ....match (mS, cKt) with # 777 | | (MetaNil, (Ctype _, _)) -> () # 778 | | (MetaApp (mO, mT, mS, plicity_app), (PiKind (_, I.Decl { typ = ctyp; plicity = plicity_pi; inductivity; _ }, cK), t)) -> # 779 | if Plicity.(plicity_app <> plicity_pi) # 780 | then Error.raise_violation "[checkMetaSpine] plicity mismatch"; # ... # 793 | Location.print_short loc # 794 | ) # 795 | end; # 796 | checkMetaSpine loc cD mS (cK, I.MDot (metaObjToMFront mO, t)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaNil, (PiKind (_, _, _), _)) # # File "src/core/check.ml", line 822, characters 20-56: # 822 | let checkCDecl cD (I.Decl { name = x; typ = ctyp; _ }) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/check.ml", lines 834-868, characters 4-35: # 834 | ....function # 835 | | TypBase (loc, c, mS) -> # 836 | let { Store.Cid.CompTyp.Entry.kind = cK; _ } = Store.Cid.CompTyp.get c in # 837 | checkMetaSpine loc cD mS (cK, C.m_id) # 838 | # ... # 865 | end; # 866 | checkTyp (I.Dec (cD, cdecl)) tau' # 867 | # 868 | | TypInd tau -> checkTyp cD tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDef (_, _, _)|TypClo (_, _)) # # File "src/core/check.ml", line 880, characters 21-39: # 880 | let extend_mctx cD (x, (I.Decl d), t) = # ^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (x, DeclOpt { _ }, _) # # File "src/core/check.ml", lines 899-916, characters 12-15: # 899 | ............begin match e2 with # 900 | | Box (_, cM, cU) | AnnBox (_, cM, cU) -> # 901 | dprintf # 902 | begin fun p -> # 903 | p.fmt "[useIH] @[<v>check whether compatible IH exists@,\ # ... # 913 | | Option.None -> Total.filter cD cG cIH (loc, E) # 914 | end # 915 | | Hole _ -> Total.drop_arg cIH # 916 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, _)|LetTuple (_, _, _)| # Let (_, _, _)|Case (_, _, _, _)|Impossible (_, _)) # # File "src/core/check.ml", lines 1114-1276, characters 4-45: # 1114 | ....function # 1115 | | Var (loc, x) as e -> # 1116 | let (f,tau', _) = lookup cG x in # 1117 | Typeinfo.Comp.add loc (Typeinfo.Comp.mk_entry cD (tau', C.m_id)) # 1118 | (Format.asprintf "Var %a" (P.fmt_ppr_cmp_exp cD cG P.l0) e); # ... # 1273 | # 1274 | | AnnBox (_, cM, cT) -> # 1275 | checkMetaObj cD cM cT C.m_id; # 1276 | (None, TypBox (getLoc cM, cT), C.m_id) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|LetTuple (_, _, _)|Let (_, _, _)| # Box (_, _, _)|Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)) # # File "src/core/check.ml", lines 1350-1357, characters 7-10: # 1350 | .......begin match (tau, theta) with # 1351 | | (TypArr (_, tau1, tau2), theta) -> # 1352 | checkPattern cD cG pat (tau1, theta); # 1353 | synPatSpine cD cG pat_spine (tau2, theta) # 1354 | | (TypPiBox (_, cdecl, tau), theta) -> # 1355 | let theta' = checkPatAgainstCDecl cD pat (cdecl, theta) in # 1356 | synPatSpine cD cG pat_spine (tau, theta') # 1357 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypBox (_, _)| # TypCross (_, _)|TypClo (_, _)|TypInd _), # _) # # File "src/core/check.ml", line 1373, characters 53-86: # 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (DeclOpt { _ }, _) # # File "src/core/check.ml", line 1373, characters 30-52: # 1373 | and checkPatAgainstCDecl cD (PatMetaObj (loc, mO)) (I.Decl { typ = ctyp; _ }, theta) = # ^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, T (_, _, _))| # PatAnn (_, _, _, _)) # # File "src/core/check.ml", lines 1665-1667, characters 4-42: # 1665 | ....let { cD = cD'; cG = cG'; cIH = I.Empty } = h in # 1666 | let (cD, cG) = validate_contexts loc (cD, cD') (cG, cG') in # 1667 | proof mcid cD cG cIH total_decs p ttau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} # # File "src/core/check.ml", lines 1678-1743, characters 4-13: # 1678 | ....match d with # 1679 | | Intros hyp -> # 1680 | let tau = Whnf.cnormCTyp ttau in # 1681 | let (cD', cG', cIH', tau', t) = unroll cD cG cIH tau in # 1682 | dprintf # ... # 1740 | end; # 1741 | proof mcid cD cG cIH total_decs p (tau, Whnf.m_id) # 1742 | end # 1743 | args # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ImpossibleSplit _ # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Lfrecon.cmx -c -impl src/core/lfrecon.ml) # File "src/core/lfrecon.ml", lines 253-262, characters 2-29: # 253 | ..function # 254 | | Apx.LF.BVar _ -> "BVar" # 255 | | Apx.LF.Const _ -> "Const" # 256 | | Apx.LF.MVar _ -> "MVar" # 257 | | Apx.LF.PVar (Apx.LF.Offset _, _) -> "PVar Offset " # 258 | | Apx.LF.PVar (Apx.LF.MInst _, _) -> "PVar PInst " # 259 | | Apx.LF.Proj (head, _) -> "Proj " ^ what_head head # 260 | | Apx.LF.FVar _ -> "FVar" # 261 | | Apx.LF.FMVar _ -> "FMVar" # 262 | | Apx.LF.FPVar _ -> "FPVar" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Hole # # File "src/core/lfrecon.ml", lines 275-276, characters 5-19: # 275 | .....let (None, d) = Context.dctxToHat cPsi in # 276 | Int.LF.Shift d # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Some _, _) # # File "src/core/lfrecon.ml", lines 311-333, characters 8-80: # 311 | ........let CTyp s_cid = mmvar1.typ in # 312 | if d = d' # 313 | then # 314 | begin # 315 | begin match c_var with # ... # 330 | true # 331 | end # 332 | else # 333 | Error.raise_not_implemented "[unify_phat] ctx_var with a full context" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (_, _) # # File "src/core/lfrecon.ml", lines 358-359, characters 9-42: # 358 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid); _ }) = Store.FCVar.get n in # 359 | Store.Cid.Schema.get_schema s_cid # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=CTyp None; _ }) # # File "src/core/lfrecon.ml", lines 352-366, characters 2-92: # 352 | ..match ctxvar with # 353 | | Some (Int.LF.CtxOffset _ as phi) -> # 354 | Store.Cid.Schema.get_schema (Context.lookupCtxVarSchema cD phi) # 355 | | Some (Int.LF.CtxName n) -> # 356 | begin # ... # 363 | # 364 | | Some Int.LF.(CInst ({ typ = CTyp (Some s_cid); _ }, _)) -> # 365 | Store.Cid.Schema.get_schema s_cid # 366 | | None -> Error.raise_violation "No context variable for which we could retrieve a schema" # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (CInst ({typ=CTyp None; _ }, _)) # # File "src/core/lfrecon.ml", lines 372-376, characters 2-44: # 372 | ..function # 373 | | Int.LF.Atom _ -> m # 374 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA) -> # 375 | dprint (fun () -> "eta FMV - add Lam "); # 376 | Apx.LF.Lam (loc, x, addPrefix loc m tA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 385-389, characters 4-62: # 385 | ....function # 386 | | Int.LF.Atom _ -> (k, s) # 387 | | Int.LF.PiTyp (_, tA) -> # 388 | let (k', s') = go (k + 1) s tA in # 389 | (k' - 1, Apx.LF.Dot (Apx.LF.Head (Apx.LF.BVar k'), s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/lfrecon.ml", lines 391-395, characters 2-18: # 391 | ..match tA, s with # 392 | | Int.LF.Atom _, _ -> (k, s) # 393 | | Int.LF.PiTyp _, None -> # 394 | let (k', s') = go k Apx.LF.Id tA in # 395 | (k', Some s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiTyp (_, _), Some _) # # File "src/core/lfrecon.ml", line 399, characters 20-40: # 399 | let etaExpandMV loc (Apx.LF.MVar (x, s)) tA = # ^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Hole|BVar _|Const _|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| # FPVar (_, _)) # # File "src/core/lfrecon.ml", lines 406-410, characters 4-52: # 406 | ....function # 407 | | Int.LF.Atom _ -> (k, tS) # 408 | | Int.LF.PiTyp (_, tA') -> # 409 | let tN = Int.LF.Root (loc, Int.LF.BVar k, Int.LF.Nil, Plicity.explicit) in # 410 | etaExpSpine (k + 1) (Int.LF.App (tN, tS)) tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/lfrecon.ml", lines 414-417, characters 4-54: # 414 | ....match tA with # 415 | | Int.LF.Atom _ -> tM # 416 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> # 417 | Int.LF.Lam (loc, x, etaExpPrefix loc (tM, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 422-424, characters 4-24: # 422 | ....match h with # 423 | | Int.LF.BVar x -> Int.LF.BVar (x + k - 1) # 424 | | Int.LF.FVar _ -> h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 457-461, characters 4-55: # 457 | ....function # 458 | | Int.LF.Atom _ -> (k, tS) # 459 | | Int.LF.PiTyp (_, tA') -> # 460 | let tN = Apx.LF.Root (loc, Apx.LF.BVar k, Apx.LF.Nil) in # 461 | etaExpApxSpine (k + 1) (Apx.LF.App (tN, tS)) tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Sigma _|TClo _) # # File "src/core/lfrecon.ml", lines 464-468, characters 4-57: # 464 | ....match tA with # 465 | | Int.LF.Atom _ -> tM # 466 | | Int.LF.PiTyp ((Int.LF.TypDecl (x, _), _, _), tA') -> # 467 | dprint (fun () -> "eta - add Lam "); # 468 | Apx.LF.Lam (loc, x, etaExpApxPrefix loc (tM, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 613-614, characters 2-33: # 613 | ..let Int.LF.TypDecl (_, Int.LF.Sigma recA) = tp in # 614 | getProjIndex loc cD cPsi recA k # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 617-630, characters 2-19: # 617 | ..match h with # 618 | | Apx.LF.BVar k -> Apx.LF.BVar (ConvSigma.map conv_list k) # 619 | # 620 | | Apx.LF.Proj (Apx.LF.BVar k, p) -> # 621 | let tp = # ... # 627 | let j = getProjIndexFromType loc cD cPsi tp p in # 628 | dprintf (fun p -> p.fmt "flattenProjPat Proj Case: k = %d j = %d@\n" k j); # 629 | let k' = ConvSigma.map conv_list k - j + 1 in # 630 | Apx.LF.BVar k' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Proj # ((Hole|Const _|MVar (_, _)|Proj (_, _)|PVar (_, _)|FVar _|FMVar (_, _)| # FPVar (_, _)), # _) # # File "src/core/lfrecon.ml", lines 637-643, characters 7-41: # 637 | .......function # 638 | | Apx.LF.Id -> Apx.LF.Id # 639 | | Apx.LF.EmptySub -> Apx.LF.EmptySub # 640 | | Apx.LF.Dot (Apx.LF.Head h, s) -> # 641 | let s' = go s in # 642 | let h' = flattenProjPatHead loc cD h conv_list cPsi in # 643 | Apx.LF.Dot (Apx.LF.Head h', s') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dot (Obj _, _) # # File "src/core/lfrecon.ml", lines 679-691, characters 2-38: # 679 | ..match s with # 680 | | Apx.LF.Id -> s # 681 | # 682 | | Apx.LF.EmptySub -> s # 683 | # ... # 688 | Apx.LF.Dot (Apx.LF.Head h, flattenSub s) # 689 | # 690 | | Apx.LF.Dot (Apx.LF.Obj (Apx.LF.Tuple (_, tM)), s) -> # 691 | flattenVarTuple tM (flattenSub s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dot (Obj (Lam (_, _, _)|Root (_, _, _)|LFHole (_, _)|Ann (_, _, _)), _) # # File "src/core/lfrecon.ml", lines 697-698, characters 2-77: # 697 | ..function # 698 | | Apx.LF.Root (_, Apx.LF.BVar k, Apx.LF.Nil) -> Apx.LF.Head (Apx.LF.BVar k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Root (_, BVar k, App (_, _)) # # File "src/core/lfrecon.ml", lines 827-829, characters 5-60: # 827 | .....let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in # 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in # 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (x, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 822-829, characters 2-60: # 822 | ..function # 823 | | Apx.LF.BVar k -> Context.ctxDec cPsi k, Int.LF.BVar k # 824 | | Apx.LF.Proj (h, nj) -> # 825 | let (tp, h') = synHead cD loc cPsi h in # 826 | let j = getProjIndexFromType loc cD cPsi tp nj in # 827 | let Int.LF.TypDecl (x, Int.LF.Sigma typRec) = tp in # 828 | let sQ = Int.LF.getType h' (typRec, S.LF.id) j in # 829 | Int.LF.TypDecl (x, Int.LF.TClo sQ), Int.LF.Proj (h', j) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Hole|Const _|MVar (_, _)|PVar (_, _)|FVar _|FMVar (_, _)|FPVar (_, _)) # # File "src/core/lfrecon.ml", lines 858-867, characters 5-8: # 858 | .....begin match synHead cD loc cPsi h with # 859 | | (Int.LF.TypDecl (x, tA), h') -> # 860 | let tA' = # 861 | pruningTyp loc cD cPsi (Context.dctxToHat cPsi) # 862 | (tA, S.LF.id) (Int.LF.MShift 0, ss) # 863 | in # 864 | ( Int.LF.DDec (cPhi, Int.LF.TypDecl (x, tA')) # 865 | , Int.LF.Dot (Int.LF.Head h', s') # 866 | ) # 867 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypDeclOpt _, _) # # File "src/core/lfrecon.ml", lines 884-890, characters 2-66: # 884 | ..function # 885 | | Apx.LF.Typ -> Int.LF.Typ # 886 | | Apx.LF.PiKind ((Apx.LF.TypDecl (x, a), depend, plicity), k) -> # 887 | let tA = elTyp Pi (*cD=*)Int.LF.Empty cPsi a in # 888 | let cPsi' = Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) in # 889 | let tK = elKind cD cPsi' k in # 890 | Int.LF.PiKind ((Int.LF.TypDecl (x, tA), depend, plicity), tK) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiKind ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 909-925, characters 2-25: # 909 | ..function # 910 | | Apx.LF.Atom (loc, a, s) -> # 911 | let { Store.Cid.Typ.Entry.kind = tK; implicit_arguments = i; _ } = Store.Cid.Typ.get a in # 912 | let s' = mkShift recT cPsi in # 913 | (* let s' = S.LF.id in *) # ... # 922 | # 923 | | Apx.LF.Sigma typRec -> # 924 | let typRec' = elTypRec recT cD cPsi typRec in # 925 | Int.LF.Sigma typRec' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/lfrecon.ml", lines 977-1023, characters 2-34: # 977 | ..match (m, sA) with # 978 | | (Apx.LF.Lam (loc, x, m), (Int.LF.PiTyp ((Int.LF.TypDecl _ as decl, _, _), tB), s)) -> # 979 | (* cPsi' = cPsi, x:tA *) # 980 | let cPsi' = Int.LF.DDec (cPsi, S.LF.decSub decl s) in # 981 | let tM = elTerm recT cD cPsi' m (tB, S.LF.dot1 s) in # ... # 1020 | | (Apx.LF.LFHole (loc, m_name), tA) -> # 1021 | let id = Holes.allocate () in # 1022 | let name = HoleId.name_of_option m_name in # 1023 | Int.LF.LFHole (loc, id, name) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _), (PiTyp ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfrecon.ml", lines 1081-1091, characters 9-12: # 1081 | .........let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in # 1082 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in # 1083 | begin # 1084 | try # 1085 | Unify.unifyTyp cD cPsi sQ sP; # ... # 1088 | | Unify.Failure msg -> # 1089 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1090 | | _ -> throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1091 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 1213-1280, characters 9-12: # 1213 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.MTyp tQ, cPhi); _ }) = Store.FCVar.get u in # 1214 | dprintf # 1215 | begin fun p -> # 1216 | p.fmt "[elTerm'] @[<v>FMV %a of type %a[%a]@,in cD_d = %a@,and cD = %a@]" # 1217 | Name.pp u # ... # 1277 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) # 1278 | |_ -> # 1279 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), (tQ', s''), sP))) # 1280 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 1476-1500, characters 9-12: # 1476 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp tA, cPhi); _ }) = Store.FCVar.get p in # 1477 | let d = Context.length cD - Context.length cD_d in # 1478 | let (tA, cPhi) = # 1479 | if d = 0 # 1480 | then (tA, cPhi) # ... # 1497 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) # 1498 | | _ -> # 1499 | raise (Check.LF.Error (loc, Check.LF.TypMismatch (cD, cPsi, (tR, S.LF.id), sQ, sP))) # 1500 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 1571-1607, characters 9-12: # 1571 | .........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.PTyp ((Int.LF.Sigma typRec) as tA), cPhi); _ }) = # 1572 | Store.FCVar.get p # 1573 | in # 1574 | let d = Context.length cD - Context.length cD_d in # 1575 | let (tA, cPhi) = # ... # 1604 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1605 | | _ -> # 1606 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1607 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, # Decl # {typ=ClTyp (PTyp (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 1808-1813, characters 10-13: # 1808 | ..........begin match S.LF.bvarSub k s'' with # 1809 | | Int.LF.Head (Int.LF.BVar j) -> # 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) # 1811 | | Int.LF.Head (Int.LF.PVar (p, r')) -> # 1812 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r' s''), tS, Plicity.explicit) # 1813 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1806-1817, characters 7-10: # 1806 | .......begin match h with # 1807 | | Int.LF.BVar k -> # 1808 | begin match S.LF.bvarSub k s'' with # 1809 | | Int.LF.Head (Int.LF.BVar j) -> # 1810 | Int.LF.Root (loc, Int.LF.BVar j, tS, Plicity.explicit) # ... # 1814 | | Int.LF.PVar (p, r) -> # 1815 | Int.LF.Root (loc, Int.LF.PVar (p, S.LF.comp r s''), tS, Plicity.explicit) # 1816 | (* | Int.LF.Proj (Int.LF.PVar (p, r), i) -> Int.LF.Root (loc, Int.LF) *) # 1817 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1857-1879, characters 5-8: # 1857 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = # 1858 | try # 1859 | Context.ctxSigmaDec cPsi x # 1860 | with # 1861 | | _ -> # ... # 1876 | with # 1877 | | Unify.Failure msg -> # 1878 | throw loc (TypMismatchElab (cD, cPsi, sP, sQ)) # 1879 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 1882-1910, characters 5-8: # 1882 | .....begin # 1883 | match Whnf.mctxPDec cD p with # 1884 | | (_, Int.LF.Sigma recA, cPsi') -> # 1885 | let t' = elSub loc recT cD cPsi t Int.LF.Subst cPsi' in # 1886 | let k = getProjIndex loc cD cPsi recA proj in # ... # 1907 | end # 1908 | | (_, Int.LF.PiTyp _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantPi)) # 1909 | | (_, Int.LF.Atom _, _) -> throw loc (IllTypedElab (cD, cPsi, sP, VariantAtom)) # 1910 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, TClo _, _) # # File "src/core/lfrecon.ml", lines 1941-1951, characters 12-15: # 1941 | ............begin match S.LF.bvarSub y s'' with # 1942 | | Int.LF.Head (Int.LF.BVar x) -> # 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) # 1944 | | Int.LF.Head (Int.LF.PVar (p, r')) -> # 1945 | Int.LF.Root # ... # 1948 | , tS # 1949 | , Plicity.explicit # 1950 | ) # 1951 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Head # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1939-1959, characters 9-12: # 1939 | .........begin match h with # 1940 | | Int.LF.BVar y -> # 1941 | begin match S.LF.bvarSub y s'' with # 1942 | | Int.LF.Head (Int.LF.BVar x) -> # 1943 | Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit) # ... # 1956 | , tS # 1957 | , Plicity.explicit # 1958 | ) # 1959 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Const _|MMVar _|MPVar _|MVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)) # # File "src/core/lfrecon.ml", lines 1044-1980, characters 2-25: # 1044 | ..match r with # 1045 | | Apx.LF.Ann (_loc, m, a) -> # 1046 | elTerm' recT cD cPsi m sP # 1047 | # 1048 | | Apx.LF.LFHole (location, m_name) -> # ... # 1977 | # 1978 | | Apx.LF.Root (loc, h, _) -> # 1979 | dprintf (fun p -> p.fmt "[elTerm' **] h = %s@\n" (what_head h)); # 1980 | throw loc CompTypAnn # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|Tuple (_, _)) # # File "src/core/lfrecon.ml", lines 2102-2104, characters 5-65: # 2102 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in # 2103 | let (tS, sQ) = elSpine loc recT cD cPsi spine (tA, S.LF.id) in # 2104 | (Int.LF.Root (loc, Int.LF.BVar x, tS, Plicity.explicit), sQ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 2159-2169, characters 5-82: # 2159 | .....let Int.LF.TypDecl (_, Int.LF.Sigma recA) = Context.ctxSigmaDec cPsi x in # 2160 | let k = getProjIndex loc cD cPsi recA proj in # 2161 | let sA = # 2162 | try # 2163 | Int.LF.getType (Int.LF.BVar x) (recA, S.LF.id) k # ... # 2166 | throw loc (ProjNotValid (cD, cPsi, k, (Int.LF.Sigma recA, S.LF.id))) # 2167 | in # 2168 | let (tS, sQ) = elSpine loc recT cD cPsi spine sA in # 2169 | (Int.LF.Root (loc, Int.LF.Proj (Int.LF.BVar x, k), tS, Plicity.explicit), sQ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDecl (_, (Atom (_, _, _)|PiTyp ((_, _, _), _)|TClo (_, _))) # # File "src/core/lfrecon.ml", lines 2276-2310, characters 11-14: # 2276 | ...........let (cD_d, Int.LF.Decl { typ = Int.LF.ClTyp (Int.LF.STyp (cl0, cPhi0), cPsi0); _ }) = # 2277 | Store.FCVar.get s_name # 2278 | in # 2279 | svar_le (cl0, cl); # 2280 | let d = Context.length cD - Context.length cD_d in # ... # 2307 | with # 2308 | | Unify.Failure msg -> # 2309 | throw loc (IllTypedSubVar (cD, cPsi, cPhi)) # 2310 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((MTyp _|PTyp _), _); _ }) # # File "src/core/lfrecon.ml", lines 2514-2516, characters 9-40: # 2514 | .........let Int.LF.TypDecl (_, tA') = Context.ctxDec (Whnf.cnormDCtx (cPsi, Whnf.m_id)) x in # 2515 | dprint (fun () -> "[elHead] done"); # 2516 | (Int.LF.BVar x, (tA', S.LF.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 2574-2576, characters 9-59: # 2574 | .........let (offset, Int.LF.ClTyp (Int.LF.MTyp tP, cPhi)) = Whnf.mctxMVarPos cD u in # 2575 | let s' = elSub loc recT cD cPsi s Int.LF.Subst cPhi in # 2576 | (Int.LF.MVar (Int.LF.Offset offset, s'), (tP, s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (offset, ClTyp ((PTyp _|STyp (_, _)), _)) # # File "src/core/lfrecon.ml", lines 2583-2585, characters 5-41: # 2583 | .....let (offset, Int.LF.ClTyp (Int.LF.PTyp tA, cPhi)) = Whnf.mctxMVarPos cD p in # 2584 | let s' = elSub loc recT cD cPsi s cl cPhi in # 2585 | (Int.LF.PVar (offset, s'), (tA, s')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (offset, ClTyp ((MTyp _|STyp (_, _)), _)) # # File "src/core/lfrecon.ml", lines 2643-2674, characters 4-36: # 2643 | ....match (sA, recT) with # 2644 | | ((Int.LF.PiTyp ((Int.LF.TypDecl (n, tA), _, _), tB), s), Pi) -> # 2645 | (* cPsi' |- tA <= typ # 2646 | * cPsi |- s <= cPsi' cPsi |- tN <= [s]A # 2647 | * # ... # 2671 | in # 2672 | # 2673 | let (spine', sP) = elSpineI loc recT cD cPsi spine (i - 1) (tB, Int.LF.Dot (Int.LF.Obj tN, s)) in # 2674 | (Int.LF.App (tN, spine'), sP) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((PiTyp ((TypDeclOpt _, _, _), _), _), _) # # File "src/core/lfrecon.ml", lines 2705-2708, characters 4-25: # 2705 | ....function # 2706 | | Int.LF.Atom _ -> 0 # 2707 | | Int.LF.PiTyp (_, tB2) -> 1 + typLength tB2 # 2708 | | Int.LF.Sigma _ -> 0........................................................ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/lfrecon.ml", lines 2725-2732, characters 4-32: # 2725 | ....match (spine, Whnf.whnfTyp sA) with # 2726 | | (Apx.LF.Nil, sP) -> # 2727 | (Int.LF.Nil, sP) (* errors are postponed to reconstruction phase *) # 2728 | # 2729 | | (Apx.LF.App (m, spine), (Int.LF.PiTyp ((Int.LF.TypDecl (_, tA), _, _), tB), s)) -> # 2730 | let tM = elTerm recT cD cPsi m (tA, s) in # 2731 | let (tS, sP) = elSpine loc recT cD cPsi spine (tB, Int.LF.Dot (Int.LF.Obj tM, s)) in # 2732 | (Int.LF.App (tM, tS), sP) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (App (m, spine), (PiTyp ((TypDeclOpt _, _, _), _), _)) # # File "src/core/lfrecon.ml", lines 2741-2760, characters 4-30: # 2741 | ....match (sK, recT) with # 2742 | | ((Int.LF.PiKind ((Int.LF.TypDecl (n, tA), _, _), tK), s), Pi) -> # 2743 | (* let sshift = mkShift recT cPsi in *) # 2744 | (* let tN = Whnf.etaExpandMV Int.LF.Null (tA, s) sshift in *) # 2745 | let tN = Whnf.etaExpandMV cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive in # ... # 2757 | Whnf.etaExpandMMV Location.ghost cD cPsi (tA, s) n S.LF.id Plicity.implicit Inductivity.not_inductive # 2758 | in # 2759 | let spine' = elKSpineI loc recT cD cPsi spine (i - 1) (tK, Int.LF.Dot (Int.LF.Obj tN, s)) in # 2760 | Int.LF.App (tN, spine') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ((PiKind ((TypDeclOpt _, _, _), _), _), _) # # File "src/core/lfrecon.ml", lines 2834-2863, characters 5-32: # 2834 | .....let Int.LF.TypDecl (_, tA) = Context.ctxDec cPsi x in # 2835 | (* cPsi |- tA : type # 2836 | * cPsi |- s' : cPsi' # 2837 | *) # 2838 | let ss = S.LF.invert s' in # ... # 2860 | in # 2861 | # 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in # 2863 | (Int.LF.App (tN', tS), tB') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/lfrecon.ml", lines 2824-2863, characters 2-32: # 2824 | ..match (spine, sP) with # 2825 | | (Apx.LF.Nil, _) -> # 2826 | let ss = S.LF.invert s' in # 2827 | let tQ = pruningTyp Location.ghost cD cPsi (Context.dctxToHat cPsi) sP (Int.LF.MShift 0, ss) in # 2828 | (* PROBLEM: [s'][ss] [s]P is not really P; in fact [ss][s]P may not exist; # ... # 2860 | in # 2861 | # 2862 | let tN' = etaExpandHead loc (Int.LF.BVar x) tA' in # 2863 | (Int.LF.App (tN', tS), tB') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (App (Root (loc, BVar x, App (_, _)), _), _) # # File "src/core/lfrecon.ml", lines 2943-2998, characters 5-8: # 2943 | .....begin match instantiation.contents with # 2944 | | None -> # 2945 | begin # 2946 | try # 2947 | let tA = Store.FVar.get x in # ... # 2995 | | _ -> # 2996 | throw loc (UnboundName x) # 2997 | end # 2998 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (IHead _|ISub _|ICtx _) # # File "src/core/lfrecon.ml", lines 2939-2998, characters 2-8: # 2939 | ..function # 2940 | | [] -> () # 2941 | | ((_, Apx.LF.(Root (loc, FVar x, spine)), # 2942 | Int.LF.(Inst {instantiation; typ = ClTyp (MTyp tP, cPsi); _})) :: cnstrs) -> # 2943 | begin match instantiation.contents with # ... # 2995 | | _ -> # 2996 | throw loc (UnboundName x) # 2997 | end # 2998 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Root (loc, FVar x, spine), # Inst {instantiation=instantiation; typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }):: # _ # # File "src/core/lfrecon.ml", lines 3020-3025, characters 7-99: # 3020 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = # 3021 | lookup_fcvar loc u # 3022 | in # 3023 | let cPhi = weakenAppropriately cD_d cPhi in # 3024 | let s'' = elSub loc cPsi s cPhi in # 3025 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FMVar (u, s''), Nil, Plicity.explicit)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((PTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 3027-3033, characters 7-98: # 3027 | .......let (cD_d, Int.LF.(Decl { typ = ClTyp (PTyp tA, cPhi); _ })) = # 3028 | lookup_fcvar loc x # 3029 | in # 3030 | let cPhi = weakenAppropriately cD_d cPhi in # 3031 | let s'' = elSub loc cPsi s cPhi in # 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in # 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD_d, Decl {typ=ClTyp ((MTyp _|STyp (_, _)), _); _ }) # # File "src/core/lfrecon.ml", lines 3017-3033, characters 4-98: # 3017 | ....match tM, Int.LF.(v.typ) with # 3018 | | Apx.LF.(Root (loc, FMVar (u, s), _nil_spine)), Int.LF.(ClTyp (MTyp _, cPsi)) -> # 3019 | assert (match _nil_spine with Apx.LF.Nil -> true | _ -> false); # 3020 | let (cD_d, Int.LF.(Decl { typ = ClTyp (MTyp _tP, cPhi); _ })) = # 3021 | lookup_fcvar loc u # ... # 3030 | let cPhi = weakenAppropriately cD_d cPhi in # 3031 | let s'' = elSub loc cPsi s cPhi in # 3032 | let (tS, _) = elSpine loc Pibox Int.LF.(v.cD) cPsi spine (tA, s'') in # 3033 | Int.LF.(v.instantiation := Some (INorm (Root (loc, FPVar (x, s''), tS, Plicity.explicit)))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Root (_, FMVar (u, s), _nil_spine), ClTyp ((PTyp _|STyp (_, _)), _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Reconstruct.cmx -c -impl src/core/reconstruct.ml) # File "src/core/reconstruct.ml", lines 55-179, characters 20-41: # 55 | ....................function # 56 | | NotImplemented f -> # 57 | Format.dprintf "@[<v 2>Not implemented:@,@[%a@]@]" # 58 | f () # 59 | | MCtxIllformed cD -> # ... # 176 | @, @[%a@]\ # 177 | @]" # 178 | P.(fmt_ppr_cmp_meta_obj cD l0) mC_p # 179 | P.(fmt_ppr_cmp_meta_obj cD l0) mC # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # IllegalSubstMatch # # File "src/core/reconstruct.ml", lines 217-218, characters 2-45: # 217 | ..function # 218 | | Int.LF.Decl d -> Name.mk_some_name d.name # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/reconstruct.ml", lines 258-267, characters 4-26: # 258 | ....match tau, n with # 259 | | _, 0 -> 0 # 260 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; inductivity = Inductivity.Inductive; _ }, tau), n -> # 261 | Error.raise_violation (Format.asprintf "[%s] impossible LF.Inductive" __FUNCTION__) # 262 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Implicit; _ }, tau), n -> # 263 | 1 + skip tau n (* implicits are free *) # 264 | | I.TypPiBox (_, Int.LF.Decl { name = u; typ = cU; plicity = Plicity.Explicit; _ }, tau), n -> # 265 | 1 + skip tau (n - 1) (* explicits pi-types cost 1 *) # 266 | | I.TypArr (_, _, tau), n -> # 267 | 1 + skip tau (n - 1).............................. # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypPiBox (_, DeclOpt _, _), 1) # # File "src/core/reconstruct.ml", lines 292-298, characters 9-92: # 292 | .........let (_, Int.LF.Decl { typ = Int.LF.CTyp (Some s_cid'); _ }) = Store.FCVar.get psi in # 293 | if Id.cid_schema_equal s_cid s_cid' # 294 | then Int.LF.CtxVar (Int.LF.CtxName psi) # 295 | else # 296 | let { Store.Cid.Schema.Entry.name; schema } = Store.Cid.Schema.get s_cid in # 297 | let c_var' = Int.LF.CtxName psi in # 298 | Check.LF.(CtxVarMismatch (cD, c_var', name, schema) |> throw (Name.location psi)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_, Decl {typ=CTyp None; _ }) # # File "src/core/reconstruct.ml", lines 343-361, characters 7-10: # 343 | .......let Int.LF.CTyp (Some s_cid) = Int.LF.(v.typ) in # 344 | begin # 345 | let cPsi = elDCtxAgainstSchema loc Lfrecon.Pibox cD cPsi s_cid in # 346 | Unify.instantiateCtxVar (Int.LF.(v.instantiation), cPsi); # 347 | match Context.ctxVar cPsi with # ... # 358 | } # 359 | ) # 360 | | _ -> () # 361 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTyp None # # File "src/core/reconstruct.ml", lines 396-400, characters 2-23: # 396 | ..match cG, k with # 397 | | Int.LF.Dec (_cG', Int.Comp.CTypDecl (_, tau, _)), 1 -> # 398 | Whnf.cnormCTyp (tau, Whnf.m_id) # 399 | | Int.LF.Dec (cG', Int.Comp.CTypDecl (_, _tau, _)), k -> # 400 | lookup cG' (k - 1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dec (cG', CTypDeclOpt _), _) # # File "src/core/reconstruct.ml", lines 410-416, characters 2-32: # 410 | ..function # 411 | | Apx.LF.Empty -> Int.LF.Empty # 412 | | Apx.LF.Dec (ctx, Apx.LF.TypDecl (name, typ)) -> # 413 | let ctx' = elTypDeclCtx cD ctx in # 414 | let tA = Lfrecon.elTyp Lfrecon.Pi cD (Context.projectCtxIntoDctx ctx') typ in # 415 | let typDecl' = Int.LF.TypDecl (name, tA) in # 416 | Int.LF.Dec (ctx', typDecl') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (ctx, TypDeclOpt _) # # File "src/core/reconstruct.ml", line 459, characters 20-52: # 459 | let elCDecl recT cD (Apx.LF.Decl (u, ctyp, plicity)) = # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt _ # # File "src/core/reconstruct.ml", lines 519-557, characters 4-26: # 519 | ....function # 520 | | (Int.LF.Typ, _s) -> # 521 | Int.LF.Nil # 522 | # 523 | | (Int.LF.(PiKind ((TypDecl (u, tA1), depend, plicity), kK), s)) -> # ... # 554 | (P.fmt_ppr_lf_typ cD cPsi P.l0) (Whnf.normTyp (tA1, s)) # 555 | end; # 556 | let tS = genSpine (kK, Int.LF.Dot (Int.LF.Obj tR, s)) in # 557 | Int.LF.App (tR, tS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind ((TypDeclOpt _, _, _), _), _) # # File "src/core/reconstruct.ml", lines 563-575, characters 2-8: # 563 | ..function # 564 | | Int.LF.Atom (_, a, _) -> # 565 | mgAtomicTyp cD cPsi a (Store.Cid.Typ.get a).Store.Cid.Typ.Entry.kind # 566 | # 567 | | Int.LF.Sigma trec -> # ... # 572 | Int.LF.PiTyp # 573 | ( (tdecl', depend, plicity) # 574 | , mgTyp cD (Int.LF.DDec (cPsi, tdecl')) tA # 575 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TClo _ # # File "src/core/reconstruct.ml", lines 578-580, characters 2-41: # 578 | ..function # 579 | | Int.LF.TypDecl (x, tA) -> # 580 | Int.LF.TypDecl (x, mgTyp cD cPsi tA) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypDeclOpt _ # # File "src/core/reconstruct.ml", lines 637-640, characters 5-18: # 637 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = # 638 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) # 639 | in # 640 | Int.LF.PObj h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Root (_, h, (App (_, _)|SClo (_, _)), _) # # File "src/core/reconstruct.ml", lines 647-650, characters 5-18: # 647 | .....let Int.LF.Root (_, h, Int.LF.Nil, _) = # 648 | Lfrecon.elTerm Lfrecon.Pibox cD cPsi' tM (tA', LF.id) # 649 | in # 650 | Int.LF.PObj h # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Root (_, h, (App (_, _)|SClo (_, _)), _) # # File "src/core/reconstruct.ml", lines 711-727, characters 2-104: # 711 | ..match (s, cKt) with # 712 | | (Apx.Comp.MetaNil, (Int.Comp.Ctype _, _)) -> # 713 | Int.Comp.MetaNil # 714 | # 715 | | (Apx.Comp.MetaNil, (Int.Comp.PiKind (_, cdecl, _cK), theta)) -> # ... # 724 | # 725 | | (Apx.Comp.MetaApp (m, s), (Int.Comp.PiKind (_, Int.LF.Decl { typ = ctyp; _ }, cK), theta)) -> # 726 | let (mO, t') = elMetaObjCTyp loc cD m theta ctyp in # 727 | Int.Comp.MetaApp(mO, Whnf.cnormMTyp (ctyp, theta), elMetaSpine loc cD s (cK, t'), Plicity.explicit) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (MetaApp (_, _), (PiKind (_, DeclOpt _, _), _)) # # File "src/core/reconstruct.ml", lines 798-803, characters 4-65: # 798 | ....function # 799 | | (Int.Comp.Ctype _, _t) -> Int.Comp.MetaNil # 800 | | (Int.Comp.PiKind (loc', Int.LF.Decl { name = u; typ = cU; plicity; inductivity }, cK), t) -> # 801 | let (mO, t') = Whnf.dotMMVar loc cD t (u, cU, plicity, inductivity) in # 802 | let mS = genMetaSpine (cK, t') in # 803 | Int.Comp.MetaApp (mO, Whnf.cnormMTyp (cU, t), mS, plicity) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PiKind (loc', DeclOpt _, _), _) # # File "src/core/reconstruct.ml", lines 830-842, characters 2-49: # 830 | ..match cPsi with # 831 | | Int.LF.CtxVar (Int.LF.CtxOffset psi_var) -> # 832 | let (n, sW) = Whnf.mctxCDec cD psi_var in # 833 | let v = # 834 | let open Int.LF in # ... # 839 | | Int.LF.DDec (cPsi, Int.LF.TypDecl (x, tA)) -> # 840 | let cPsi' = mgCtx cD' (cD, cPsi) in # 841 | let tA' = mgTyp cD' cPsi' tA in # 842 | Int.LF.DDec (cPsi', Int.LF.TypDecl (x, tA')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/reconstruct.ml", lines 921-939, characters 7-54: # 921 | .......let Int.Comp.TypBox (_, mT) = tau_p' in # 922 | dprintf # 923 | begin fun p -> # 924 | p.fmt "[synPatRefine] @[<v>unifying scrutinee and pattern:\ # 925 | @,mC = @[%a@]\ # ... # 936 | (mT, Whnf.m_id) # 937 | with # 938 | | Unify.Failure msg -> # 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypBase (_, _, _)|TypCobase (_, _, _)|TypDef (_, _, _)|TypArr (_, _, _)| # TypCross (_, T (_, _, _))|TypPiBox (_, _, _)|TypClo (_, _)|TypInd _) # # File "src/core/reconstruct.ml", lines 916-939, characters 4-54: # 916 | ....match caseT with # 917 | | DataObj -> () (* not dependent pattern matching; nothing to do *) # 918 | | IndexObj (Int.Comp.(PatMetaObj (_, mC_p) | PatAnn (_, PatMetaObj (_, mC_p), _, _)), mC) -> # 919 | let mC_p = Whnf.cnormMetaObj (mC_p, Whnf.m_id) in # 920 | (* tau_p' _has_ to be a box type if caseT is an IndexObj *) # ... # 936 | (mT, Whnf.m_id) # 937 | with # 938 | | Unify.Failure msg -> # 939 | throw loc (ImpossiblePattern (cD, mC_p, mC)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # IndexObj # (PatAnn # (_, # (PatConst (_, _, _)|PatFVar (_, _)|PatVar (_, _)|PatTuple (_, _)| # PatAnn (_, _, _, _)), _, _), # _) # # File "src/core/reconstruct.ml", lines 1369-1376, characters 7-22: # 1369 | .......match id with # 1370 | | None -> true # 1371 | | Some Apx.LF.Id -> true # 1372 | | Some Apx.LF.EmptySub -> # 1373 | let (_, cPsi, _, cPhi) = Whnf.mctxSDec cD k in # 1374 | match cPhi, cPsi with # 1375 | | Int.LF.Null, Int.LF.Null -> true # 1376 | | _ -> false # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Some (Dot (_, _)|SVar (_, _)|FSVar (_, _)) # # File "src/core/reconstruct.ml", lines 1393-1416, characters 6-9: # 1393 | ......let Apx.LF.MInst (Int.LF.SObj s0, Int.LF.ClTyp (Int.LF.STyp (cl, cPsi), cPhi)) = s in # 1394 | let cPhi2 = Lfrecon.elDCtx Lfrecon.Pibox cD phi2 in # 1395 | let s' = Lfrecon.elSub loc Lfrecon.Pibox cD cPhi2 s' cl cPhi in # 1396 | let s0' = Substitution.LF.comp s0 s' in # 1397 | begin match s0' with # ... # 1413 | else # 1414 | throw loc IllegalSubstMatch # 1415 | | _ -> throw loc IllegalSubstMatch # 1416 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MInst (SObj s0, ClTyp ((MTyp _|PTyp _), _)) # # File "src/core/reconstruct.ml", lines 1421-1442, characters 5-8: # 1421 | .....begin # 1422 | match cpsi with # 1423 | | Apx.LF.CtxVar (ctxvar) -> # 1424 | let c_var = Lfrecon.elCtxVar ctxvar in # 1425 | let cM = (loc', Int.LF.CObj (Int.LF.CtxVar c_var)) in # ... # 1439 | end # 1440 | |> throw loc # 1441 | end # 1442 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Null|CtxHole|DDec (_, _)) # # File "src/core/reconstruct.ml", lines 1194-1458, characters 2-6: # 1194 | ..match i with # 1195 | | Apx.Comp.Var (loc, offset) -> # 1196 | let tau = lookup cG offset in # 1197 | dprintf # 1198 | begin fun p -> # ... # 1455 | , ( Int.Comp.TypCross (loc, ttaus') # 1456 | , C.m_id # 1457 | ) # 1458 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Box # (_, (_, ClObj (_, Dot (Head h, (Id|Dot (_, _)|SVar (_, _)|FSVar (_, _)))))) # # File "src/core/reconstruct.ml", lines 1524-1600, characters 2-8: # 1524 | ..match (pat, ttau) with # 1525 | | (Apx.Comp.PatVar (loc, name, x), (tau, theta)) -> # 1526 | let tau' = Whnf.cnormCTyp (tau, theta) in # 1527 | dprintf # 1528 | begin fun p -> # ... # 1597 | | Unify.Failure msg -> # 1598 | dprint (fun () -> "Unify Error: " ^ msg); # 1599 | raise (Check.Comp.Error (loc, Check.Comp.SynMismatch (cD, ttau, ttau'))) # 1600 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatFVar (_, _), _) # # File "src/core/reconstruct.ml", lines 1603-1613, characters 2-57: # 1603 | ..function # 1604 | | Apx.Comp.PatAnn (loc, pat, tau) -> # 1605 | let tau' = elCompTyp cD tau in # 1606 | let (cG', pat') = elPatChk cD cG pat (tau', Whnf.m_id) in # 1607 | (cG', Int.Comp.PatAnn (loc, pat', tau', Plicity.explicit), (tau', Whnf.m_id)) # ... # 1610 | let { Store.Cid.CompConst.Entry.typ = tau; _ } = Store.Cid.CompConst.get c in # 1611 | dprintf (fun p -> p.fmt "[elPat] PatConst = %s@\n" (R.render_cid_comp_const c)); # 1612 | let (cG1, pat_spine', ttau') = elPatSpine cD cG pat_spine (tau, Whnf.m_id) in # 1613 | (cG1, Int.Comp.PatConst (loc, c, pat_spine'), ttau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PatMetaObj (_, _)|PatFVar (_, _)|PatVar (_, _, _)|PatTuple (_, _)) # # File "src/core/reconstruct.ml", lines 1690-1733, characters 5-8: # 1690 | .....begin match ttau with # 1691 | | (Int.Comp.TypCobase (_, _, _), _) -> # 1692 | let { Store.Cid.CompDest.Entry.name # 1693 | ; mctx = cD' # 1694 | ; obs_type = tau0 # ... # 1730 | let (cG', pat_spine', ttau2) = elPatSpine cD cG pat_spine ttau' in # 1731 | (cG', Int.Comp.PatApp (loc, pat', pat_spine'), ttau2) # 1732 | (* | _ -> raise (Error (loc, TypMismatch (cD, ttau, (tau1, Whnf.m_id)))) *) # 1733 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypPiBox (_, Decl {name=u; typ=cU; plicity=Explicit; _ }, _), _) # # File "src/core/reconstruct.ml", lines 1749-1756, characters 5-68: # 1749 | .....let Int.Comp.TypBox (_, Int.LF.ClTyp (Int.LF.MTyp _tQ, cPsi_s)) = tau_s in # 1750 | let cPsi = inferCtxSchema loc (cD_s, cPsi_s) (cD, psi) in # 1751 | let tP = Lfrecon.elTyp (Lfrecon.Pibox) cD cPsi a in # 1752 | let tau' = Int.Comp.TypBox(loc', Int.LF.ClTyp (Int.LF.MTyp tP, cPsi)) in # 1753 | let ttau' = (tau', Whnf.m_id) in # 1754 | let (cG', pat') = elPatChk cD Int.LF.Empty pat' ttau' in # 1755 | (* Return annotated pattern? Int.Comp.PatAnn (l, pat', tau') *) # 1756 | (cG', Int.Comp.PatAnn (l, pat', tau', Plicity.explicit), ttau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypBox (_, ClTyp ((PTyp _|STyp (_, _)), _)) # # File "src/core/reconstruct.ml", lines 1784-1801, characters 10-13: # 1784 | ..........begin match mT with # 1785 | | Int.LF.(MTyp (Atom _ | Sigma _ as tA))-> # 1786 | let cPsi' = inferCtxSchema loc (cD_s, cPsi) (cD, psi) in # 1787 | let tP' = mgTyp cD cPsi' tA in # 1788 | (loc', Int.LF.ClTyp (Int.LF.MTyp tP', cPsi')) # ... # 1798 | fixParamTyp in check.ml, and it is only used for # 1799 | coverage checking. *) # 1800 | Error.raise_violation "[recPatObj'] scrutinee PTyp should be impossible" # 1801 | end # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MTyp (TClo _) # # File "src/core/reconstruct.ml", lines 2084-2106, characters 2-5: # 2084 | ..let { I.cD = cD'; cG = cG'; cIH = Int.LF.Empty } as h' = # 2085 | elHypotheses h # 2086 | in # 2087 | dprintf # 2088 | begin fun p -> # ... # 2103 | ( loc # 2104 | , h' # 2105 | , elProof cD cG label p ttau # 2106 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # {cD=cD'; cG=cG'; cIH=Dec (_, WfRec (_, _, _))} # # File "src/core/reconstruct.ml", lines 2288-2301, characters 11-29: # 2288 | ...........match k, tA' with # 2289 | | Some k, Int.LF.Sigma tRec -> # 2290 | (* Compute the type of the kth projection of tRec. *) # 2291 | Int.LF.getType h (tRec, LF.id) k # 2292 | |> Whnf.normTyp # ... # 2298 | A projected case #n.k is required. # 2299 | *) # 2300 | assert false # 2301 | | None, tA' -> tA' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Some k, (Atom (_, _, _)|PiTyp (_, _)|TClo _)) # # File "src/core/reconstruct.ml", lines 2339-2420, characters 7-56: # 2339 | .......let Int.LF.MTyp tP = cU in # 2340 | let (cD', (cPsi', tR_p, tA_p), t) = # 2341 | match Coverage.genObj (cD, cPsi, tP) (Int.LF.Const cid, tA, k) with # 2342 | | None -> assert false # 2343 | (* FIXME: throw an appropriate error # ... # 2417 | cD_b |- [t o t']tau <= type # 2418 | *) # 2419 | in # 2420 | I.SplitBranch (l', (Int.LF.Empty, pat), t', hyp') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PTyp _|STyp (_, _)) # # File "src/core/reconstruct.ml", lines 2428-2463, characters 7-57: # 2428 | .......let Int.LF.MTyp tA = cU in # 2429 | let (cD', (cPsi', tM, sA), t) = # 2430 | match Coverage.genBVar (cD, cPsi, tA) 1 with # 2431 | | [x] -> x # 2432 | | _ -> # ... # 2460 | let l' = `bvar in # 2461 | let pb' = I.SubgoalPath.(append pb (build_meta_split i l')) in # 2462 | let hyp' = elHypothetical cD_b cG_b pb' hyp ttau_b in # 2463 | I.SplitBranch (l', (Int.LF.Empty, pat'), t', hyp') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (PTyp _|STyp (_, _)) # # File "src/core/reconstruct.ml", lines 2545-2547, characters 5-44: # 2545 | .....let Some w = w in # 2546 | let ctx_branches = List.map (make_ctx_branch w) bs in # 2547 | I.ContextSplit (i, tau_i, ctx_branches) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/reconstruct.ml", lines 2562-2568, characters 5-17: # 2562 | .....let (cD', cG', Int.LF.Empty, tau', _) = # 2563 | Check.Comp.unroll cD cG Int.LF.Empty (Whnf.cnormCTyp ttau) # 2564 | in # 2565 | let hyp = # 2566 | elHypothetical cD' cG' I.SubgoalPath.(append pb build_intros) hyp (tau', Whnf.m_id) # 2567 | in # 2568 | I.Intros hyp # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD', cG', Dec (_, WfRec (_, _, _)), _, _) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Logic.cmx -c -impl src/core/logic.ml) # File "src/core/logic.ml", lines 190-203, characters 4-36: # 190 | ....match tN with # 191 | | LF.Lam (l, n, tN') -> # 192 | begin # 193 | incr lR; # 194 | let tM = LF.Lam (l, n, shiftNormal tN' k) in # ... # 200 | | LF.Clo (tN, s) -> # 201 | LF.Clo (shiftNormal tN k, s) # 202 | | LF.Tuple (l, tP) -> # 203 | LF.Tuple (l, shiftTuple tP k) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # LFHole (_, _, _) # # File "src/core/logic.ml", lines 241-251, characters 4-8: # 241 | ....match tA with # 242 | | LF.PiTyp ((tD, _, Plicity.Implicit), tA') -> # 243 | typToClause' (LF.DDec (eV, tD)) cG tA' (cS, dS, dR) # 244 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> # 245 | typToClause' eV (Conjunct (cG, typToGoal tA (cS, dS, dR))) # ... # 248 | { tHead = (Shift.shiftAtom tA (-cS, -dS, dR)) # 249 | ; eVars = eV # 250 | ; subGoals = cG # 251 | } # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, Explicit), _) # # File "src/core/logic.ml", lines 297-306, characters 4-30: # 297 | ....match tA with # 298 | | LF.PiTyp ((tdec, _, Plicity.Implicit), tA') -> # 299 | All (tdec, typToGoal tA' (cS, dS, dR + 1)) # 300 | | LF.PiTyp ((LF.TypDecl (x, tA) as tdec, _, Plicity.Explicit), tB) -> # 301 | Impl ((typToRes tA (cS, dS, dR), tdec), typToGoal tB (cS, dS, dR + 1)) # 302 | | LF.Atom _ -> # 303 | Atom (Shift.shiftAtom tA (-cS, -dS, dR)) # 304 | | LF.TClo (tA, s) -> # 305 | dprintf begin fun p -> p.fmt "[typToGoal] TClo" end; # 306 | raise NotImplementedYet # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, Explicit), _) # # File "src/core/logic.ml", lines 309-315, characters 4-47: # 309 | ....match tM with # 310 | | LF.PiTyp ((tD, _, Plicity.Implicit), tM') -> # 311 | Exists (tD, typToRes tM' (cS, dS, dR + 1)) # 312 | | LF.PiTyp ((LF.TypDecl (_, tA), _, Plicity.Explicit), tB) -> # 313 | And (typToGoal tA (cS, dS, dR), typToRes tB (cS + 1, dS + 1, dR + 1)) # 314 | | LF.Atom _ -> # 315 | Head (Shift.shiftAtom tM (-cS, -dS, dR)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, Explicit), _) # # File "src/core/logic.ml", lines 326-348, characters 4-34: # 326 | ....match tau with # 327 | | Comp.TypBox (_loc, LF.ClTyp (LF.MTyp tA, cPsi)) -> # 328 | (* Invariant: tA will always be atomic in our implementation *) # 329 | Box (cPsi, Atom tA, Some M) # 330 | (* possibly needs to have PiBox variables shifted; # ... # 345 | let typ_dec = Comp.CTypDecl (name, tau1 , true) in # 346 | Implies ((cr1, typ_dec), cg2) # 347 | | Comp.TypBase (_, comp_cid, s) -> # 348 | Atomic (comp_cid, msToAs s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # TypBox (_, CTyp _) # # File "src/core/logic.ml", lines 351-358, characters 4-47: # 351 | ....match tau with # 352 | | Comp.TypBox (_) | Comp.TypBase(_) -> # 353 | Base tau # 354 | | Comp.TypArr (_, tau1, tau2) -> # 355 | CAnd (comptypToCompGoal tau1, comptypToCompRes tau2) # 356 | | Comp.TypPiBox (_, typ_dec, tau') -> # 357 | CExists (typ_dec, comptypToCompRes tau') # 358 | | Comp.TypInd tau' -> comptypToCompRes tau' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) # # File "src/core/logic.ml", lines 394-402, characters 4-30: # 394 | ....match box with # 395 | | Box (cPsi, Atom tA, Some M) -> # 396 | let loc = Location.ghost in # 397 | let ctyp = LF.ClTyp (LF.MTyp tA, cPsi) in # 398 | Comp.TypBox (loc, ctyp) # 399 | | Box (cPsi, Atom tA, Some P) -> # 400 | let loc = Location.ghost in # 401 | let ctyp = LF.ClTyp (LF.PTyp tA, cPsi) in # 402 | Comp.TypBox (loc, ctyp) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Box (_, Atom _, None) # # File "src/core/logic.ml", lines 412-416, characters 4-34: # 412 | ....match atomic with # 413 | | Atomic (cid, aS) -> # 414 | let loc = Location.ghost in # 415 | let mS = asToMs aS in # 416 | Comp.TypBase (loc, cid, mS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Box (_, _, _)|Implies ((_, _), _)|Forall (_, _)) # # File "src/core/logic.ml", lines 434-443, characters 4-10: # 434 | ....match tA with # 435 | | LF.Atom _ -> # 436 | let u = LF.Inst (Whnf.newMMVar None (cD, cPsi, LF.TClo (tA, s)) Plicity.implicit Inductivity.not_inductive) in # 437 | LF.Root (Location.ghost, LF.MVar (u, S.id), LF.Nil, Plicity.explicit) # 438 | | LF.PiTyp ((LF.TypDecl (x, tA) as tD, _, _), tB) -> # 439 | LF.Lam # 440 | ( Location.ghost # 441 | , x # 442 | , etaExpand cD (LF.DDec (cPsi, S.decSub tD s)) (tB, S.dot1 s) # 443 | ) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # PiTyp ((TypDeclOpt _, _, _), _) # # File "src/core/logic.ml", lines 462-470, characters 4-68: # 462 | ....match eV with # 463 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> # 464 | let (s', fS') = dctxToSub cD cPsi (eV', s) fS in # 465 | let tM' = etaExpand cD cPsi (tA, s') in # 466 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) # 467 | | LF.Null -> (s, fS) # 468 | | LF.CtxVar _ -> # 469 | invalid_arg # 470 | "Logic.Convert.dctxToSub: Match conflict with LF.CtxVar _." # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (eV', TypDeclOpt _) # # File "src/core/logic.ml", lines 475-481, characters 4-28: # 475 | ....match eV with # 476 | | LF.DDec (eV', LF.TypDecl (_, tA)) -> # 477 | let (s', fS') = dctxToSub' cD cPsi (eV', s) fS in # 478 | let tM' = etaExpand cD cPsi (tA, s') in # 479 | (LF.Dot (LF.Obj tM', s'), (fun tS -> fS' (LF.App (tM', tS)))) # 480 | | LF.Null -> (s, fS) # 481 | | LF.CtxVar _ -> (s, fS) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DDec (eV', TypDeclOpt _) # # File "src/core/logic.ml", lines 500-501, characters 6-52: # 500 | ......match lst with # 501 | | (cPsi, k) :: lst' -> (shift lst' (-1), cPsi) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 510-513, characters 6-20: # 510 | ......match dctx with # 511 | | LF.DDec (dctx', _) -> find_ctxvar_offset dctx' # 512 | | LF.CtxVar (LF.CtxOffset k) -> k # 513 | | LF.Null -> 0 # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CtxVar (CtxName _|CInst _) # # File "src/core/logic.ml", lines 697-709, characters 9-47: # 697 | .........(match mtyp with # 698 | | LF.ClTyp (LF.MTyp _, _) -> # 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in # 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in # 701 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) # ... # 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) # 707 | ((x, (loc, mfront)) :: xs) # 708 | | LF.CTyp cid_opt -> # 709 | comptypToMQuery' (tau', i-1) ms xs) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/core/logic.ml", lines 696-709, characters 9-47: # 696 | .........let LF.Decl { name = x; typ = mtyp; plicity; inductivity } = mdecl in # 697 | (match mtyp with # 698 | | LF.ClTyp (LF.MTyp _, _) -> # 699 | let mmV = Whnf.newMMVar' (Some x) (LF.Empty, mtyp) plicity inductivity in # 700 | let mfront = Whnf.mmVarToMFront loc mmV mtyp in # ... # 706 | comptypToMQuery' (tau', i-1) (LF.MDot (mfront, ms)) # 707 | ((x, (loc, mfront)) :: xs) # 708 | | LF.CTyp cid_opt -> # 709 | comptypToMQuery' (tau', i-1) ms xs) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # DeclOpt { _ } # # File "src/core/logic.ml", lines 1084-1094, characters 4-72: # 1084 | ....match r with # 1085 | | Head tH -> # 1086 | fmt_ppr_typ cD cPsi ppf (tH, s) # 1087 | | And (g, r') -> # 1088 | fprintf ppf "%a -> %a" # ... # 1091 | | Exists (LF.TypDecl (_, _tA) as tD, r') -> # 1092 | fprintf ppf "(∃%a. %a)" # 1093 | (fmt_ppr_decl cD cPsi) (tD, s) # 1094 | (fmt_ppr_res cD (LF.DDec (cPsi, S.decSub tD s))) (r', S.dot1 s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Exists (TypDeclOpt _, _) # # File "src/core/logic.ml", lines 1305-1332, characters 4-19: # 1305 | ....match s with # 1306 | | LF.Shift _ -> true # 1307 | | LF.Dot (LF.Head (((LF.MMVar ((mmvar, ms'), s)) as hd)), s') -> # 1308 | if uninstantiated hd then false # 1309 | else check_sub s' # ... # 1329 | if uninstantiated hd then false # 1330 | else check_sub s' # 1331 | | LF.Dot (_, s') -> # 1332 | check_sub s' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/logic.ml", lines 1337-1339, characters 6-48: # 1337 | ......match cD with # 1338 | | LF.Dec (_, LF.Decl d) when k = 1 -> d.plicity # 1339 | | LF.Dec (cD', _) -> get_plicity cD' (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/logic.ml", lines 1394-1412, characters 4-30: # 1394 | ....match g with # 1395 | | Atom tA -> # 1396 | matchAtom dPool cD (cPsi, k) (tA, s) sc (currDepth, maxDepth) # 1397 | # 1398 | | Impl ((r, (LF.TypDecl (x, _) as tD)), g') -> # ... # 1409 | So we just prove the conclusion in an extended context. *) # 1410 | gSolve dPool cD (LF.DDec (cPsi, S.decSub tD s), k + 1) (g', S.dot1 s) # 1411 | (fun (u, tM) -> sc (u, LF.Lam (Location.ghost, x, tM))) # 1412 | (currDepth, maxDepth) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Impl ((r, TypDeclOpt _), _) # # File "src/core/logic.ml", lines 1444-1446, characters 17-29: # 1444 | .................match cltyp with # 1445 | | LF.MTyp tau -> tau # 1446 | | LF.PTyp tau -> tau # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 1439-1483, characters 4-96: # 1439 | ....match cD with # 1440 | | LF.Empty -> raise NoSolution # 1441 | | LF.Dec (cD', LF.Decl { typ = LF.CTyp _ ; _}) -> # 1442 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) # 1443 | | LF.Dec (cD', LF.Decl { typ = LF.ClTyp (cltyp, cPsi); plicity; _ }) -> # ... # 1480 | end # 1481 | with # 1482 | | U.Failure _ -> # 1483 | solve_sub_delta (cD_all, cD', k+1, cPhi, dPool) (tA, s, curr_sub) (u, s_all) (goal, s_goal) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, DeclOpt _) # # File "src/core/logic.ml", lines 1496-1600, characters 4-76: # 1496 | ....match s with # 1497 | | LF.Shift _ -> # 1498 | dprintf begin fun p -> # 1499 | p.fmt "[trivially_prove] s_all = %a" # 1500 | (P.fmt_ppr_lf_sub cD cPhi P.l0) s_all # ... # 1597 | with # 1598 | | U.Failure _ | NoSolution -> raise NoSolution) # 1599 | | LF.Dot (_, s') -> # 1600 | trivially_prove s' s_all cD (goal, cPhi, s_goal) dPool u (curr_sub+1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (EmptySub|Undefs|SVar (_, _, _)|FSVar (_, _)|MSVar (_, _)) # # File "src/core/logic.ml", lines 2260-2263, characters 4-25: # 2260 | ....match cG with # 2261 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) when k = 1 -> name # 2262 | | LF.Dec (cG', Comp.CTypDecl (name, _, _)) -> # 2263 | get_name (k-1) cG' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG', CTypDeclOpt _) # # File "src/core/logic.ml", lines 2337-2340, characters 4-21: # 2337 | ....match cdecl with # 2338 | | Comp.CTypDecl (_, tau, _) -> # 2339 | let cc = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in # 2340 | (cc, k, Boxed) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/logic.ml", lines 2416-2417, characters 9-57: # 2416 | .........let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in # 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Full (Full (_, ({ _ }, _, _)), ({ _ }, _, _)) # # File "src/core/logic.ml", lines 2407-2418, characters 6-33: # 2407 | ......match (cP, cG) with # 2408 | | (Emp, LF.Dec(cG', cdecl)) -> # 2409 | let cc = decToCC cdecl 1 in # 2410 | let cP_ret' = shift_cPool cP_ret 1 in # 2411 | update cP cG' (prependToCPool cc cP_ret') (k+1) # ... # 2415 | if pos' = k then unbox cc else cc in # 2416 | let (Full (Emp, cc')) = cnormCPool (Full (Emp, cc), ms) in # 2417 | update cP' cG' (prependToCPool cc' cP_ret) (k+1) # 2418 | | (Emp, LF.Empty) -> cP_ret # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Full (cP', cc), Empty) # # File "src/core/logic.ml", lines 2470-2476, characters 6-36: # 2470 | ......match tA with # 2471 | | LF.Atom (l, cid, sp) -> # 2472 | LF.Atom (l, cid, remove_sp sp) # 2473 | | LF.PiTyp ((td, depend, plicity), tA') -> # 2474 | LF.PiTyp ((td, depend, plicity), remove_typ tA) # 2475 | | LF.TClo (tA', s) -> # 2476 | LF.TClo (remove_typ tA', s) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Sigma _ # # File "src/core/logic.ml", lines 2495-2508, characters 6-49: # 2495 | ......match tau with # 2496 | | Comp.TypBase (l, cid, mS) -> # 2497 | Comp.TypBase (l, cid, remove_mS mS) # 2498 | | Comp.TypBox (l, mT) -> # 2499 | (match mT with # ... # 2505 | | Comp.TypArr (l, tau1, tau2) -> # 2506 | Comp.TypArr (l, remove_tau tau1, remove_tau tau2) # 2507 | | Comp.TypPiBox (l, cdec, tau') -> # 2508 | Comp.TypPiBox (l, cdec, remove_tau tau') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)|TypInd _) # # File "src/core/logic.ml", lines 2731-2741, characters 9-52: # 2731 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in # 2732 | let mmvar' = # 2733 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity # 2734 | mmvar.LF.inductivity in # 2735 | let norm = LF.Root (noLoc, # ... # 2738 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in # 2739 | let x = Comp.M ((noLoc, mf), mT) in # 2740 | let (xs, sub) = gen_new_ih_args lst' ys in # 2741 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/logic.ml", lines 2752-2762, characters 9-52: # 2752 | .........let LF.ClTyp (LF.MTyp tA, cPsi) = mmvar.LF.typ in # 2753 | let mmvar' = # 2754 | Whnf.newMMVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity # 2755 | mmvar.LF.inductivity in # 2756 | let norm = LF.Root (noLoc, LF.MMVar # ... # 2759 | let mf = LF.ClObj (dctx_hat, LF.MObj norm) in # 2760 | let x = Comp.M ((noLoc, mf), mT) in # 2761 | let (xs, sub) = gen_new_ih_args lst' ys in # 2762 | (x :: xs, (mmvar.LF.mmvar_id, norm) :: sub) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((PTyp _|STyp (_, _)), _) # # File "src/core/logic.ml", lines 2771-2779, characters 9-58: # 2771 | .........let LF.ClTyp (LF.PTyp tA, cPsi) = mmvar.LF.typ in # 2772 | let mmvar' = # 2773 | Whnf.newMPVar None (mmvar.LF.cD, cPsi, tA) mmvar.LF.plicity # 2774 | mmvar.LF.inductivity in # 2775 | let hd = LF.MPVar ((mmvar', LF.MShift 0), LF.Shift 0) in # 2776 | let mf = LF.ClObj (dctx_hat, LF.PObj hd) in # 2777 | let x = Comp.M ((noLoc, mf), mT) in # 2778 | let (xs, sub) = gen_new_ih_args lst' ys in # 2779 | (x :: xs, (mmvar.LF.mmvar_id, LF.head hd) :: sub) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp ((MTyp _|STyp (_, _)), _) # # File "src/core/logic.ml", lines 2842-2843, characters 11-44: # 2842 | ...........let (LF.Root(_, hd',_,_)) = sub_norm (LF.head hd) sub in # 2843 | (loc, LF.ClObj (dh, LF.PObj hd')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/logic.ml", lines 2920-2921, characters 6-42: # 2920 | ......match i with # 2921 | | Comp.Var(l, k) -> Comp.Var(l, k+1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Fn (_, _, _)|Fun (_, _)|MLam (_, _, _, _)|Tuple (_, T (_, _, _))| # LetTuple (_, _, (T (_, _, _), _))|Let (_, _, (_, _))|Box (_, (_, _), _)| # Case (_, _, _, _)|Impossible (_, _)|Hole (_, _, _)|DataConst (_, _)| # Obs (_, _, _, _)|Const (_, _)|Apply (_, _, _)|MApp (_, _, (_, _), _, _)| # AnnBox (_, (_, _), _)) # # File "src/core/logic.ml", lines 2977-2978, characters 6-37: # 2977 | ......match cltyp with # 2978 | | LF.MTyp tA | LF.PTyp tA -> tA # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 2998-3001, characters 6-58: # 2998 | ......match cG_a with # 2999 | | [] -> false # 3000 | | (Comp.CTypDecl (name2, _ ,_), _, _, _, _, _) :: cG_a' -> # 3001 | (Name.equal name name2) || (old_split name cG_a') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (CTypDeclOpt _, _, _, _, _, _)::_ # # File "src/core/logic.ml", lines 3005-3009, characters 6-37: # 3005 | ......match cG_a with # 3006 | | (Comp.CTypDecl (name2, _ ,_), _, con, _, thm, bool) :: cG_a' # 3007 | when Name.equal name name2 -> # 3008 | (con, thm, bool) # 3009 | | x :: xs -> find_split name xs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3013-3065, characters 6-30: # 3013 | ......match (cG, cPool) with # 3014 | | (LF.Dec(cG', # 3015 | ((Comp.CTypDecl (name, Comp.TypBox # 3016 | (_, LF.ClTyp (cltyp, cPsi)), _wf)) # 3017 | as cdecl)), # ... # 3062 | | (LF.Dec (cG', _), Full (cPool', _)) -> # 3063 | update (cG', cPool', ret) # 3064 | # 3065 | | (LF.Empty, Emp) -> ret # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Dec (cG', _), Emp) # # File "src/core/logic.ml", lines 3084-3087, characters 6-38: # 3084 | ......match cD_a with # 3085 | | (LF.Decl d, Option.Some _, _, _, _, _) as x :: cD_a' # 3086 | when Name.equal d.name n -> x # 3087 | | _ :: cD_a' -> retrieve n cD_a' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3103-3108, characters 21-41: # 3103 | .....................match cltyp with # 3104 | | LF.MTyp tA -> # 3105 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), # 3106 | LF.Nil, Plicity.explicit)) # 3107 | | LF.PTyp tA -> # 3108 | LF.PObj (LF.PVar (1, S.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3094-3118, characters 9-31: # 3094 | .........let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = # 3095 | retrieve name cD_a in # 3096 | let (con', bool') = # 3097 | if bool then # 3098 | try # ... # 3115 | let tdecl' = Whnf.cnormCDecl (tdecl, LF.MShift 1) in # 3116 | let x = (tdecl', Some i, con', 1, thm, bool') in # 3117 | let ret' = shift_cD_a ret in # 3118 | update cD' (x :: ret') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (DeclOpt { _ }, _, _, _, _, _) # # File "src/core/logic.ml", lines 3126-3131, characters 21-41: # 3126 | .....................match cltyp with # 3127 | | LF.MTyp tA -> # 3128 | LF.MObj (LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), # 3129 | LF.Nil, Plicity.explicit)) # 3130 | | LF.PTyp tA -> # 3131 | LF.PObj (LF.PVar (1, S.id)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3090-3157, characters 6-23: # 3090 | ......match cD with # 3091 | | LF.Dec (cD', ((LF.Decl { name; typ = ((LF.ClTyp (cltyp, cPsi)) as ctyp) # 3092 | ; plicity = Plicity.Explicit; _ }) as tdecl)) # 3093 | when is_in name cD_a -> # 3094 | let (LF.Decl { typ = tau2; _ }, _, con, pos, thm, bool) = # ... # 3154 | let x = (tdecl', None, con, 1, None, bool) in # 3155 | let ret' = shift_cD_a ret in # 3156 | update cD' (x :: ret') # 3157 | | LF.Empty -> ret # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (_, DeclOpt _) # # File "src/core/logic.ml", lines 3243-3251, characters 6-44: # 3243 | ......match cG_a with # 3244 | | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, true) :: cG_a' # 3245 | when Name.equal name n -> # 3246 | (tau, i, thm_var, # 3247 | (Comp.CTypDecl (n, tau, _wf), Some i, no, k, thm_var, false) # 3248 | :: cG_a', k) # 3249 | | x :: cG_a' -> # 3250 | let (tau, i, thm_var, cG_a'', pos) = remove_var name cG_a' in # 3251 | (tau, i, thm_var, x :: cG_a'', pos) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3256-3264, characters 6-39: # 3256 | ......match cD_a with # 3257 | | (LF.Decl d, Option.Some i, no, k, thm_var, true) # 3258 | :: cD_a' when Name.equal name d.name -> # 3259 | let tau = Comp.TypBox(noLoc, d.typ) in # 3260 | (tau, i, thm_var, (LF.Decl d, Option.some i, no, k, thm_var, false) # 3261 | :: cD_a') # 3262 | | x :: cD_a' -> # 3263 | let (tau, i, thm_var, cD_a'') = remove_mvar name cD_a' in # 3264 | (tau, i, thm_var, x :: cD_a'') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3330-3332, characters 9-42: # 3330 | .........let (Some n) = find_mvar k cD_a in # 3331 | let (tau, i, thm_var, cD_a') = remove_mvar n cD_a in # 3332 | (tau, i, thm_var, cD_a', cG_a, 0). # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 3358-3365, characters 8-50: # 3358 | ........match cG_a with # 3359 | | (((Comp.CTypDecl (name2, _ ,_)) as cdecl), _, con, _, thm, bool) # 3360 | :: cG_a' when Name.equal name name2 -> # 3361 | (cdecl, con, thm, bool, cG_a') # 3362 | | x :: xs -> # 3363 | let (tdecl, num, thm_var, bool, cG_a') = # 3364 | remove xs in # 3365 | (tdecl, num, thm_var, bool, x :: cG_a') # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 3374-3399, characters 7-25: # 3374 | .......(match cltyp with # 3375 | | LF.MTyp tA -> # 3376 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.not_inductive } in # 3377 | let norm = # 3378 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in # ... # 3396 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in # 3397 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) # 3398 | :: (shift_cD_a cD_a) in # 3399 | (cD_a', cG_a')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3403-3428, characters 7-25: # 3403 | .......(match cltyp with # 3404 | | LF.MTyp _ -> # 3405 | let tdecl' = LF.Decl { name; typ = ctyp; plicity = Plicity.explicit; inductivity = Inductivity.inductive } in # 3406 | let norm = # 3407 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), LF.Nil, Plicity.explicit) in # ... # 3425 | let i = Comp.AnnBox(noLoc, mobj, ctyp) in # 3426 | let cD_a' = (tdecl', Some i, num_con, 1, thm_var, bool) # 3427 | :: (shift_cD_a cD_a) in # 3428 | (cD_a', cG_a')) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3489-3525, characters 7-31: # 3489 | .......(match cltyp with # 3490 | | LF.MTyp _ -> # 3491 | let norm = # 3492 | LF.Root (noLoc, LF.MVar (LF.Offset 1, S.id), # 3493 | LF.Nil, plicity) in # ... # 3522 | | false -> None # 3523 | in # 3524 | (tdecl', Some i, consOfLFTyp cltyp, 1, thm_var, true) # 3525 | :: (shift_cD_a cD_a)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # STyp (_, _) # # File "src/core/logic.ml", lines 3646-3651, characters 4-46: # 3646 | ....match cG with # 3647 | | LF.Empty -> cPool # 3648 | | LF.Dec (cG', Comp.CTypDecl (_, tau, _)) -> # 3649 | let clause = {cHead = tau; cMVars = LF.Empty; cSubGoals = Proved} in # 3650 | let cc = (clause, (lengthCPool cPool) + 1, Boxed) in # 3651 | gen_cPool cG' (prependToCPool cc cPool) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Dec (cG', CTypDeclOpt _) # # File "src/core/logic.ml", lines 3898-3900, characters 6-46: # 3898 | ......match cD with # 3899 | | LF.Dec (_, LF.Decl { name; _ }) when k = 1 -> name # 3900 | | LF.Dec (cD', _) -> find_name cD' (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/logic.ml", lines 4037-4047, characters 22-64: # 4037 | ......................match mobj with # 4038 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) # 4039 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) -> # 4040 | mmvar.LF.instantiation := # 4041 | Some (LF.INorm (LF.Root (noLoc, # ... # 4044 | | LF.PObj LF.MPVar ((mmvar, _), _) # 4045 | | LF.PObj LF.MMVar ((mmvar, _), _) -> # 4046 | mmvar.LF.instantiation := # 4047 | Some (LF.IHead (LF.MVar (LF.Offset k, LF.Shift 0))) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MObj # (Root # (_, # (BVar _|Const _|MVar _|PVar _|AnnH (_, _)|Proj (_, _)|FVar _|FMVar _| # FPVar _|HClo (_, _, _)|HMClo (_, _)), _, _)) # # File "src/core/logic.ml", lines 4051-4057, characters 6-26: # 4051 | ......match ih_args with # 4052 | | (Comp.M ((_, LF.ClObj (_, ((LF.PObj hd) as mobj))), _)) :: xs -> # 4053 | if Solver.uninstantiated hd then mobj else grab xs # 4054 | | (Comp.M ((_, LF.ClObj (_, ((LF.MObj (LF.Root (_,hd,_,_))) as mobj))), _)) # 4055 | :: xs-> # 4056 | if Solver.uninstantiated hd then mobj else grab xs # 4057 | | _ :: xs -> grab xs # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # [] # # File "src/core/logic.ml", lines 4060-4064, characters 14-56: # 4060 | ..............match mobj with # 4061 | | LF.MObj (LF.Root (_, LF.MMVar ((mmvar, _), _), _, _)) # 4062 | | LF.MObj (LF.Root (_, LF.MPVar ((mmvar, _), _), _, _)) # 4063 | | LF.PObj LF.MPVar ((mmvar, _), _) # 4064 | | LF.PObj LF.MMVar ((mmvar, _), _) -> mmvar.LF.typ... # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # MObj # (Root # (_, # (BVar _|Const _|MVar (_, _)|PVar (_, _)|AnnH (_, _)|Proj (_, _)| # FVar _|FMVar (_, _)|FPVar (_, _)|HClo (_, _, _)| # HMClo (_, (({instantiation={ _ }; constraints={ _ }; _ }, _), _))), _, # _)) # # File "src/core/logic.ml", lines 4079-4090, characters 6-88: # 4079 | ......let Some cid = thm_cid in # 4080 | let i = Comp.Const(noLoc, cid) in # 4081 | let sc' = (fun e -> sc (Comp.Case (noLoc, # 4082 | Comp.PragmaNotCase, # 4083 | Whnf.cnormExp (fS i, LF.MShift 0), # ... # 4087 | pattern, # 4088 | LF.MShift 0, # 4089 | e)]))) in # 4090 | find_all_occurances dec (cG', cPool', cG_a') sc' cD thm_cid thm lst' cIH' cIH_all' # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 4126-4128, characters 21-40: # 4126 | .....................match (currDepth, maxDepth) with # 4127 | | (Some k, None) -> (k, 0) # 4128 | | (Some k1, Some k2) -> (k1, k2) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (None, _) # # File "src/core/logic.ml", lines 4290-4311, characters 9-83: # 4290 | .........let Some cid = thm_cid in # 4291 | let i = arg_builder (Comp.Const(noLoc, cid)) in # 4292 | let (ms', fS) = # 4293 | C.mctxToMSub cD (cMVars, LF.MShift 0) (fun s -> s) in # 4294 | let ms'' = rev_ms ms' 0 in # ... # 4308 | with # 4309 | | U.Failure _ | DepthReached _ | End_Of_Search -> # 4310 | focusIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc # 4311 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (thm, td, thm_cid)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 4595-4597, characters 6-57: # 4595 | ......match cG with # 4596 | | LF.Dec (_, Comp.CTypDecl (_, tau, _)) when k = 1 -> tau # 4597 | | LF.Dec (cG', _) -> find_comp_assumption cG' (k-1) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Empty # # File "src/core/logic.ml", lines 4895-4905, characters 10-31: # 4895 | ..........let [(cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, # 4896 | ms_b, pat, td_b, cid)] = blist in # 4897 | # 4898 | invert_all (cD, cD_a) (cG, cPool, cG_a) cIH_b # 4899 | (normCompGoal (cg, ms)) ms_b # ... # 4902 | [Comp.Branch(noLoc, LF.Empty, (cD, cG), pat, # 4903 | ms_b, e)]))) # 4904 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 4905 | (ind, thm, td, cid) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (cD, cD_b, cD_a, cG, cG_p, cG_a, cIH_b, cPool, ms_b, pat, td_b, cid):: # (_, _, _, _, _, _, _, _, _, _, _, _)::_ # # File "src/core/logic.ml", lines 4976-5015, characters 7-35: # 4976 | .......let Atom tA = g' in # 4977 | let cltyp = LF.MTyp tA in # 4978 | let sc' = # 4979 | (fun (cPsi', tM) -> # 4980 | let dctx_hat = Context.dctxToHat cPsi' in # ... # 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5014 | (ind, thm, td, thm_cid); # 5015 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Impl ((_, _), _)|All (_, _)) # # File "src/core/logic.ml", lines 4975-5015, characters 7-35: # 4975 | .......let Box(cPsi',g',_) = cg' in # 4976 | let Atom tA = g' in # 4977 | let cltyp = LF.MTyp tA in # 4978 | let sc' = # 4979 | (fun (cPsi', tM) -> # ... # 5012 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5013 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5014 | (ind, thm, td, thm_cid); # 5015 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) # # File "src/core/logic.ml", lines 5024-5029, characters 11-51: # 5024 | ...........let LF.Root (_,hd,_,_) = tM in # 5025 | let dctx_hat = Context.dctxToHat cPsi' in # 5026 | let mfront = LF.ClObj (dctx_hat, LF.PObj hd) in # 5027 | let meta_obj = (noLoc, mfront) in # 5028 | let meta_typ = LF.ClTyp (cltyp, cPsi') in # 5029 | sc (Comp.Box(noLoc, meta_obj, meta_typ)). # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Lam (_, _, _)|LFHole (_, _, _)|Clo (_, _)|Tuple (_, _)) # # File "src/core/logic.ml", lines 5020-5060, characters 7-34: # 5020 | .......let Atom tA = g' in # 5021 | let cltyp = LF.PTyp tA in # 5022 | let sc' = # 5023 | (fun (cPsi', tM) -> # 5024 | let LF.Root (_,hd,_,_) = tM in # ... # 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5059 | (ind, thm, td, thm_cid); # 5060 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Impl ((_, _), _)|All (_, _)) # # File "src/core/logic.ml", lines 5019-5060, characters 7-34: # 5019 | .......let Box(_,g',_) = cg' in # 5020 | let Atom tA = g' in # 5021 | let cltyp = LF.PTyp tA in # 5022 | let sc' = # 5023 | (fun (cPsi', tM) -> # ... # 5057 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5058 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5059 | (ind, thm, td, thm_cid); # 5060 | raise End_Of_Search) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (Implies ((_, _), _)|Forall (_, _)|Atomic (_, _)) # # File "src/core/logic.ml", lines 4969-5085, characters 4-30: # 4969 | ....match cg with # 4970 | | Box (cPsi, g, Some M) -> # 4971 | (* We apply the msub here in case there are FREE MVARS that # 4972 | appear from unify *) # 4973 | let ms = Whnf.cnormMSub ms in # ... # 5082 | split (cD, cD_a) (cG, cPool, cG_a) cIH cg ms sc # 5083 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) # 5084 | (ind, thm, td, thm_cid); # 5085 | raise End_Of_Search # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # Box (_, _, None) # # File "src/core/logic.ml", lines 5223-5246, characters 7-36: # 5223 | .......let Some cid = thm_cid in # 5224 | let cIH_all' = Total.shift cIH_all in # 5225 | let cIH'' = Total.shift cIH' in # 5226 | let i = Comp.Const(noLoc, cid) in # 5227 | (try # ... # 5243 | | End_Of_Search | DepthReached _ -> # 5244 | blurIH (cD, cD_a) (cG, cPool, cG_a) (cIH', cIH_all) cg ms sc # 5245 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) # 5246 | (ind, thm, td, thm_cid)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5263-5286, characters 7-32: # 5263 | .......let Some cid = thm_cid in # 5264 | let i = Comp.Const(noLoc, cid) in # 5265 | let cIH'' = Total.shift cIH' in # 5266 | let cIH_all' = Total.shift cIH_all in # 5267 | let exp = Whnf.cnormExp (fS i, LF.MShift 0) in # ... # 5283 | in # 5284 | blurIH (cD, cD_a) (cG', cPool', cG_a') (cIH'', cIH_all') cg ms sc' # 5285 | (cDepth, mDepth, currSplitDepth, maxSplitDepth) # 5286 | (ind, thm, td, thm_cid) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5393-5394, characters 6-46: # 5393 | ......match cp with # 5394 | | (_cc, _k, Boxed) -> (_cc, _k, Unboxed) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (_cc, _k, Unboxed) # # File "src/core/logic.ml", lines 5441-5458, characters 10-49: # 5441 | ..........match r with # 5442 | | LF.ClTyp (LF.MTyp _, cPsi) -> # 5443 | let tM = # 5444 | LF.Root # 5445 | ( noLoc # ... # 5455 | LF.ClObj (Context.dctxToHat (Whnf.cnormDCtx (cPsi, LF.MShift 1)), # 5456 | LF.PObj hd) # 5457 | | LF.CTyp _ -> # 5458 | LF.CObj (LF.CtxVar (LF.CtxOffset 1)) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # ClTyp (STyp (_, _), _) # # File "src/core/logic.ml", lines 5549-5554, characters 7-37: # 5549 | .......let Comp.CTypDecl (name, _, _) = tdecl in # 5550 | let sc' = (fun e -> sc (Comp.Fn (noLoc, name, e))) in # 5551 | let cIH' = Total.shift cIH in # 5552 | uniform_right (cD, cD_a) (cG', cPool', cG_a') cIH' cg' ms sc' # 5553 | (currDepth, maxDepth, currSplitDepth, maxSplitDepth) (k+1) # 5554 | (ind, thm, td, thm_cid) blur # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # CTypDeclOpt _ # # File "src/core/logic.ml", lines 5587-5590, characters 24-19: # 5587 | ........................match sp with # 5588 | | 0 -> Some 0 (* No splitting. *) # 5589 | | 1 -> None (* Only inversions. *) # 5590 | | 2 -> Some 1........................ # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # 3 # # File "src/core/logic.ml", lines 5795-5798, characters 9-40: # 5795 | .........let Some iterm = !(mmvar.LF.instantiation) in # 5796 | (match iterm with # 5797 | | LF.IHead hd -> hd # 5798 | | _ -> raise NotImplementedYet) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5800-5803, characters 9-40: # 5800 | .........let Some iterm = !(mmvar.LF.instantiation) in # 5801 | (match iterm with # 5802 | | LF.IHead hd -> hd # 5803 | | _ -> raise NotImplementedYet) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5805-5808, characters 9-40: # 5805 | .........let Some iterm = !(mmvar.LF.instantiation) in # 5806 | (match iterm with # 5807 | | LF.IHead hd -> hd # 5808 | | _ -> raise NotImplementedYet) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5834-5835, characters 11-16: # 5834 | ...........let Some iterm = !(mmvar.LF.instantiation) in # 5835 | iterm # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5837-5838, characters 11-16: # 5837 | ...........let Some iterm = !(mmvar.LF.instantiation) in # 5838 | iterm # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5840-5841, characters 11-16: # 5840 | ...........let Some iterm = !(mmvar.LF.instantiation) in # 5841 | iterm # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # None # # File "src/core/logic.ml", lines 5847-5849, characters 9-33: # 5847 | .........(match remove_head_mvars hd with # 5848 | | LF.IHead hd -> LF.Root (l, hd, remove_spine_mvars spine, p) # 5849 | | LF.INorm norm -> norm) # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (ISub _|ICtx _) # # File "src/core/logic.ml", lines 6066-6076, characters 8-33: # 6066 | ........match tau with # 6067 | | Comp.TypPiBox (_, LF.Decl { inductivity = Inductivity.Inductive; _ }, _) -> Option.some n # 6068 | | Comp.TypPiBox (_, _, tau') -> ind_index tau' (n + 1) # 6069 | | Comp.TypInd (_) -> Option.some n # 6070 | | Comp.TypBox (_, _) -> Option.none # ... # 6073 | let ind = ind_index tau1 n in # 6074 | match ind with # 6075 | | Option.None -> ind_index tau2 (n + 1) # 6076 | | Option.Some _ -> ind # Warning 8 [partial-match]: this pattern-matching is not exhaustive. # Here is an example of a case that is not matched: # (TypCobase (_, _, _)|TypDef (_, _, _)|TypCross (_, _)|TypClo (_, _)) # (cd _build/default && /home/opam/.opam/5.2.0+flambda2/bin/ocamlopt.opt -w -40 -g -I src/core/.beluga.objs/byte -I src/core/.beluga.objs/native -I /home/opam/.opam/5.2.0+flambda2/lib/extlib -I /home/opam/.opam/5.2.0+flambda2/lib/gen -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/str -I /home/opam/.opam/5.2.0+flambda2/lib/ocaml/unix -I /home/opam/.opam/5.2.0+flambda2/lib/sedlex -I src/html/.beluga_html.objs/byte -I src/html/.beluga_html.objs/native -I src/parser/.beluga_parser.objs/byte -I src/parser/.beluga_parser.objs/native -I src/support/.support.objs/byte -I src/support/.support.objs/native -I src/syntax/.beluga_syntax.objs/byte -I src/syntax/.beluga_syntax.objs/native -I src/syntax/synapx/.synapx.objs/byte -I src/syntax/synapx/.synapx.objs/native -I src/syntax/syncom/.syncom.objs/byte -I src/syntax/syncom/.syncom.objs/native -I src/syntax/synext/.synext.objs/byte -I src/syntax/synext/.synext.objs/native -I src/syntax/synint/.synint.objs/byte -I src/syntax/synint/.synint.objs/native -intf-suffix .ml -no-alias-deps -open Beluga -o src/core/.beluga.objs/native/beluga__Load.cmx -c -impl src/core/load.ml) # File "src/core/load.ml", line 63, characters 33-47: # 63 | Parser.Parsing.(only signature_file) # ^^^^^^^^^^^^^^ # Error: This expression has type # "Synprs.signature_file Parser.Parsing.t" = # "Parser.Parsing.state -> # Parser.Parsing.state * (Synprs.signature_file, exn) result" # but an expression was expected of type # "Parser.Parsing.state -> Parser.Parsing.state * ('a, exn) result" # The layout of Synprs.signature_file is any # because the .cmi file for Synprs.signature_file is missing. # But the layout of Synprs.signature_file must be a sublayout of value. # No .cmi file found containing Synprs.signature_file. # Hint: Adding "synprs" to your dependencies might help. <><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> +- The following actions failed | - build beluga 1.1.2 +- +- The following changes have been performed | - install angstrom 0.16.1 | - install basement v0.18~preview.130.31+242 | - install bigstringaf 0.10.0 | - install cmdliner 1.3.0 | - install cppo 1.8.0 | - install csexp 1.5.2 | - install dune 3.18.2 | - install dune-build-info 3.18.2 | - install dune-configurator 3.18.2 | - install extlib 1.8.0 | - install gen 1.1 | - install linenoise 1.5.1 | - install ocaml-compiler-libs v0.17.0+jst | - install ocaml-syntax-shims 1.0.0 | - install ocamlbuild 0.15.0+jst | - install ocamlfind 1.9.8 | - install omd 2.0.0~alpha4 | - install ppx_derivers 1.2.1 | - install ppxlib 0.33.0+jst | - install ppxlib_ast 0.33.0+jst | - install ppxlib_jane v0.18~preview.130.31+242 | - install sedlex 3.3+jst | - install seq base | - install sexplib0 v0.18~preview.130.31+242 | - install stdlib-shims 0.3.0 | - install stringext 1.6.0 | - install topkg 1.0.8+jst | - install uri 4.4.0 | - install uucp 16.0.0 | - install uunf 16.0.0 | - install uutf 1.0.3+jst +- # To update the current shell environment, run: eval $(opam env) The former state can be restored with: /usr/bin/opam switch import "/home/opam/.opam/5.2.0+flambda2/.opam-switch/backup/state-20250513231500.export" 'opam install -vy beluga.1.1.2' failed. "/usr/bin/env" "bash" "-c" "opam remove -y beluga.1.1.2 opam install -vy beluga.1.1.2 res=$? if [ $res = 31 ]; then if opam show -f x-ci-accept-failures: beluga.1.1.2 | grep -q 'debian-unstable'; then echo "This package failed and has been disabled for CI using the 'x-ci-accept-failures' field." exit 69 fi fi exit $res" failed with exit status 31 Failed: Build failed