Mock Version: 6.5 Mock Version: 6.5 Mock Version: 6.5 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target riscv64 --nodeps /builddir/build/SPECS/ocaml-obuild.spec'], chrootPath='/var/lib/mock/f45-build-20678-572/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=864000uid=995gid=135user='mockbuild'unshare_net=TrueprintOutput=Falsenspawn_args=['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.guzcknvg:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']) Using nspawn with args ['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.guzcknvg:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '0f0a0a7e6b9b45e5a960ba0fe19a8565', '-D', '/var/lib/mock/f45-build-20678-572/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.guzcknvg:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target riscv64 --nodeps /builddir/build/SPECS/ocaml-obuild.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False Building target platforms: riscv64 Building for target riscv64 setting SOURCE_DATE_EPOCH=1784160000 Wrote: /builddir/build/SRPMS/ocaml-obuild-0.2.2-2.fc45.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target riscv64 --nodeps /builddir/build/SPECS/ocaml-obuild.spec'], chrootPath='/var/lib/mock/f45-build-20678-572/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=864000uid=995gid=135user='mockbuild'unshare_net=TrueprintOutput=Falsenspawn_args=['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.guzcknvg:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']) Using nspawn with args ['--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.guzcknvg:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '65450d10563a477487b6c822b051ce52', '-D', '/var/lib/mock/f45-build-20678-572/root', '-a', '-u', 'mockbuild', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.guzcknvg:/etc/resolv.conf', '--bind=/dev/btrfs-control', '--bind=/dev/mapper/control', '--bind=/dev/fuse', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=C.UTF-8', '--resolv-conf=off', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target riscv64 --nodeps /builddir/build/SPECS/ocaml-obuild.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8', 'SYSTEMD_NSPAWN_TMPFS_TMP': '0', 'SYSTEMD_SECCOMP': '0'} and shell False Building target platforms: riscv64 Building for target riscv64 setting SOURCE_DATE_EPOCH=1784160000 Executing(mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.s0HEht Creating(rpmbuild.env): /builddir/build/BUILD/ocaml-obuild-0.2.2-build/rpmbuild.env RPM_SOURCE_DIR="/builddir/build/SOURCES" RPM_BUILD_DIR="/builddir/build/BUILD/ocaml-obuild-0.2.2-build" RPM_OPT_FLAGS="-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" RPM_LD_FLAGS="-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes " RPM_ARCH="riscv64" RPM_OS="linux" RPM_BUILD_NCPUS="8" RPM_SPECPARTS_DIR="/builddir/build/BUILD/ocaml-obuild-0.2.2-build/SPECPARTS" export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS RPM_BUILD_NCPUS RPM_SPECPARTS_DIR RPM_LD_FLAGS RPM_DOC_DIR="/usr/share/doc" export RPM_DOC_DIR RPM_PACKAGE_NAME="ocaml-obuild" RPM_PACKAGE_VERSION="0.2.2" RPM_PACKAGE_RELEASE="2.fc45" export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE LANG=C.UTF-8 export LANG unset CDPATH DISPLAY ||: unset DEBUGINFOD_URLS ||: unset RPM_CONFIG_DIR ||: RPM_BUILD_ROOT="/builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT" export RPM_BUILD_ROOT PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:/usr/lib64/pkgconfig:/usr/share/pkgconfig" export PKG_CONFIG_PATH CONFIG_SITE=${CONFIG_SITE:-NONE} export CONFIG_SITE Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.9A9AsO + umask 022 + cd /builddir/build/BUILD/ocaml-obuild-0.2.2-build + cd /builddir/build/BUILD/ocaml-obuild-0.2.2-build + rm -rf obuild-0.2.2 + /usr/bin/rpmuncompress -x /builddir/build/SOURCES/obuild-v0.2.2.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd obuild-0.2.2 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.VGyG3H + umask 022 + cd /builddir/build/BUILD/ocaml-obuild-0.2.2-build + CFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd obuild-0.2.2 + ./bootstrap 5.5.0 COMPILING base/compat COMPILING base/location COMPILING base/fugue COMPILING base/string_utils COMPILING base/filepath COMPILING base/filesystem COMPILING base/cli File "cli.ml", line 135, characters 40-51: 135 | let command_with_subcommands name ~doc ?description ~commands = ^^^^^^^^^^^ Warning 16 [unerasable-optional-argument]: this optional argument cannot be erased. COMPILING core/types COMPILING core/gconf COMPILING core/filetype COMPILING core/dag COMPILING core/libname COMPILING core/pp COMPILING core/expr File "expr.ml", lines 147-149, characters 6-34: 147 | ......match String_utils.split ':' v ~limit:2 with 148 | | [ _ ] -> ("", v) 149 | | [ p1; rest ] -> (p1, rest) Warning 8 [partial-match]: this pattern-matching is not exhaustive. Here is an example of a case that is not matched: _::rest::_::_ File "expr.ml", lines 152-154, characters 6-34: 152 | ......match String_utils.split '-' rest ~limit:2 with 153 | | [ _ ] -> (p1, rest, "") 154 | | [ p2; p3 ] -> (p1, p2, p3) Warning 8 [partial-match]: this pattern-matching is not exhaustive. Here is an example of a case that is not matched: _::p3::_::_ COMPILING core/utils File "utils.ml", line 97, characters 17-69: 97 | ignore (List.find (fun n -> Filesystem.exists (n p)) names); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 5 [ignored-partial-application]: this function application is partial, maybe some arguments are missing. COMPILING core/modname COMPILING core/taskdep COMPILING core/helper COMPILING core/dagutils COMPILING core/process COMPILING core/findlibConf COMPILING core/scheduler COMPILING core/prog COMPILING core/dependencies COMPILING core/generators COMPILING core/hier COMPILING core/meta COMPILING core/metacache COMPILING core/obuild_lexer COMPILING core/obuild_ast COMPILING core/obuild_parser File "obuild_parser.ml", line 97, characters 6-15: 97 | let try_split sep = ^^^^^^^^^ Warning 26 [unused-var]: unused variable try_split. COMPILING core/target COMPILING core/dist COMPILING core/project COMPILING core/obuild_validate COMPILING core/project_read COMPILING core/analyze COMPILING core/configure COMPILING core/prepare_types COMPILING core/ppx_resolver COMPILING core/prepare COMPILING core/buildprogs COMPILING core/build_cstubs File "build_cstubs.ml", line 80, characters 4-43: 80 | Filesystem.mkdir_safe autogen_dir 0o755; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 10 [non-unit-statement]: this expression should have type unit. File "build_cstubs.ml", line 252, characters 4-43: 252 | Filesystem.mkdir_safe autogen_dir 0o755; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 10 [non-unit-statement]: this expression should have type unit. COMPILING core/build File "build.ml", lines 374-376, characters 4-87: 374 | ....match List.filter (fun x -> x <> []) l with 375 | | [] -> ("", []) 376 | | ((r, x) :: xs) :: ys -> (r, (x :: List.map snd xs) :: List.map (List.map snd) ys) Warning 8 [partial-match]: this pattern-matching is not exhaustive. Here is an example of a case that is not matched: []::_ COMPILING core/exception COMPILING command/sdist COMPILING command/doc COMPILING command/init COMPILING command/help COMPILING command/install COPYING modules to root for bootstrap COMPILING path_generated COMPILING main LINKING obuild.bootstrap Configuring obuild-0.2.2... Detected 8 CPU cores, setting default parallelism to 8 [ 1 of 103] Compiling Location [ 2 of 103] Compiling Compat File "lib/base/location.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. File "lib/base/compat.ml", line 8, characters 13-15: 8 | let ok x = Ok x ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 9, characters 16-21: 9 | let error e = Error e ^^^^^ Warning 41 [ambiguous-name]: Error belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 11, characters 23-25: 11 | let is_ok = function Ok _ -> true | Error _ -> false ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 12, characters 26-28: 12 | let is_error = function Ok _ -> false | Error _ -> true ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 15, characters 6-8: 15 | | Ok x -> Ok (f x) ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 15, characters 14-16: 15 | | Ok x -> Ok (f x) ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 19, characters 6-8: 19 | | Ok x -> Ok x ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 19, characters 14-16: 19 | | Ok x -> Ok x ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 23, characters 6-8: 23 | | Ok x -> f x ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 24, characters 17-22: 24 | | Error e -> Error e ^^^^^ Warning 41 [ambiguous-name]: Error belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 27, characters 6-8: 27 | | Ok x -> x ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 31, characters 6-8: 31 | | Ok x -> x ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 35, characters 6-8: 35 | | Ok _ -> invalid_arg "Result.get_error" ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/compat.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. [ 3 of 103] Intfing Fugue [ 4 of 103] Compiling Fugue [ 5 of 103] Intfing String_utils [ 6 of 103] Compiling String_utils [ 7 of 103] Intfing Cli [ 8 of 103] Intfing Filepath [ 9 of 103] Compiling Filepath [ 10 of 103] Compiling Cli [ 11 of 103] Intfing Filesystem [ 12 of 103] Compiling Filesystem File "lib/base/filesystem.ml", lines 19-22, characters 14-52: 19 | ..............match (Unix.lstat fent).Unix.st_kind with 20 | | Unix.S_DIR -> rmdir_recursive Unix.rmdir fent 21 | | Unix.S_REG -> Unix.unlink fent 22 | | _ -> raise (UnexpectedFileType fent) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Unix.file_kind. File "lib/base/cli.ml", lines 68-70, characters 4-16: 68 | ....match Hashtbl.find ctx.values name with 69 | | VBool b -> b 70 | | _ -> false Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type arg_value. File "lib/base/cli.ml", lines 75-77, characters 4-15: 75 | ....match Hashtbl.find ctx.values name with 76 | | VString s -> Some s 77 | | _ -> None Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type arg_value. File "lib/base/cli.ml", lines 87-89, characters 4-15: 87 | ....match Hashtbl.find ctx.values name with 88 | | VInt i -> Some i 89 | | _ -> None Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type arg_value. File "lib/base/cli.ml", lines 99-101, characters 4-15: 99 | ....match Hashtbl.find ctx.values name with 100 | | VBool b -> Some b 101 | | _ -> None Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type arg_value. File "lib/base/cli.ml", lines 111-114, characters 4-13: 111 | ....match Hashtbl.find ctx.values name with 112 | | VStrings l -> l 113 | | VString s -> [ s ] 114 | | _ -> [] Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type arg_value. File "lib/base/cli.ml", line 135, characters 40-51: 135 | let command_with_subcommands name ~doc ?description ~commands = ^^^^^^^^^^^ Warning 16 [unerasable-optional-argument]: this optional argument cannot be erased. File "lib/base/cli.ml", lines 619-621, characters 18-27: 619 | ..................match Hashtbl.find values spec.arg_name with 620 | | VStrings l -> l 621 | | _ -> [] Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type arg_value. File "lib/base/cli.ml", line 3, characters 0-11: 3 | open Compat ^^^^^^^^^^^ Warning 45 [open-shadow-label-constructor]: this open statement shadows the constructor Ok (which is later used) File "lib/base/cli.ml", line 757, characters 4-6: 757 | Ok () ^^ Warning 41 [ambiguous-name]: Ok belongs to several types: Compat.result Stdlib.result. The first one was selected. Please disambiguate if this is wrong. File "lib/base/cli.ml", line 3, characters 0-11: 3 | open Compat ^^^^^^^^^^^ Warning 45 [open-shadow-label-constructor]: this open statement shadows the constructor Error (which is later used) File "lib/base/cli.ml", line 22, characters 2-26: 22 | arg_env : string option; ^^^^^^^^^^^^^^^^^^^^^^^^ Warning 69 [unused-field]: record field arg_env is never read. (However, this field is used to build or mutate values.) [ 13 of 103] Linking library dist/build/lib-obuild_base/obuild_base.cmxa [ 13 of 103] Linking library dist/build/lib-obuild_base/obuild_base.cmxs [ 13 of 103] Linking library dist/build/lib-obuild_base/obuild_base.cma [ 14 of 103] Checking dist/build/lib-obuild_base [ 15 of 103] Intfing Expr [ 16 of 103] Intfing Dag [ 17 of 103] Intfing Modname [ 18 of 103] Intfing Pp [ 19 of 103] Intfing Gconf [ 20 of 103] Compiling Obuild_ast [ 21 of 103] Compiling Obuild_lexer File "lib/core/obuild_ast.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. [ 22 of 103] Intfing Filetype [ 23 of 103] Intfing Types [ 24 of 103] Compiling Expr File "lib/core/obuild_lexer.ml", line 19, characters 0-54: 19 | (** A token with its location and indentation level *) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 50 [unexpected-docstring]: ambiguous documentation comment File "lib/core/obuild_lexer.ml", lines 142-147, characters 28-39: 142 | ............................function 143 | | ({ tok = BLOCK (name, args); indent; _ }) :: more when indent > kv_indent -> 144 | let cont = String.concat " " (name :: args) in 145 | let v' = if v = "" then cont else v ^ " " ^ cont in 146 | collect v' more 147 | | remaining -> (v, remaining) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type token. File "lib/core/obuild_lexer.ml", lines 138-151, characters 17-33: 138 | .................function 139 | | [] -> [] 140 | | ({ tok = KEY_VALUE (k, v); indent = kv_indent; _ } as kv_tok) :: rest -> 141 | (* Greedily collect BLOCK tokens at strictly higher indentation *) 142 | let rec collect v = function ... 148 | in 149 | let full_v, remaining = collect v rest in 150 | { kv_tok with tok = KEY_VALUE (k, full_v) } :: loop remaining 151 | | t :: rest -> t :: loop rest Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type token. File "lib/core/obuild_lexer.ml", line 189, characters 40-43: 189 | Printf.sprintf "%d:%d indent=%d %s" t.loc.line t.loc.col t.indent (token_to_string t.tok) ^^^ Warning 41 [ambiguous-name]: loc belongs to several types: located_token Location.located. The first one was selected. Please disambiguate if this is wrong. File "lib/core/obuild_lexer.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. [ 25 of 103] Compiling Dag File "lib/core/expr.ml", lines 147-149, characters 6-34: 147 | ......match String_utils.split ':' v ~limit:2 with 148 | | [ _ ] -> ("", v) 149 | | [ p1; rest ] -> (p1, rest) Warning 8 [partial-match]: this pattern-matching is not exhaustive. Here is an example of a case that is not matched: _::rest::_::_ File "lib/core/expr.ml", lines 152-154, characters 6-34: 152 | ......match String_utils.split '-' rest ~limit:2 with 153 | | [ _ ] -> (p1, rest, "") 154 | | [ p2; p3 ] -> (p1, p2, p3) Warning 8 [partial-match]: this pattern-matching is not exhaustive. Here is an example of a case that is not matched: _::p3::_::_ File "lib/core/expr.ml", lines 251-256, characters 10-44: 251 | ..........match r with 252 | | Token.RPAREN :: r -> (Paren e, r) 253 | | Token.OR :: _ | Token.AND :: _ -> 254 | let e, r = parse_bin_expr e r in 255 | loop e r 256 | | _ -> raise UnbalancedParenthesis Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Token.t. File "lib/core/expr.ml", lines 243-265, characters 4-69: 243 | ....match l with 244 | | [] -> raise MalformedExpression 245 | | Token.NOT :: r -> 246 | let e, r = parse_sub_expr r in 247 | (Not e, r) ... 262 | | Token.LT :: Token.VER v :: r -> (Lt v, r) 263 | | Token.LE :: Token.VER v :: r -> (Le v, r) 264 | | Token.NE :: Token.VER v :: r -> (Ne v, r) 265 | | z -> raise (UnknownExpression (showList "," Token.to_string z)) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Token.t. File "lib/core/expr.ml", lines 267-274, characters 4-36: 267 | ....match l with 268 | | Token.OR :: r -> 269 | let e, r = parse_sub_expr r in 270 | (Or (expr, e), r) 271 | | Token.AND :: r -> 272 | let e, r = parse_sub_expr r in 273 | (And (expr, e), r) 274 | | _ -> raise MalformedExpression Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Token.t. File "lib/core/expr.ml", lines 309-312, characters 2-63: 309 | ..match Token.lexer s with 310 | | [] -> raise ExpressionEmpty 311 | | Token.ID name :: constraints -> (name, parse_constraints name constraints) 312 | | x :: _ -> raise (InvalidDependencyName (Token.to_string x)) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Token.t. [ 26 of 103] Compiling Pp [ 27 of 103] Compiling Modname [ 28 of 103] Compiling Gconf File "lib/core/modname.ml", line 2, characters 0-10: 2 | open Fugue ^^^^^^^^^^ Warning 33 [unused-open]: unused open Fugue. [ 29 of 103] Compiling Filetype File "lib/core/gconf.ml", lines 111-114, characters 18-18: 111 | ..................match opt with 112 | | Executable_native | Library_native | Library_bytecode -> true 113 | | Library_plugin -> Sys.os_type = "Unix" 114 | | _ -> false Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type target_option. File "lib/core/gconf.ml", lines 121-126, characters 2-11: 121 | ..match (opt, value) with 122 | | Executable_profiling, true -> set_target_option_typed Library_profiling true 123 | | Executable_debugging, true -> set_target_option_typed Library_debugging true 124 | | Library_plugin, true -> set_target_option_typed Library_native true 125 | | Library_native, false -> set_target_option_typed Library_plugin false 126 | | _ -> () Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type target_option. File "lib/core/gconf.ml", line 1, characters 0-10: 1 | open Fugue ^^^^^^^^^^ Warning 33 [unused-open]: unused open Fugue. [ 30 of 103] Compiling Types [ 31 of 103] Compiling Obuild_parser [ 32 of 103] Intfing Taskdep [ 33 of 103] Intfing Libname [ 34 of 103] Intfing Utils [ 35 of 103] Compiling Taskdep [ 36 of 103] Compiling Libname [ 37 of 103] Compiling Utils File "lib/core/utils.ml", line 97, characters 17-69: 97 | ignore (List.find (fun n -> Filesystem.exists (n p)) names); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 5 [ignored-partial-application]: this function application is partial, maybe some arguments are missing. File "lib/core/utils.ml", lines 124-126, characters 6-17: 124 | ......match status with 125 | | Unix.WEXITED 0 -> Some (int_of_string (String_utils.strip_spaces line)) 126 | | _ -> None Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Unix.process_status. [ 38 of 103] Intfing Dagutils [ 39 of 103] Intfing Helper [ 40 of 103] Compiling Dagutils File "lib/core/obuild_parser.ml", line 200, characters 0-48: 200 | (** Parse generator match type from key-value *) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 50 [unexpected-docstring]: unattached documentation comment (ignored) File "lib/core/obuild_parser.ml", lines 206-218, characters 19-29: 206 | ...................( 207 | match t.tok with 208 | | KEY_VALUE (key, value) -> 209 | let gen' = 210 | match Compat.string_lowercase key with ... 215 | | _ -> gen 216 | in 217 | loop gen' rest 218 | | _ -> loop gen rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 227-238, characters 19-29: 227 | ...................( 228 | match t.tok with 229 | | KEY_VALUE (key, value) -> 230 | let gen' = 231 | match Compat.string_lowercase key with ... 235 | | _ -> gen 236 | in 237 | loop gen' rest 238 | | _ -> loop gen rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 246-287, characters 19-32: 246 | ...................( 247 | match t.tok with 248 | | KEY_VALUE (key, value) -> 249 | let cstubs' = 250 | match Compat.string_lowercase key with ... 284 | | _ -> cstubs 285 | in 286 | loop cstubs' rest 287 | | _ -> loop cstubs rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 296-308, characters 19-29: 296 | ...................( 297 | match t.tok with 298 | | KEY_VALUE (key, value) -> 299 | let per' = 300 | match Compat.string_lowercase key with ... 305 | | _ -> per 306 | in 307 | loop per' rest 308 | | _ -> loop per rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 331-372, characters 17-43: 331 | .................( 332 | match t.tok with 333 | | KEY_VALUE (key, value) -> 334 | let lib' = 335 | match Compat.string_lowercase key with ... 369 | | _ -> lib 370 | in 371 | parse_library_tokens lib' remaining 372 | | _ -> parse_library_tokens lib rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 391-422, characters 19-29: 391 | ...................( 392 | match t.tok with 393 | | KEY_VALUE (key, value) -> 394 | let exe' = 395 | match Compat.string_lowercase key with ... 419 | | _ -> exe 420 | in 421 | loop exe' remaining 422 | | _ -> loop exe rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 439-472, characters 19-30: 439 | ...................( 440 | match t.tok with 441 | | KEY_VALUE (key, value) -> 442 | let test' = 443 | match Compat.string_lowercase key with ... 469 | | _ -> test 470 | in 471 | loop test' remaining 472 | | _ -> loop test rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 483-519, characters 19-33: 483 | ...................( 484 | match t.tok with 485 | | KEY_VALUE (key, value) -> 486 | let example' = 487 | match Compat.string_lowercase key with ... 516 | | _ -> example 517 | in 518 | loop example' remaining 519 | | _ -> loop example rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 528-560, characters 19-31: 528 | ...................( 529 | match t.tok with 530 | | KEY_VALUE (key, value) -> 531 | let bench' = 532 | match Compat.string_lowercase key with ... 557 | | _ -> bench 558 | in 559 | loop bench' remaining 560 | | _ -> loop bench rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 569-579, characters 19-30: 569 | ...................( 570 | match t.tok with 571 | | KEY_VALUE (key, value) -> 572 | let flag' = 573 | match Compat.string_lowercase key with ... 576 | | _ -> flag 577 | in 578 | loop flag' rest 579 | | _ -> loop flag rest) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", lines 618-677, characters 4-13: 618 | ....match t.tok with 619 | | KEY_VALUE (key, value) -> ( 620 | let p = !proj in 621 | proj := 622 | match Compat.string_lowercase key with ... 674 | let gen = parse_generator_block block_name block_tokens in 675 | { p with project_generators = p.project_generators @ [ gen ] } 676 | | _ -> p) 677 | | _ -> () Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Obuild_lexer.token. File "lib/core/obuild_parser.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. File "lib/core/obuild_parser.ml", line 97, characters 6-15: 97 | let try_split sep = ^^^^^^^^^ Warning 26 [unused-var]: unused variable try_split. [ 41 of 103] Compiling Helper [ 42 of 103] Intfing Process [ 43 of 103] Compiling Process File "lib/core/process.ml", line 1, characters 0-11: 1 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "lib/core/process.ml", lines 96-98, characters 2-57: 96 | ..match pstat with 97 | | Unix.WEXITED 0 -> Success (Buffer.contents p.out.buf, Buffer.contents p.err.buf, Unix.gettimeofday () -. p.time) 98 | | _ -> Failure (Buffer.contents p.err.buf) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Unix.process_status. [ 44 of 103] Intfing Generators [ 45 of 103] Intfing Scheduler [ 46 of 103] Intfing FindlibConf [ 47 of 103] Intfing Prog [ 48 of 103] Compiling Scheduler [ 49 of 103] Compiling Generators [ 50 of 103] Compiling FindlibConf File "lib/core/generators.ml", lines 152-156, characters 2-11: 152 | ..match ext with 153 | | Filetype.FileOther s -> 154 | let s_with_dot = "." ^ s in 155 | List.filter (fun gen -> gen.suffix = s || gen.suffix = s_with_dot) (get_all ()) 156 | | _ -> [] Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/core/generators.ml", line 2, characters 0-11: 2 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) [ 51 of 103] Compiling Prog [ 52 of 103] Intfing Hier [ 53 of 103] Intfing Meta [ 54 of 103] Compiling Hier [ 55 of 103] Compiling Meta [ 56 of 103] Intfing Dependencies [ 57 of 103] Compiling Dependencies [ 58 of 103] Intfing Target [ 59 of 103] Compiling Target File "lib/core/meta.ml", lines 143-145, characters 8-37: 143 | ........match p with 144 | | Predicate.Neg n -> not (List.mem n constraints) 145 | | _ -> List.mem p constraints. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Predicate.t. File "lib/core/meta.ml", lines 158-160, characters 10-40: 158 | ..........match p with 159 | | Predicate.Neg n -> not (Hashtbl.mem preds_set n) 160 | | _ -> Hashtbl.mem preds_set p. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Predicate.t. File "lib/core/meta.ml", lines 380-387, characters 28-20: 380 | ............................function 381 | | COMMA :: ID s :: xs -> 382 | let l, r = parse_predicate xs in 383 | (Predicate.of_string s :: l, r) 384 | | COMMA :: MINUS :: ID s :: xs -> 385 | let l, r = parse_predicate xs in 386 | (Predicate.Neg (Predicate.of_string s) :: l, r) 387 | | xs -> ([], xs) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 393-395, characters 8-93: 393 | ........match xs2 with 394 | | RPAREN :: xs3 -> (Predicate.of_string s :: preds, xs3) 395 | | _ -> raise (MetaParseError (name, "expecting ')' after " ^ field ^ "'s predicate")). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 398-400, characters 8-93: 398 | ........match xs2 with 399 | | RPAREN :: xs3 -> (Predicate.Neg (Predicate.of_string s) :: preds, xs3) 400 | | _ -> raise (MetaParseError (name, "expecting ')' after " ^ field ^ "'s predicate")). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 389-401, characters 40-20: 389 | ........................................function 390 | | LPAREN :: RPAREN :: xs -> ([], xs) 391 | | LPAREN :: ID s :: xs -> ( 392 | let preds, xs2 = parse_predicate xs in 393 | match xs2 with ... 398 | match xs2 with 399 | | RPAREN :: xs3 -> (Predicate.Neg (Predicate.of_string s) :: preds, xs3) 400 | | _ -> raise (MetaParseError (name, "expecting ')' after " ^ field ^ "'s predicate"))) 401 | | xs -> ([], xs) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 416-432, characters 8-28: 416 | ........match xs2 with 417 | | PLUSEQ :: S reqs :: xs3 | EQ :: S reqs :: xs3 -> 418 | let deps = 419 | List.map (fun r -> Libname.of_string r) 420 | $ (List.filter (fun x -> x <> "") ... 429 | (MetaParseError 430 | ( pkg_name, 431 | "parsing requires failed: expected '=' or '+=' followed by quoted dependency \ 432 | list" )). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 440-447, characters 8-94: 440 | ........match xs2 with 441 | | EQ :: S v :: xs3 -> 442 | let nacc = { acc with Pkg.warning = acc.Pkg.warning @ [ (preds, v) ] } in 443 | parse pkg_name nacc expecting_rparen xs3 444 | | _ -> 445 | raise 446 | (MetaParseError 447 | (pkg_name, "parsing warning failed: expected '=' followed by quoted string")). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 450-462, characters 8-102: 450 | ........match xs2 with 451 | | PLUSEQ :: S v :: xs3 -> 452 | let nacc = 453 | { acc with Pkg.append_archives = acc.Pkg.append_archives @ [ (preds, v) ] } 454 | in ... 459 | | _ -> 460 | raise 461 | (MetaParseError 462 | (pkg_name, "parsing archive failed: expected '=' or '+=' followed by quoted string")) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 467-480, characters 8-98: 467 | ........match xs2 with 468 | | PLUSEQ :: S v :: xs3 -> 469 | let nacc = 470 | { acc with Pkg.append_archives = acc.Pkg.append_archives @ [ (preds, v) ] } 471 | in ... 477 | raise 478 | (MetaParseError 479 | ( pkg_name, 480 | "parsing plugin failed: expected '=' or '+=' followed by quoted plugin path" )). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 485-491, characters 8-101: 485 | ........match xs2 with 486 | | EQ :: S v :: xs3 -> 487 | parse pkg_name { acc with Pkg.ppx = Some (preds, v) } expecting_rparen xs3 488 | | _ -> 489 | raise 490 | (MetaParseError 491 | (pkg_name, "parsing ppx failed: expected '=' followed by quoted preprocessor path")) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 495-503, characters 8-102: 495 | ........match xs2 with 496 | | PLUSEQ :: S v :: xs3 | EQ :: S v :: xs3 -> 497 | parse pkg_name 498 | { acc with Pkg.ppxopt = acc.Pkg.ppxopt @ [ (preds, v) ] } 499 | expecting_rparen xs3 500 | | _ -> 501 | raise 502 | (MetaParseError 503 | (pkg_name, "parsing ppxopt failed: expected '=' or '+=' followed by quoted options")) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 510-516, characters 26-93: 510 | ..........................function 511 | | RPAREN :: zs -> zs 512 | | _ :: zs -> consume zs 513 | | [] -> 514 | raise 515 | (MetaParseError 516 | (pkg_name, "unexpected EOF in error field (missing closing parenthesis)")) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 518-523, characters 8-98: 518 | ........match consume xs with 519 | | EQ :: S _ :: xs2 -> parse pkg_name acc expecting_rparen xs2 520 | | _ -> 521 | raise 522 | (MetaParseError 523 | (pkg_name, "parsing error field failed, expected '=' after closing parenthesis")). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 526-536, characters 8-99: 526 | ........match xs2 with 527 | | EQ :: S s :: xs3 -> 528 | parse pkg_name 529 | { 530 | acc with ... 533 | expecting_rparen xs3 534 | | _ -> 535 | raise 536 | (MetaParseError (pkg_name, "parsing linkopts failed, expected '=' after predicates")). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. File "lib/core/meta.ml", lines 403-546, characters 48-61: 403 | ................................................function 404 | | [] -> 405 | if expecting_rparen then 406 | raise (MetaParseError (pkg_name, "unclosed package block (missing closing parenthesis)")) 407 | else ... 543 | (MetaParseError 544 | ( pkg_name, 545 | "unknown token '" ^ to_string x ^ "' in meta file\n" 546 | ^ String.concat " " (List.map to_string xs) )) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type t. [ 60 of 103] Intfing Metacache File "lib/core/target.ml", line 218, characters 37-51: 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode) ^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Library_native was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 218, characters 37-51: 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode) ^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Library_native relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 218, characters 83-99: 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode) ^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Library_bytecode was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 218, characters 83-99: 218 | (Gconf.get_target_option_typed Library_native, Gconf.get_target_option_typed Library_bytecode) ^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Library_bytecode relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 220, characters 37-54: 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode) ^^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Executable_native was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 220, characters 37-54: 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode) ^^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Executable_native relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 220, characters 86-105: 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode) ^^^^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Executable_bytecode was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 220, characters 86-105: 220 | (Gconf.get_target_option_typed Executable_native, Gconf.get_target_option_typed Executable_bytecode) ^^^^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Executable_bytecode relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 226, characters 35-52: 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling) ^^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Library_debugging was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 226, characters 35-52: 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling) ^^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Library_debugging relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 226, characters 84-101: 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling) ^^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Library_profiling was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 226, characters 84-101: 226 | (Gconf.get_target_option_typed Library_debugging, Gconf.get_target_option_typed Library_profiling) ^^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Library_profiling relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 228, characters 35-55: 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling) ^^^^^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Executable_debugging was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 228, characters 35-55: 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling) ^^^^^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Executable_debugging relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. File "lib/core/target.ml", line 228, characters 87-107: 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling) ^^^^^^^^^^^^^^^^^^^^ Warning 40 [name-out-of-scope]: Executable_profiling was selected from type Gconf.target_option. It is not visible in the current scope, and will not be selected if the type becomes unknown. File "lib/core/target.ml", line 228, characters 87-107: 228 | (Gconf.get_target_option_typed Executable_debugging, Gconf.get_target_option_typed Executable_profiling) ^^^^^^^^^^^^^^^^^^^^ Warning 42 [disambiguated-name]: this use of Executable_profiling relies on type-directed disambiguation, it will not compile with OCaml 4.00 or earlier. [ 61 of 103] Intfing Dist [ 62 of 103] Intfing Project [ 63 of 103] Compiling Metacache [ 64 of 103] Compiling Dist File "lib/core/metacache.ml", line 2, characters 0-11: 2 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) [ 65 of 103] Compiling Project File "lib/core/project.ml", lines 107-109, characters 6-22: 107 | ......match target.target_buildable with 108 | | BoolConst true -> BoolConst (Gconf.get_target_option_typed Gconf.Build_tests) 109 | | other -> other Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.runtime_bool. File "lib/core/project.ml", lines 136-138, characters 6-22: 136 | ......match target.target_buildable with 137 | | BoolConst true -> BoolConst (Gconf.get_target_option_typed Gconf.Build_benchs) 138 | | other -> other Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.runtime_bool. File "lib/core/project.ml", lines 164-166, characters 6-22: 164 | ......match target.target_buildable with 165 | | BoolConst true -> BoolConst (Gconf.get_target_option_typed Gconf.Build_examples) 166 | | other -> other Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.runtime_bool. [ 66 of 103] Compiling Obuild_validate [ 67 of 103] Intfing Analyze [ 68 of 103] Compiling Analyze File "lib/core/obuild_validate.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. File "lib/core/obuild_validate.ml", line 7, characters 0-17: 7 | open Obuild_lexer ^^^^^^^^^^^^^^^^^ Warning 33 [unused-open]: unused open Obuild_lexer. [ 69 of 103] Compiling Project_read File "lib/core/analyze.ml", lines 69-71, characters 6-17: 69 | ......match name with 70 | | Name.Lib lname -> Some lname 71 | | _ -> None. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/core/analyze.ml", line 4, characters 0-11: 4 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "lib/core/analyze.ml", lines 225-234, characters 14-27: 225 | ..............match preds with 226 | | [ Meta.Predicate.Toploop ] -> () 227 | | _ -> 228 | List.iter 229 | (fun reqDep -> 230 | log Debug " library %s depends on %s\n" (Libname.to_string dep) 231 | (Libname.to_string reqDep); 232 | Dag.add_edge (Dependency dep) (Dependency reqDep) depsDag; 233 | loop reqDep) 234 | reqDeps. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Meta.Predicate.t. File "lib/core/analyze.ml", lines 252-256, characters 8-28: 252 | ........match target.target_name with 253 | | Name.Lib l -> 254 | Dag.add_node (Dependency l) depsDag; 255 | Dag.add_edge (Dependency l) 256 | | _ -> fun _ _ -> () Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. [ 70 of 103] Intfing Prepare_types File "lib/core/project_read.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. [ 71 of 103] Intfing Configure File "lib/core/prepare_types.mli", line 7, characters 0-10: 7 | open Types ^^^^^^^^^^ Warning 33 [unused-open]: unused open Types. [ 72 of 103] Compiling Prepare_types [ 73 of 103] Compiling Configure File "lib/core/prepare_types.ml", line 8, characters 0-11: 8 | open Target ^^^^^^^^^^^ Warning 33 [unused-open]: unused open Target. [ 74 of 103] Intfing Ppx_resolver [ 75 of 103] Compiling Ppx_resolver File "lib/core/configure.ml", line 4, characters 0-11: 4 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "lib/core/configure.ml", line 46, characters 4-15: 46 | let sanityCheck ?(needs_c_toolchain=false) () = ^^^^^^^^^^^ Warning 32 [unused-value-declaration]: unused value sanityCheck. File "lib/core/ppx_resolver.ml", lines 80-82, characters 8-32: 80 | ........match node with 81 | | Dependency dep -> Some dep 82 | | _ -> None Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Analyze.dependency_tag. File "lib/core/ppx_resolver.ml", line 25, characters 0-11: 25 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) [ 76 of 103] Intfing Prepare [ 77 of 103] Compiling Prepare File "lib/core/prepare.ml", line 53, characters 0-11: 53 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "lib/core/prepare.ml", lines 305-319, characters 10-21: 305 | ..........match 306 | Filetype.of_filepath fp 307 | with 308 | | Filetype.FileML -> Some (Modname.of_filename f) 309 | | Filetype.FileMLI -> ... 316 | Some (Modname.of_filename f) 317 | else 318 | None 319 | | _ -> None. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/core/prepare.ml", lines 344-346, characters 8-20: 344 | ........match Hashtbl.find conf.project_dep_data dep with 345 | | Internal -> true 346 | | _ -> false. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Analyze.dep_type. File "lib/core/prepare.ml", lines 484-488, characters 8-17: 484 | ........match r with 485 | | CompileModule _ | CompileDirectory _ | CompileC _ -> 486 | Dag.add_edge (LinkTarget target) r stepsDag; 487 | Dag.add_edge (CheckTarget target) (LinkTarget target) stepsDag 488 | | _ -> (). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Prepare_types.compile_step. File "lib/core/prepare.ml", lines 541-543, characters 8-64: 541 | ........match target.target_name with 542 | | Target.Name.Lib l -> l 543 | | _ -> failwith "cstubs can only be used with libraries" Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/core/prepare.ml", lines 719-721, characters 8-25: 719 | ........match target.target_name with 720 | | Target.Name.Lib libname -> autogenDir fn (Libname.to_string libname) 721 | | _ -> autogenDir Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/core/prepare.ml", lines 990-992, characters 10-19: 990 | ..........match (target.target_cstubs, target.target_name) with 991 | | Some _, Target.Name.Lib libname -> [ autogenDir fn (Libname.to_string libname) ] 992 | | _ -> [] Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/core/prepare.ml", line 57, characters 0-18: 57 | open Prepare_types ^^^^^^^^^^^^^^^^^^ Warning 33 [unused-open]: unused open Prepare_types. [ 78 of 103] Intfing Buildprogs [ 79 of 103] Compiling Buildprogs File "lib/core/buildprogs.ml", lines 82-87, characters 14-75: 82 | ..............function 83 | | Filetype.FileML -> ext 84 | | Filetype.FileMLI -> Filetype.FileCMI 85 | | _ -> 86 | (* It should not happen *) 87 | if buildMode = ByteCode then Filetype.FileCMO else Filetype.FileCMX Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/core/buildprogs.ml", line 241, characters 4-41: 241 | let generate_cstubs_type_discovery_source cstubs libname autogen_dir = ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 32 [unused-value-declaration]: unused value generate_cstubs_type_discovery_source. File "lib/core/buildprogs.ml", line 273, characters 4-41: 273 | let generate_cstubs_function_stubs_source cstubs libname autogen_dir = ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 32 [unused-value-declaration]: unused value generate_cstubs_function_stubs_source. File "lib/core/buildprogs.ml", line 317, characters 4-24: 317 | let run_cstubs_generator project includes ml_file output_file = ^^^^^^^^^^^^^^^^^^^^ Warning 32 [unused-value-declaration]: unused value run_cstubs_generator. [ 80 of 103] Compiling Build_cstubs File "lib/core/build_cstubs.ml", line 4, characters 0-11: 4 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "lib/core/build_cstubs.ml", line 80, characters 4-43: 80 | Filesystem.mkdir_safe autogen_dir 0o755; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 10 [non-unit-statement]: this expression should have type unit. File "lib/core/build_cstubs.ml", line 252, characters 4-43: 252 | Filesystem.mkdir_safe autogen_dir 0o755; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 10 [non-unit-statement]: this expression should have type unit. File "lib/core/build_cstubs.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. File "lib/core/build_cstubs.ml", line 1, characters 0-10: 1 | open Fugue ^^^^^^^^^^ Warning 33 [unused-open]: unused open Fugue. File "lib/core/build_cstubs.ml", line 5, characters 0-11: 5 | open Printf ^^^^^^^^^^^ Warning 33 [unused-open]: unused open Stdlib.Printf. File "lib/core/build_cstubs.ml", line 6, characters 0-12: 6 | open Analyze ^^^^^^^^^^^^ Warning 33 [unused-open]: unused open Analyze. [ 81 of 103] Intfing Build [ 82 of 103] Compiling Build File "lib/core/build.ml", lines 77-102, characters 4-50: 77 | ....match (Filetype.of_filename bdest, srcTy) with 78 | | (Filetype.FileCMX | Filetype.FileCMO), (Filetype.FileCMX | Filetype.FileCMO) -> 79 | let bml = Filetype.replace_extension bdest Filetype.FileML in 80 | let bmli = Filetype.replace_extension bdest Filetype.FileMLI in 81 | if bml = bsrc then ... 99 | "H file " ^ fn_to_string bsrc ^ " changed" 100 | else 101 | "file changed " ^ fp_to_string changedSrc 102 | | _, _ -> fp_to_string changedSrc ^ " changed" Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/core/build.ml", lines 113-115, characters 6-17: 113 | ......match (t, o) with 114 | | ByteCode, WithProf -> false 115 | | _ -> true. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Types.ocaml_compiled_type. File "lib/core/build.ml", lines 113-115, characters 6-17: 113 | ......match (t, o) with 114 | | ByteCode, WithProf -> false 115 | | _ -> true. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Types.ocaml_compilation_option. File "lib/core/build.ml", line 4, characters 0-11: 4 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "lib/core/build.ml", lines 331-338, characters 22-26: 331 | ......................( 332 | match e with 333 | | Hier.FileEntry (_, f) -> 334 | if Filetype.of_filepath f = Filetype.FileMLI then 335 | Some m 336 | else 337 | None 338 | | _ -> None) Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Hier.file_entry. File "lib/core/build.ml", lines 374-376, characters 4-87: 374 | ....match List.filter (fun x -> x <> []) l with 375 | | [] -> ("", []) 376 | | ((r, x) :: xs) :: ys -> (r, (x :: List.map snd xs) :: List.map (List.map snd) ys) Warning 8 [partial-match]: this pattern-matching is not exhaustive. Here is an example of a case that is not matched: []::_ File "lib/core/build.ml", line 612, characters 10-26: 612 | let rec dep_is_satisfied current_pkg = ^^^^^^^^^^^^^^^^ Warning 39 [unused-rec-flag]: unused rec flag. File "lib/core/build.ml", lines 651-653, characters 17-29: 651 | .................match compileOpt with 652 | | WithProf -> Meta.Predicate.Gprof :: preds 653 | | _ -> preds Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Types.ocaml_compilation_option. File "lib/core/build.ml", lines 668-678, characters 2-58: 668 | ..match target.target_name with 669 | | Name.Lib libname -> 670 | if plugin then 671 | cstate.compilation_builddir_ml Normal Libname.to_cmxs compileOpt libname 672 | else ... 675 | let outputName = 676 | Utils.to_exe_name compileOpt compiledType (Target.get_target_dest_name target) 677 | in 678 | cstate.compilation_builddir_ml Normal outputName Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/core/build.ml", lines 864-870, characters 6-15: 864 | ......match (target.target_cstubs, target.target_name) with 865 | | Some cstubs, Name.Lib libname -> 866 | let autogen_dir = get_cstubs_autogen_dir libname in 867 | let c_lib_name = cstubs.cstubs_external_library_name in 868 | let c_stubs_file = fn (c_lib_name ^ "_stubs.c") in 869 | [ autogen_dir o_from_cfile c_stubs_file ] 870 | | _ -> [] Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/core/build.ml", lines 960-963, characters 28-44: 960 | ............................( 961 | match task with 962 | | CompileC _ -> raise (CCompilationFailed er) 963 | | _ -> raise (CompilationFailed er)).. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Prepare.compile_step. File "lib/core/build.ml", line 390, characters 29-36: 390 | let check_compilation_needed is_intf dep_descs dir_spec use_thread annot_mode pack_opt use_pp oflags ^^^^^^^ Warning 27 [unused-var-strict]: unused variable is_intf. File "lib/core/build.ml", line 582, characters 4-10: 582 | let link_c cstate clib_name = ^^^^^^ Warning 32 [unused-value-declaration]: unused value link_c. [ 83 of 103] Intfing Exception [ 84 of 103] Compiling Exception [ 85 of 103] Linking library dist/build/lib-obuild_core/obuild_core.cmxa [ 85 of 103] Linking library dist/build/lib-obuild_core/obuild_core.cmxs [ 85 of 103] Linking library dist/build/lib-obuild_core/obuild_core.cma [ 86 of 103] Checking dist/build/lib-obuild_core [ 87 of 103] Intfing Help [ 88 of 103] Intfing Install [ 89 of 103] Intfing Doc [ 90 of 103] Intfing Init [ 91 of 103] Intfing Sdist [ 92 of 103] Compiling Help [ 93 of 103] Compiling Install [ 94 of 103] Compiling Doc File "lib/doc.ml", line 5, characters 4-15: 5 | let runOcamldoc pp = ^^^^^^^^^^^ Warning 32 [unused-value-declaration]: unused value runOcamldoc. [ 95 of 103] Compiling Init File "lib/install.ml", lines 22-31, characters 8-20: 22 | ........match Filetype.of_filepath (build_dir f) with 23 | | Filetype.FileCMX 24 | | Filetype.FileCMI 25 | | Filetype.FileA 26 | | Filetype.FileCMXS 27 | | Filetype.FileCMXA 28 | | Filetype.FileCMA 29 | | Filetype.FileCMT 30 | | Filetype.FileCMTI -> true 31 | | _ -> false. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/install.ml", lines 35-37, characters 6-18: 35 | ......match Filetype.of_filepath (build_dir f) with 36 | | Filetype.FileEXE -> true 37 | | _ -> false. Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/install.ml", lines 55-57, characters 10-19: 55 | ..........match target.target_name with 56 | | Name.Lib _ -> print_target_files target list_lib_files 57 | | _ -> (). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/install.ml", lines 63-65, characters 10-19: 63 | ..........match target.target_name with 64 | | Name.Exe _ -> print_target_files target list_exe_files 65 | | _ -> (). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Target.Name.t. File "lib/install.ml", line 7, characters 0-11: 7 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) [ 96 of 103] Compiling Sdist File "lib/sdist.ml", lines 28-30, characters 12-21: 28 | ............match Filetype.of_filepath fpath with 29 | | Filetype.FileML | Filetype.FileMLI -> Filesystem.copy_to_dir fpath dest 30 | | _ -> (). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/sdist.ml", lines 38-40, characters 8-17: 38 | ........match Filetype.of_filepath fpath with 39 | | Filetype.FileC | Filetype.FileH -> Filesystem.copy_to_dir fpath dest 40 | | _ -> (). Warning 4 [fragile-match]: this pattern-matching is fragile. It will remain exhaustive when constructors are added to type Filetype.t. File "lib/sdist.ml", line 3, characters 0-11: 3 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) [ 97 of 103] Linking library dist/build/lib-obuild/obuild.cmxa [ 97 of 103] Linking library dist/build/lib-obuild/obuild.cmxs [ 97 of 103] Linking library dist/build/lib-obuild/obuild.cma [ 98 of 103] Checking dist/build/lib-obuild [ 99 of 103] Compiling Path_generated File "dist/build/autogen/path_generated.ml", line 1: Warning 70 [missing-mli]: Cannot find interface file. [100 of 103] Intfing Main [101 of 103] Compiling Main File "src/main.ml", line 5, characters 0-11: 5 | open Helper ^^^^^^^^^^^ Warning 44 [open-shadow-identifier]: this open statement shadows the value identifier log (which is later used) File "src/main.ml", line 103, characters 5-88: 103 | |> Cli.option_strings "flag" ~doc:"Enable or disable a project flag (can be repeated)" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?placeholder File "src/main.ml", line 104, characters 5-76: 104 | |> Cli.option_bool "library-bytecode" ~doc:"Compile libraries as bytecode" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 105, characters 5-72: 105 | |> Cli.option_bool "library-native" ~doc:"Compile libraries as native" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 106, characters 5-79: 106 | |> Cli.option_bool "library-plugin" ~doc:"Compile libraries as native plugin" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 107, characters 5-81: 107 | |> Cli.option_bool "executable-bytecode" ~doc:"Compile executables as bytecode" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 108, characters 5-77: 108 | |> Cli.option_bool "executable-native" ~doc:"Compile executables as native" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 109, characters 5-72: 109 | |> Cli.option_bool "library-profiling" ~doc:"Enable library profiling" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 110, characters 5-72: 110 | |> Cli.option_bool "library-debugging" ~doc:"Enable library debugging" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 111, characters 5-78: 111 | |> Cli.option_bool "executable-profiling" ~doc:"Enable executable profiling" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 112, characters 5-78: 112 | |> Cli.option_bool "executable-debugging" ~doc:"Enable executable debugging" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 113, characters 5-59: 113 | |> Cli.option_bool "build-examples" ~doc:"Build examples" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 114, characters 5-59: 114 | |> Cli.option_bool "build-benchs" ~doc:"Build benchmarks" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 115, characters 5-53: 115 | |> Cli.option_bool "build-tests" ~doc:"Build tests" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default, ?placeholder File "src/main.ml", line 116, characters 5-70: 116 | |> Cli.flag "executable-as-obj" ~doc:"Output executable as obj file" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 117, characters 5-50: 117 | |> Cli.flag "annot" ~doc:"Generate .annot files" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 118, characters 5-62: 118 | |> Cli.flag "g" ~short:'g' ~doc:"Compilation with debugging" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional argument ?env File "src/main.ml", line 119, characters 5-52: 119 | |> Cli.flag "pg" ~doc:"Compilation with profiling" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", lines 157-158, characters 5-48: 157 | .....Cli.option_int "jobs" ~short:'j' ~placeholder:"N" ~default:gconf.parallel_jobs 158 | ~doc:"Maximum number of jobs in parallel" Warning 48 [eliminated-optional-arguments]: implicit elimination of optional argument ?env File "src/main.ml", line 159, characters 5-67: 159 | |> Cli.flag "dot" ~doc:"Dump dependencies dot files during build" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 160, characters 5-77: 160 | |> Cli.flag "noocamlmklib" ~doc:"Do not use ocamlmklib when linking C code" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 190, characters 26-84: 190 | cmd |> Cli.help_flag |> Cli.flag "snapshot" ~doc:"Build a snapshot of the project" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 221, characters 5-96: 221 | |> Cli.option_string "destdir" ~placeholder:"DIR" ~doc:"Override destination where to install" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env, ?default File "src/main.ml", line 222, characters 5-66: 222 | |> Cli.flag "opam" ~doc:"Only create the .install file for opam" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 282, characters 26-68: 282 | cmd |> Cli.help_flag |> Cli.flag "output" ~doc:"Show test outputs" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Warning 48 [eliminated-optional-arguments]: implicit elimination of optional arguments ?short, ?env File "src/main.ml", line 7, characters 0-8: 7 | open Cli ^^^^^^^^ Warning 33 [unused-open]: unused open Cli. File "src/main.ml", line 400, characters 16-19: 400 | ~run:(fun ctx -> ^^^ Warning 27 [unused-var-strict]: unused variable ctx. File "src/main.ml", line 456, characters 16-19: 456 | ~run:(fun ctx -> ^^^ Warning 27 [unused-var-strict]: unused variable ctx. [102 of 103] Linking executable dist/build/obuild/obuild [103 of 103] Checking dist/build/obuild + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.QqsXhs + umask 022 + cd /builddir/build/BUILD/ocaml-obuild-0.2.2-build + '[' /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT ++ dirname /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT + mkdir -p /builddir/build/BUILD/ocaml-obuild-0.2.2-build + mkdir /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT + CFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -march=rva23u64 -mabi=lp64d -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd obuild-0.2.2 + mkdir -p /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/bin + cp dist/build/obuild/obuild /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/bin + mkdir -p /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/man/man1 + help2man --output /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/man/man1/obuild.1 --name 'parallel, incremental and declarative build system for OCaml' --help-option '' --no-discard-stderr --no-info dist/build/obuild/obuild + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + COMPRESS='gzip -9 -n' + COMPRESS_EXT=.gz + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + /usr/lib/rpm/redhat/brp-python-rpm-in-distinfo + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j8 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-det --brp -j8 /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT Scanned 6 directories and 2 files, processed 1 inodes, 0 modified (0 replaced + 0 rewritten), 0 unsupported format, 0 errors + /usr/bin/linkdupes --brp /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr Scanned 5 directories and 2 files, considered 2 files, read 0 files, linked 0 files, 0 errors sum of sizes of linked files: 0 bytes Reading /builddir/build/BUILD/ocaml-obuild-0.2.2-build/SPECPARTS/rpm-debuginfo.specpart Processing files: ocaml-obuild-0.2.2-2.fc45.riscv64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.lUadoe + umask 022 + cd /builddir/build/BUILD/ocaml-obuild-0.2.2-build + cd obuild-0.2.2 + DOCDIR=/builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/doc/ocaml-obuild + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/doc/ocaml-obuild + cp -pr /builddir/build/BUILD/ocaml-obuild-0.2.2-build/obuild-0.2.2/README.md /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/doc/ocaml-obuild + cp -pr /builddir/build/BUILD/ocaml-obuild-0.2.2-build/obuild-0.2.2/OBUILD_SPEC.md /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/doc/ocaml-obuild + cp -pr /builddir/build/BUILD/ocaml-obuild-0.2.2-build/obuild-0.2.2/DESIGN.md /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/doc/ocaml-obuild + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.6AVpDu + umask 022 + cd /builddir/build/BUILD/ocaml-obuild-0.2.2-build + cd obuild-0.2.2 + LICENSEDIR=/builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/licenses/ocaml-obuild + export LC_ALL=C.UTF-8 + LC_ALL=C.UTF-8 + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/licenses/ocaml-obuild + cp -pr /builddir/build/BUILD/ocaml-obuild-0.2.2-build/obuild-0.2.2/LICENSE /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT/usr/share/licenses/ocaml-obuild + RPM_EC=0 ++ jobs -p + exit 0 Provides: ocaml-obuild = 0.2.2-2.fc45 ocaml-obuild(riscv-64) = 0.2.2-2.fc45 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: ld-linux-riscv64-lp64d.so.1()(64bit) ld-linux-riscv64-lp64d.so.1(GLIBC_2.27)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.27)(64bit) libc.so.6(GLIBC_2.28)(64bit) libc.so.6(GLIBC_2.32)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.38)(64bit) libc.so.6(GLIBC_2.42)(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.27)(64bit) rtld(GNU_HASH) Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILD/ocaml-obuild-0.2.2-build/BUILDROOT Wrote: /builddir/build/RPMS/ocaml-obuild-0.2.2-2.fc45.riscv64.rpm Child return code was: 0