Build:
  1. 0
2026-06-16 18:46.49: New job: build pa_ppx_ag.0.08 (15b2105578fe)
2026-06-16 18:46.49: Waiting for resource in pool day11-builds
2026-06-16 19:03.17: Got resource from pool day11-builds
2026-06-16 19:03.17: [profile full] build pa_ppx_ag.0.08
2026-06-16 19:03.17: build pa_ppx_ag.0.08 (15b2105578fe)
=== DEPENDENCIES (54 transitive) ===
  astring.0.8.5                                      ee1f3bf95dc8
  base.v0.15.2                                       1ed90cbdf593
  base-threads.base                                  b7164ff76afe
  base-unix.base                                     839dc585f12d
  bos.0.2.1                                          d3c076079996
  camlp-streams.5.0.1                                ddd0dc4fb314
  camlp5.8.00.02                                     5a87b37beb00
  conf-libpcre.2                                     1e78e423e0f7
  conf-m4.1                                          16c0f2e0bd7c
  conf-perl.2                                        9ee1ae5f2bf1
  conf-perl-ipc-system-simple.3                      2ea91c11cd77
  conf-perl-string-shellquote.3                      bde1bb123adc
  conf-pkg-config.5                                  64c6b37d622b
  conf-which.1                                       9799649fc020
  csexp.1.5.2                                        432b3467792d
  cstruct.6.2.0                                      abf9599e3842
  dune.3.22.2                                        d419ab6dc28c
  dune-compiledb.0.6.0                               ee4bdfa97982
  dune-configurator.3.22.2                           135b427d31ff
  ezjsonm.1.3.0                                      82ccd360bbb4
  fmt.0.11.0                                         9a6a208f9935
  fpath.0.7.3                                        0a6805d7891d
  hashcons.1.4.0                                     4ec4fa6a5744
  hex.1.5.0                                          2fcae5dc50c7
  jsonm.1.0.2                                        6add1f639558
  logs.0.8.0                                         4cee24c382a8
  not-ocamlfind.0.14                                 d638c384659b
  num.1.6                                            cbbd30d57daf
  ocaml.4.13.1                                       374ce8822fbe
  ocaml-base-compiler.4.13.1                         3060c22370ce
  ocaml-config.2                                     7e2bf3da2a6e
  ocamlbuild.0.16.1                                  92efc231a261
  ocamlfind.1.9.8                                    07c0f7045661
  ocamlgraph.2.2.0                                   9550ff911abb
  ounit.2.2.7                                        79b250cfa2e0
  ounit2.2.2.7                                       1354d25d3b6c
  pa_ppx.0.08                                        661f44612937
  pa_ppx_hashcons.0.09                               11a846d0df5b
  pa_ppx_migrate.0.08                                af69bced34b3
  pa_ppx_unique.0.09                                 86f9cc267a9d
  parsexp.v0.15.0                                    e6c4629da11b
  pcre.8.0.5                                         c68a274d2043
  result.1.5                                         3f7bc81b10c3
  rresult.0.7.0                                      d29141482d7d
  seq.base                                           bf7c50d4ed64
  sexplib.v0.15.1                                    065d0d3b9968
  sexplib0.v0.15.1                                   ba134d7c4766
  stdint.0.7.2                                       ec098ee0258b
  stdlib-shims.0.3.0                                 3094441460ab
  topkg.1.1.1                                        9e62ca7deaa9
  uint.2.0.1                                         147422891b66
  uutf.1.0.4                                         1cc2c5be5ba7
  vec.0.4.0                                          7cb1231d790c
  yojson.3.0.0                                       ab1d1e211753
=== STDOUT ===
Processing: [default: loading data]
[pa_ppx_ag.0.08: dl]
[pa_ppx_ag.0.08: extract]
-> retrieved pa_ppx_ag.0.08  (https://opam.ocaml.org/cache)
[pa_ppx_ag: make sys]
+ /usr/bin/make "sys" (CWD=/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08)
- set -e; for i in pa_ag; do cd $i; /usr/bin/make all; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc   -ppopt -pa_import-package -ppopt camlp5 -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.import,pa_ppx_migrate -syntax camlp5o -c camlp5_migrate.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- [parse /home/opam/.opam/default/lib/camlp5/mLast.cmi in 0.080634 secs]
- [parse /home/opam/.opam/default/lib/camlp5/ploc.cmi in 0.010749 secs]
- env TOP=.. ../tools/LAUNCH not-ocamlfind preprocess  -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,camlp5.pr_r -syntax camlp5r ag_types.ml > ag_types_ppo.ml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c ag_types.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "ag_types.ml", lines 132-141, characters 22-3:
- 132 | ......................fun [
- 133 |     PARENT (Some name) -> <:patt< [%nterm $lid:name$ ;] >>
- 134 |   | PARENT None -> <:patt< [%nterm 0 ;] >>
- 135 |   | CHILD (Some name) i -> <:patt< [%nterm $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 136 |   | CHILD None i when i > 0 -> <:patt< [%nterm $int:string_of_int i$ ;] >>
- 137 |   | CHILD None i when i <= 0 -> assert False
- 138 |   | PRIM (Some name) i -> <:patt< [%prim $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 139 |   | PRIM None i when i > 0 -> <:patt< [%prim $int:string_of_int i$ ;] >>
- 140 |   | PRIM None i when i <= 0 -> assert False
- 141 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- CHILD (None, _)
- (However, some guarded clause may match this value.)
- File "ag_types.ml", lines 143-152, characters 22-3:
- 143 | ......................fun [
- 144 |     PARENT (Some name) -> <:expr< [%nterm $lid:name$ ;] >>
- 145 |   | PARENT None -> <:expr< [%nterm 0 ;] >>
- 146 |   | CHILD (Some name) i -> <:expr< [%nterm $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 147 |   | CHILD None i when i > 0 -> <:expr< [%nterm $int:string_of_int i$ ;] >>
- 148 |   | CHILD None i when i <= 0 -> assert False
- 149 |   | PRIM (Some name) i -> <:expr< [%prim $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 150 |   | PRIM None i when i > 0 -> <:expr< [%prim $int:string_of_int i$ ;] >>
- 151 |   | PRIM None i when i <= 0 -> assert False
- 152 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- CHILD (None, _)
- (However, some guarded clause may match this value.)
- File "ag_types.ml", lines 376-396, characters 4-5:
- 376 | ....match e with [
- 377 |       NT (PRIM tyname n) "" ->
- 378 |       <:expr< [%prim $lid:tyname$ . ( $int:string_of_int n$ );] >>
- 379 | 
- 380 |     | NT tnr attrna ->
- ...
- 393 |       let attributes = Ppxutil.convert_up_list_expr loc (List.map (fun (a,b) -> <:expr< $lid:a$ . $lid:b$ >>) attributes) in
- 394 |       let shield = Ppxutil.convert_up_list_expr loc (List.map (fun a -> <:expr< $lid:a$ >>) shield) in
- 395 |       <:expr< [%constituents { nodes = $nodes$ ; attributes = $attributes$ ; shield = $shield$ } ;] >>
- 396 |     ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- CHAINSTART (_, (PARENT _|PRIM (_, _)), _)
- File "ag_types.ml", line 772, characters 4-5:
- 772 |   | _ -> Ploc.raise (MLast.loc_of_expr e)
-           ^
- Warning 11 [redundant-case]: this match case is unused.
- File "ag_types.ml", lines 781-788, characters 2-3:
- 781 | ..match Pcre.extract ~{rex=name_re} ~{pos=0} s with [
- 782 |     [|_;lhs;""|] ->
- 783 |     { PN.nonterm_name = lhs; case_name = None }
- 784 |   | [|_;lhs;rhs|] ->
- 785 |     { PN.nonterm_name = lhs; case_name = Some rhs }
- 786 |   | exception Not_found ->
- 787 |     { PN.nonterm_name = s; case_name = None }
- 788 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- [|  |]
- File "ag_types.ml", lines 915-940, characters 2-3:
- 915 | ..match b with [
- 916 |     <:constructor:< $uid:ci$ of $list:tl$ $_algattrs:_$ >> as gc
- 917 |     when ag.storage_mode = Records && tl <> [] && List.mem_assoc (lhs_name^"__"^ci) ag.production_attributes ->
- 918 |       let (last, tl) = sep_last tl in
- 919 |       let lastpatt = match last with [
- ...
- 937 |         | p -> Patt.applist <:patt< $uid:ci$ >> [p]
- 938 |         ]
- 939 |       }
- 940 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (_, VaVal _, VaVal _, VaVal (Some _), _)
- File "ag_types.ml", lines 522-523, characters 6-62:
- 522 | ......(AR.NT nr attrna) as ar ->
- 523 |       TAR.NT (typed_nr ~{is_chainstart=False} loc p nr) attrna
- Warning 26 [unused-var]: unused variable ar.
- File "ag_types.ml", lines 873-879, characters 6-7:
- 873 | ......<:ctyp:< $lid:tyname$ >> as z when is_primitive_ctyp ag tyname -> do {
- 874 |         let aliasnum = NA.next_prim_number node_aliases tyname in
- 875 |         NA.add node_aliases (TNR.PRIM tyname aliasnum, NR.PRIM None (i+1)) ;
- 876 |         Std.push typed_nodes (TNR.PRIM tyname aliasnum) ;
- 877 |         let v = Printf.sprintf "v_%d" (i+1) in
- 878 |         (<:patt< $lid:v$ >>, (v, TNR.PRIM tyname aliasnum), (v, i+1))
- 879 |       }
- Warning 26 [unused-var]: unused variable z.
- File "ag_types.ml", line 1685, characters 8-17:
- 1685 |     let child_nts = P.child_nonterminals p in
-                ^^^^^^^^^
- Warning 26 [unused-var]: unused variable child_nts.
- File "ag_types.ml", line 1833, characters 8-11:
- 1833 |     let loc = p.P.loc in
-                ^^^
- Warning 26 [unused-var]: unused variable loc.
- File "ag_types.ml", lines 2148-2156, characters 4-24:
- 2148 | ....(TAR.CONSTITUENTS nodes _ _) as cr ->
- 2149 |     let new_tars = List.map (fun tnr -> TAR.NT tnr new_attr) nodes in
- 2150 |     let new_expr =
- 2151 |       new_tars
- 2152 |       |> List.map (TAR.to_expr loc)
- 2153 |       |> Ppxutil.convert_up_list_expr loc
- 2154 |       |> (fun e -> <:expr< List.concat $e$ >>)
- 2155 |     in
- 2156 |     (new_tars, new_expr)
- Warning 26 [unused-var]: unused variable cr.
- File "ag_types.ml", line 2196, characters 8-11:
- 2196 |     let loc = ag.AG.loc in
-                ^^^
- Warning 26 [unused-var]: unused variable loc.
- env TOP=.. ../tools/LAUNCH not-ocamlfind preprocess  -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,camlp5.pr_r -syntax camlp5r ag_tsort.ml > ag_tsort_ppo.ml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c ag_tsort.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "ag_tsort.ml", lines 393-407, characters 81-12:
- 393 | .................................................................................fun [
- 394 |              (TNR.CHILD tyname i, v) ->
- 395 |              let abs_childnum = match List.assoc v p.P.patt_var_to_childnum with [
- 396 |                x -> x | exception Not_found -> assert False
- 397 |              ] in
- ...
- 404 |                           $lid:fname$ attrs acc $lid:v$
- 405 |                           } >>
- 406 |            | (TNR.PRIM _ _, _) -> None
- 407 |            ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (PARENT _, _)
- File "ag_tsort.ml", lines 518-533, characters 2-3:
- 518 | ..match tar with [
- 519 |     TAR.NT (PARENT nt) attrna ->
- 520 |       <:expr< AttrTable. $lid:attr_setter_name nt attrna$ attrs lhs $rhs$ >>
- 521 | 
- 522 |   | TAR.PROD pn attrna ->
- ...
- 530 |   | TAR.NT (CHILD cnt childnum) cattrna ->
- 531 |     <:expr< AttrTable. $lid:attr_setter_name cnt cattrna$ attrs lhs $rhs$ >>
- 532 | 
- 533 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- NT (PRIM (_, _), _)
- File "ag_tsort.ml", lines 562-567, characters 71-7:
- 562 | .......................................................................match tar with [
- 563 |         TAR.NT (CHILD _ _| PARENT _) _ | TAR.PROD _ _ ->
- 564 |         Some <:expr< assert $attr_isset_expression loc ag p tar$ >>
- 565 | 
- 566 |       | TAR.NT (PRIM _ _) _ -> None
- 567 |       ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", lines 581-586, characters 71-7:
- 581 | .......................................................................match tar with [
- 582 |         TAR.NT (CHILD _ _ | PARENT _) _ ->
- 583 |         Some <:expr< assert $attr_isset_expression loc ag p tar$ >>
- 584 | 
- 585 |       | TAR.NT (PRIM _ _) _ -> None
- 586 |       ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (PROD (_, _)|CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", lines 649-654, characters 71-7:
- 649 | .......................................................................match tar with [
- 650 |         TAR.NT (CHILD _ _ | PARENT _) _ ->
- 651 |         Some <:expr< assert $attr_isset_expression loc ag p tar$ >>
- 652 | 
- 653 |       | TAR.NT (PRIM _ _) _ -> None
- 654 |       ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (PROD (_, _)|CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", lines 638-661, characters 2-3:
- 638 | ..match teqn.lhs with [
- 639 |     TAR.NT (CHILD cnt childnum) cattrna ->
- 640 |     let abs_childnum = lookup_abs_childnum p (NR.CHILD (Some cnt) childnum) in
- 641 |     let cattrcons = attr_constructor cattrna in
- 642 |     let cntcons = node_constructor cnt in
- ...
- 658 |     Some (patt, <:vala< None >>, <:expr< do { $list:l$ } >>)
- 659 | 
- 660 |   | TAR.PROD _ _ | TAR.NT (PARENT _) _ | TAR.NT (PRIM _ _) _ -> None
- 661 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", line 72, characters 7-28:
- 72 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-             ^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_longid.
- File "ag_tsort.ml", line 72, characters 30-56:
- 72 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_module_expr.
- File "ag_tsort.ml", line 157, characters 6-11:
- 157 |   let smode = ag.storage_mode in
-             ^^^^^
- Warning 26 [unused-var]: unused variable smode.
- File "ag_tsort.ml", line 171, characters 7-28:
- 171 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-              ^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_longid.
- File "ag_tsort.ml", line 171, characters 30-56:
- 171 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_module_expr.
- File "ag_tsort.ml", line 197, characters 7-28:
- 197 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-              ^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_longid.
- File "ag_tsort.ml", line 197, characters 30-56:
- 197 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_module_expr.
- File "ag_tsort.ml", line 559, characters 8-14:
- 559 |     let nthash = node_hash_module nt in
-               ^^^^^^
- Warning 26 [unused-var]: unused variable nthash.
- File "ag_tsort.ml", line 578, characters 8-14:
- 578 |     let nthash = node_hash_module nt in
-               ^^^^^^
- Warning 26 [unused-var]: unused variable nthash.
- File "ag_tsort.ml", line 643, characters 8-15:
- 643 |     let cnthash = node_hash_module cnt in
-               ^^^^^^^
- Warning 26 [unused-var]: unused variable cnthash.
- File "ag_tsort.ml", line 645, characters 8-15:
- 645 |     let pnthash = node_hash_module pnt in
-               ^^^^^^^
- Warning 26 [unused-var]: unused variable pnthash.
- env TOP=.. ../tools/LAUNCH not-ocamlfind preprocess  -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,camlp5.pr_r -syntax camlp5r ag_ordered.ml > ag_ordered_ppo.ml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c ag_ordered.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "ag_ordered.ml", lines 35-38, characters 29-1:
- 35 | .............................fun [
- 36 |   (TAR.NT (TNR.PARENT _) _) as tar -> tar
- 37 | | (TAR.NT (TNR.CHILD nterm _) attrna) as tar -> TAR.NT(TNR.PARENT nterm) attrna
- 38 | ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- NT (PRIM (_, _), _)
- File "ag_ordered.ml", lines 304-317, characters 35-3:
- 304 | ...................................match tar with [
- 305 |     TAR.PROD _ _ -> AR tar
- 306 |   | TAR.NT (PARENT nt as nr) attrna ->
- 307 |     let _t = must_lookup_t nt _t in
- 308 |     let (is_inh, partn) = find_partition_number loc _t attrna in
- ...
- 314 |     if not is_inh then EXTERNAL nr partn else AR tar
- 315 | 
- 316 |   | TAR.CHAINSTART _ _ _ | TAR.REMOTE _ | TAR.CONSTITUENTS _ _ _ -> assert False
- 317 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- NT (PRIM (_, _), _)
- File "ag_ordered.ml", line 37, characters 2-79:
- 37 | | (TAR.NT (TNR.CHILD nterm _) attrna) as tar -> TAR.NT(TNR.PARENT nterm) attrna
-        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable tar.
- File "ag_ordered.ml", line 102, characters 6-23:
- 102 |   let lookup_in_new_ids nt = match List.assoc nt new_ids with [
-             ^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable lookup_in_new_ids.
- env TOP=.. ../tools/LAUNCH not-ocamlfind preprocess  -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,camlp5.pr_r -syntax camlp5r pa_deriving_attributed.ml > pa_deriving_attributed_ppo.ml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c pa_deriving_attributed.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "pa_deriving_attributed.ml", lines 72-77, characters 22-5:
- 72 | ......................fun [
- 73 |       (<:vala< None >>, _) ->
- 74 |       Ploc.raise loc (Failure Fmt.(str "make_rho: %s: formal type-vars must all be named"
- 75 |                                      name))
- 76 |     | (<:vala< Some id >>, _) -> (id, Printf.sprintf "sub_%d" i)
- 77 |     ]........
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (VaAnt _, _)
- File "pa_deriving_attributed.ml", lines 138-141, characters 49-5:
- 138 | .................................................fun [
- 139 |       <:str_item< module $uid:_$ = $_$ >> as z -> ([ z :: mb ], vb)
- 140 |     | <:str_item< value $list:l$ >> -> (mb, l @ vb)
- 141 |     ]...............
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- StMod (_, VaVal false, VaVal ((VaVal (Some (VaVal _)), _, VaVal [])::_::_))
- File "pa_deriving_attributed.ml", lines 165-187, characters 35-7:
- 165 | ...................................fun [
- 166 |         <:constructor:< $uid:ci$ of $list:tl$ $algattrs:_$ >> ->
- 167 |           let prodname = name^"__"^ci in
- 168 |           let prod_consname = constructor_name rc prodname in
- 169 |           let argvars = List.mapi (fun i _ -> Printf.sprintf "v_%d" i) tl in
- ...
- 184 |            let consexp = if [] = argvars then <:expr< fun () -> $consexp$ >> else consexp in
- 185 |            <:str_item< value $lid:prod_consname$ = $consexp$ >>
- 186 |           ]
- 187 |       ].
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (_, VaVal _, VaVal _, VaVal None, VaAnt _)
- File "pa_deriving_attributed.ml", lines 163-188, characters 23-3:
- 163 | .......................match td.tdDef with [
- 164 |     <:ctyp:< $_$ == [ $list:branches$ ] >> | <:ctyp:< [ $list:branches$ ] >> ->
- 165 |       branches |> List.concat_map (fun [
- 166 |         <:constructor:< $uid:ci$ of $list:tl$ $algattrs:_$ >> ->
- 167 |           let prodname = name^"__"^ci in
- ...
- 185 |            <:str_item< value $lid:prod_consname$ = $consexp$ >>
- 186 |           ]
- 187 |       ])
- 188 |   ]...
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- TyMan (_, _, VaVal false, TySum (_, VaAnt _))
- File "pa_deriving_attributed.ml", lines 219-224, characters 14-7:
- 219 | ..............fun [
- 220 |         (<:vala< None >>, _) ->
- 221 |         Ploc.raise loc (Failure Fmt.(str "make_two_level_type_decl: %s: formal type-vars must all be named"
- 222 |                                        name))
- 223 |       | (<:vala< Some id >>, _) -> <:ctyp< ' $id$ >>
- 224 |       ]...........
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (VaAnt _, _)
- File "pa_deriving_attributed.ml", lines 254-267, characters 45-15:
- 254 | .............................................fun [
- 255 |               <:constructor:< $uid:ci$ of $list:tl$ $algattrs:algattrs$ >> as gc ->
- 256 |                 if List.mem_assoc (name^"__"^ci) rc.AC.typed_attributes then
- 257 |                   let al = List.assoc (name^"__"^ci) rc.AC.typed_attributes in
- 258 |                   let prod_attr_type_name = name^"__"^ci^"_attributes" in
- ...
- 264 |                     <:constructor< $uid:ci$ of $list:tl@[prod_attr_type]$ $algattrs:algattrs$ >>
- 265 |                   }
- 266 |                 else gc
- 267 |               ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (_, VaVal _, VaVal _, VaVal None, VaAnt _)
- env TOP=.. ../tools/LAUNCH not-ocamlfind preprocess  -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,camlp5.pr_r -syntax camlp5r pa_deriving_ag.ml > pa_deriving_ag_ppo.ml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c pa_deriving_ag.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "pa_deriving_ag.ml", lines 135-198, characters 2-5:
- 135 | ..<:str_item:< type $_flag:_$ $list:tdl$ >> as st ->
- 136 |     let rc0 = AGC.build_context loc arg tdl in
- 137 |     let (rc, uu_st, uu_open_st) = str_item_gen_decorated loc rc0 tdl in
- 138 |     let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules rc.AGC.storage_mode in
- 139 |     let ag0 = AG.mk0 loc
- ...
- 195 |                   end ;
- 196 |                 end
- 197 |       >>
- 198 |     }
- Warning 26 [unused-var]: unused variable st.
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,pa_ppx.deriving_plugins.std,camlp5.extend,camlp5.parser_quotations -syntax camlp5r -c pa_ag.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "pa_ag.ml", line 96, characters 22-30:
- 96 |   | exception Failure "caught" -> fallback_migrate_expr dt e
-                            ^^^^^^^^
- Warning 52 [fragile-literal-pattern]: Code should not depend on the actual values of
- this constructor's arguments. They are only for information
- and may change in future versions. (See manual section 11.5)
- File "pa_ag.ml", lines 287-290, characters 21-3:
- 287 | .....................match amodel with [
- 288 |     <:expr< Unique $_$ >> -> <:expr< Hashtables >>
- 289 |   | <:expr< Attributed $_$ >> -> <:expr< Records >>
- 290 |   ]...
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- ExApp (_, ExLong (_, LiUid (_, VaVal "")), _)
- File "pa_ag.ml", lines 317-320, characters 16-3:
- 317 | ................match last_td with [
- 318 |     <:type_decl:< $tp:(loc,tyna)$ = $tk$ >> ->
- 319 |     <:type_decl< $tp:(loc,tyna)$ = $tk$ $itemattrs:[attr]$ >>
- 320 |   ]...
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- {tdIsDecl=VaVal true; tdNam=VaVal (_, _); tdPrm=VaVal []; tdPrv=VaVal false;
- tdCon=VaVal []; tdAttributes=VaVal (_::_); _ }
- env TOP=.. ../tools/LAUNCH not-ocamlfind preprocess  -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,camlp5.pr_r -syntax camlp5r pa_ppx_ag_runtime.ml > pa_ppx_ag_runtime_ppo.ml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlc    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c pa_ppx_ag_runtime.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt   -ppopt -pa_import-package -ppopt camlp5 -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.import,pa_ppx_migrate -syntax camlp5o -c camlp5_migrate.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- [parse /home/opam/.opam/default/lib/camlp5/mLast.cmi in 0.047297 secs]
- [parse /home/opam/.opam/default/lib/camlp5/ploc.cmi in 0.006763 secs]
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c ag_types.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "ag_types.ml", lines 132-141, characters 22-3:
- 132 | ......................fun [
- 133 |     PARENT (Some name) -> <:patt< [%nterm $lid:name$ ;] >>
- 134 |   | PARENT None -> <:patt< [%nterm 0 ;] >>
- 135 |   | CHILD (Some name) i -> <:patt< [%nterm $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 136 |   | CHILD None i when i > 0 -> <:patt< [%nterm $int:string_of_int i$ ;] >>
- 137 |   | CHILD None i when i <= 0 -> assert False
- 138 |   | PRIM (Some name) i -> <:patt< [%prim $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 139 |   | PRIM None i when i > 0 -> <:patt< [%prim $int:string_of_int i$ ;] >>
- 140 |   | PRIM None i when i <= 0 -> assert False
- 141 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- CHILD (None, _)
- (However, some guarded clause may match this value.)
- File "ag_types.ml", lines 143-152, characters 22-3:
- 143 | ......................fun [
- 144 |     PARENT (Some name) -> <:expr< [%nterm $lid:name$ ;] >>
- 145 |   | PARENT None -> <:expr< [%nterm 0 ;] >>
- 146 |   | CHILD (Some name) i -> <:expr< [%nterm $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 147 |   | CHILD None i when i > 0 -> <:expr< [%nterm $int:string_of_int i$ ;] >>
- 148 |   | CHILD None i when i <= 0 -> assert False
- 149 |   | PRIM (Some name) i -> <:expr< [%prim $lid:name$ . ( $int:string_of_int i$ ) ;] >>
- 150 |   | PRIM None i when i > 0 -> <:expr< [%prim $int:string_of_int i$ ;] >>
- 151 |   | PRIM None i when i <= 0 -> assert False
- 152 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- CHILD (None, _)
- (However, some guarded clause may match this value.)
- File "ag_types.ml", lines 376-396, characters 4-5:
- 376 | ....match e with [
- 377 |       NT (PRIM tyname n) "" ->
- 378 |       <:expr< [%prim $lid:tyname$ . ( $int:string_of_int n$ );] >>
- 379 | 
- 380 |     | NT tnr attrna ->
- ...
- 393 |       let attributes = Ppxutil.convert_up_list_expr loc (List.map (fun (a,b) -> <:expr< $lid:a$ . $lid:b$ >>) attributes) in
- 394 |       let shield = Ppxutil.convert_up_list_expr loc (List.map (fun a -> <:expr< $lid:a$ >>) shield) in
- 395 |       <:expr< [%constituents { nodes = $nodes$ ; attributes = $attributes$ ; shield = $shield$ } ;] >>
- 396 |     ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- CHAINSTART (_, (PARENT _|PRIM (_, _)), _)
- File "ag_types.ml", line 772, characters 4-5:
- 772 |   | _ -> Ploc.raise (MLast.loc_of_expr e)
-           ^
- Warning 11 [redundant-case]: this match case is unused.
- File "ag_types.ml", lines 781-788, characters 2-3:
- 781 | ..match Pcre.extract ~{rex=name_re} ~{pos=0} s with [
- 782 |     [|_;lhs;""|] ->
- 783 |     { PN.nonterm_name = lhs; case_name = None }
- 784 |   | [|_;lhs;rhs|] ->
- 785 |     { PN.nonterm_name = lhs; case_name = Some rhs }
- 786 |   | exception Not_found ->
- 787 |     { PN.nonterm_name = s; case_name = None }
- 788 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- [|  |]
- File "ag_types.ml", lines 915-940, characters 2-3:
- 915 | ..match b with [
- 916 |     <:constructor:< $uid:ci$ of $list:tl$ $_algattrs:_$ >> as gc
- 917 |     when ag.storage_mode = Records && tl <> [] && List.mem_assoc (lhs_name^"__"^ci) ag.production_attributes ->
- 918 |       let (last, tl) = sep_last tl in
- 919 |       let lastpatt = match last with [
- ...
- 937 |         | p -> Patt.applist <:patt< $uid:ci$ >> [p]
- 938 |         ]
- 939 |       }
- 940 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (_, VaVal _, VaVal _, VaVal (Some _), _)
- File "ag_types.ml", lines 522-523, characters 6-62:
- 522 | ......(AR.NT nr attrna) as ar ->
- 523 |       TAR.NT (typed_nr ~{is_chainstart=False} loc p nr) attrna
- Warning 26 [unused-var]: unused variable ar.
- File "ag_types.ml", lines 873-879, characters 6-7:
- 873 | ......<:ctyp:< $lid:tyname$ >> as z when is_primitive_ctyp ag tyname -> do {
- 874 |         let aliasnum = NA.next_prim_number node_aliases tyname in
- 875 |         NA.add node_aliases (TNR.PRIM tyname aliasnum, NR.PRIM None (i+1)) ;
- 876 |         Std.push typed_nodes (TNR.PRIM tyname aliasnum) ;
- 877 |         let v = Printf.sprintf "v_%d" (i+1) in
- 878 |         (<:patt< $lid:v$ >>, (v, TNR.PRIM tyname aliasnum), (v, i+1))
- 879 |       }
- Warning 26 [unused-var]: unused variable z.
- File "ag_types.ml", line 1685, characters 8-17:
- 1685 |     let child_nts = P.child_nonterminals p in
-                ^^^^^^^^^
- Warning 26 [unused-var]: unused variable child_nts.
- File "ag_types.ml", line 1833, characters 8-11:
- 1833 |     let loc = p.P.loc in
-                ^^^
- Warning 26 [unused-var]: unused variable loc.
- File "ag_types.ml", lines 2148-2156, characters 4-24:
- 2148 | ....(TAR.CONSTITUENTS nodes _ _) as cr ->
- 2149 |     let new_tars = List.map (fun tnr -> TAR.NT tnr new_attr) nodes in
- 2150 |     let new_expr =
- 2151 |       new_tars
- 2152 |       |> List.map (TAR.to_expr loc)
- 2153 |       |> Ppxutil.convert_up_list_expr loc
- 2154 |       |> (fun e -> <:expr< List.concat $e$ >>)
- 2155 |     in
- 2156 |     (new_tars, new_expr)
- Warning 26 [unused-var]: unused variable cr.
- File "ag_types.ml", line 2196, characters 8-11:
- 2196 |     let loc = ag.AG.loc in
-                ^^^
- Warning 26 [unused-var]: unused variable loc.
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c ag_tsort.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "ag_tsort.ml", lines 393-407, characters 81-12:
- 393 | .................................................................................fun [
- 394 |              (TNR.CHILD tyname i, v) ->
- 395 |              let abs_childnum = match List.assoc v p.P.patt_var_to_childnum with [
- 396 |                x -> x | exception Not_found -> assert False
- 397 |              ] in
- ...
- 404 |                           $lid:fname$ attrs acc $lid:v$
- 405 |                           } >>
- 406 |            | (TNR.PRIM _ _, _) -> None
- 407 |            ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (PARENT _, _)
- File "ag_tsort.ml", lines 518-533, characters 2-3:
- 518 | ..match tar with [
- 519 |     TAR.NT (PARENT nt) attrna ->
- 520 |       <:expr< AttrTable. $lid:attr_setter_name nt attrna$ attrs lhs $rhs$ >>
- 521 | 
- 522 |   | TAR.PROD pn attrna ->
- ...
- 530 |   | TAR.NT (CHILD cnt childnum) cattrna ->
- 531 |     <:expr< AttrTable. $lid:attr_setter_name cnt cattrna$ attrs lhs $rhs$ >>
- 532 | 
- 533 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- NT (PRIM (_, _), _)
- File "ag_tsort.ml", lines 562-567, characters 71-7:
- 562 | .......................................................................match tar with [
- 563 |         TAR.NT (CHILD _ _| PARENT _) _ | TAR.PROD _ _ ->
- 564 |         Some <:expr< assert $attr_isset_expression loc ag p tar$ >>
- 565 | 
- 566 |       | TAR.NT (PRIM _ _) _ -> None
- 567 |       ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", lines 581-586, characters 71-7:
- 581 | .......................................................................match tar with [
- 582 |         TAR.NT (CHILD _ _ | PARENT _) _ ->
- 583 |         Some <:expr< assert $attr_isset_expression loc ag p tar$ >>
- 584 | 
- 585 |       | TAR.NT (PRIM _ _) _ -> None
- 586 |       ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (PROD (_, _)|CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", lines 649-654, characters 71-7:
- 649 | .......................................................................match tar with [
- 650 |         TAR.NT (CHILD _ _ | PARENT _) _ ->
- 651 |         Some <:expr< assert $attr_isset_expression loc ag p tar$ >>
- 652 | 
- 653 |       | TAR.NT (PRIM _ _) _ -> None
- 654 |       ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (PROD (_, _)|CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", lines 638-661, characters 2-3:
- 638 | ..match teqn.lhs with [
- 639 |     TAR.NT (CHILD cnt childnum) cattrna ->
- 640 |     let abs_childnum = lookup_abs_childnum p (NR.CHILD (Some cnt) childnum) in
- 641 |     let cattrcons = attr_constructor cattrna in
- 642 |     let cntcons = node_constructor cnt in
- ...
- 658 |     Some (patt, <:vala< None >>, <:expr< do { $list:l$ } >>)
- 659 | 
- 660 |   | TAR.PROD _ _ | TAR.NT (PARENT _) _ | TAR.NT (PRIM _ _) _ -> None
- 661 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (CHAINSTART (_, _, _)|REMOTE _|CONSTITUENTS (_, _, _))
- File "ag_tsort.ml", line 72, characters 7-28:
- 72 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-             ^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_longid.
- File "ag_tsort.ml", line 72, characters 30-56:
- 72 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_module_expr.
- File "ag_tsort.ml", line 157, characters 6-11:
- 157 |   let smode = ag.storage_mode in
-             ^^^^^
- Warning 26 [unused-var]: unused variable smode.
- File "ag_tsort.ml", line 171, characters 7-28:
- 171 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-              ^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_longid.
- File "ag_tsort.ml", line 171, characters 30-56:
- 171 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_module_expr.
- File "ag_tsort.ml", line 197, characters 7-28:
- 197 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-              ^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_longid.
- File "ag_tsort.ml", line 197, characters 30-56:
- 197 |   let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules smode in
-                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable wrapper_module_module_expr.
- File "ag_tsort.ml", line 559, characters 8-14:
- 559 |     let nthash = node_hash_module nt in
-               ^^^^^^
- Warning 26 [unused-var]: unused variable nthash.
- File "ag_tsort.ml", line 578, characters 8-14:
- 578 |     let nthash = node_hash_module nt in
-               ^^^^^^
- Warning 26 [unused-var]: unused variable nthash.
- File "ag_tsort.ml", line 643, characters 8-15:
- 643 |     let cnthash = node_hash_module cnt in
-               ^^^^^^^
- Warning 26 [unused-var]: unused variable cnthash.
- File "ag_tsort.ml", line 645, characters 8-15:
- 645 |     let pnthash = node_hash_module pnt in
-               ^^^^^^^
- Warning 26 [unused-var]: unused variable pnthash.
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c ag_ordered.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "ag_ordered.ml", lines 35-38, characters 29-1:
- 35 | .............................fun [
- 36 |   (TAR.NT (TNR.PARENT _) _) as tar -> tar
- 37 | | (TAR.NT (TNR.CHILD nterm _) attrna) as tar -> TAR.NT(TNR.PARENT nterm) attrna
- 38 | ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- NT (PRIM (_, _), _)
- File "ag_ordered.ml", lines 304-317, characters 35-3:
- 304 | ...................................match tar with [
- 305 |     TAR.PROD _ _ -> AR tar
- 306 |   | TAR.NT (PARENT nt as nr) attrna ->
- 307 |     let _t = must_lookup_t nt _t in
- 308 |     let (is_inh, partn) = find_partition_number loc _t attrna in
- ...
- 314 |     if not is_inh then EXTERNAL nr partn else AR tar
- 315 | 
- 316 |   | TAR.CHAINSTART _ _ _ | TAR.REMOTE _ | TAR.CONSTITUENTS _ _ _ -> assert False
- 317 |   ]
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- NT (PRIM (_, _), _)
- File "ag_ordered.ml", line 37, characters 2-79:
- 37 | | (TAR.NT (TNR.CHILD nterm _) attrna) as tar -> TAR.NT(TNR.PARENT nterm) attrna
-        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable tar.
- File "ag_ordered.ml", line 102, characters 6-23:
- 102 |   let lookup_in_new_ids nt = match List.assoc nt new_ids with [
-             ^^^^^^^^^^^^^^^^^
- Warning 26 [unused-var]: unused variable lookup_in_new_ids.
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c pa_deriving_attributed.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "pa_deriving_attributed.ml", lines 72-77, characters 22-5:
- 72 | ......................fun [
- 73 |       (<:vala< None >>, _) ->
- 74 |       Ploc.raise loc (Failure Fmt.(str "make_rho: %s: formal type-vars must all be named"
- 75 |                                      name))
- 76 |     | (<:vala< Some id >>, _) -> (id, Printf.sprintf "sub_%d" i)
- 77 |     ]........
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (VaAnt _, _)
- File "pa_deriving_attributed.ml", lines 138-141, characters 49-5:
- 138 | .................................................fun [
- 139 |       <:str_item< module $uid:_$ = $_$ >> as z -> ([ z :: mb ], vb)
- 140 |     | <:str_item< value $list:l$ >> -> (mb, l @ vb)
- 141 |     ]...............
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- StMod (_, VaVal false, VaVal ((VaVal (Some (VaVal _)), _, VaVal [])::_::_))
- File "pa_deriving_attributed.ml", lines 165-187, characters 35-7:
- 165 | ...................................fun [
- 166 |         <:constructor:< $uid:ci$ of $list:tl$ $algattrs:_$ >> ->
- 167 |           let prodname = name^"__"^ci in
- 168 |           let prod_consname = constructor_name rc prodname in
- 169 |           let argvars = List.mapi (fun i _ -> Printf.sprintf "v_%d" i) tl in
- ...
- 184 |            let consexp = if [] = argvars then <:expr< fun () -> $consexp$ >> else consexp in
- 185 |            <:str_item< value $lid:prod_consname$ = $consexp$ >>
- 186 |           ]
- 187 |       ].
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (_, VaVal _, VaVal _, VaVal None, VaAnt _)
- File "pa_deriving_attributed.ml", lines 163-188, characters 23-3:
- 163 | .......................match td.tdDef with [
- 164 |     <:ctyp:< $_$ == [ $list:branches$ ] >> | <:ctyp:< [ $list:branches$ ] >> ->
- 165 |       branches |> List.concat_map (fun [
- 166 |         <:constructor:< $uid:ci$ of $list:tl$ $algattrs:_$ >> ->
- 167 |           let prodname = name^"__"^ci in
- ...
- 185 |            <:str_item< value $lid:prod_consname$ = $consexp$ >>
- 186 |           ]
- 187 |       ])
- 188 |   ]...
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- TyMan (_, _, VaVal false, TySum (_, VaAnt _))
- File "pa_deriving_attributed.ml", lines 219-224, characters 14-7:
- 219 | ..............fun [
- 220 |         (<:vala< None >>, _) ->
- 221 |         Ploc.raise loc (Failure Fmt.(str "make_two_level_type_decl: %s: formal type-vars must all be named"
- 222 |                                        name))
- 223 |       | (<:vala< Some id >>, _) -> <:ctyp< ' $id$ >>
- 224 |       ]...........
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (VaAnt _, _)
- File "pa_deriving_attributed.ml", lines 254-267, characters 45-15:
- 254 | .............................................fun [
- 255 |               <:constructor:< $uid:ci$ of $list:tl$ $algattrs:algattrs$ >> as gc ->
- 256 |                 if List.mem_assoc (name^"__"^ci) rc.AC.typed_attributes then
- 257 |                   let al = List.assoc (name^"__"^ci) rc.AC.typed_attributes in
- 258 |                   let prod_attr_type_name = name^"__"^ci^"_attributes" in
- ...
- 264 |                     <:constructor< $uid:ci$ of $list:tl@[prod_attr_type]$ $algattrs:algattrs$ >>
- 265 |                   }
- 266 |                 else gc
- 267 |               ]....
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- (_, VaVal _, VaVal _, VaVal None, VaAnt _)
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c pa_deriving_ag.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "pa_deriving_ag.ml", lines 135-198, characters 2-5:
- 135 | ..<:str_item:< type $_flag:_$ $list:tdl$ >> as st ->
- 136 |     let rc0 = AGC.build_context loc arg tdl in
- 137 |     let (rc, uu_st, uu_open_st) = str_item_gen_decorated loc rc0 tdl in
- 138 |     let (wrapper_module_longid, wrapper_module_module_expr) = storage_mode_wrapper_modules rc.AGC.storage_mode in
- 139 |     let ag0 = AG.mk0 loc
- ...
- 195 |                   end ;
- 196 |                 end
- 197 |       >>
- 198 |     }
- Warning 26 [unused-var]: unused variable st.
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec,pa_ppx.deriving_plugins.std,camlp5.extend,camlp5.parser_quotations -syntax camlp5r -c pa_ag.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- File "pa_ag.ml", line 96, characters 22-30:
- 96 |   | exception Failure "caught" -> fallback_migrate_expr dt e
-                            ^^^^^^^^
- Warning 52 [fragile-literal-pattern]: Code should not depend on the actual values of
- this constructor's arguments. They are only for information
- and may change in future versions. (See manual section 11.5)
- File "pa_ag.ml", lines 287-290, characters 21-3:
- 287 | .....................match amodel with [
- 288 |     <:expr< Unique $_$ >> -> <:expr< Hashtables >>
- 289 |   | <:expr< Attributed $_$ >> -> <:expr< Records >>
- 290 |   ]...
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- ExApp (_, ExLong (_, LiUid (_, VaVal "")), _)
- File "pa_ag.ml", lines 317-320, characters 16-3:
- 317 | ................match last_td with [
- 318 |     <:type_decl:< $tp:(loc,tyna)$ = $tk$ >> ->
- 319 |     <:type_decl< $tp:(loc,tyna)$ = $tk$ $itemattrs:[attr]$ >>
- 320 |   ]...
- Warning 8 [partial-match]: this pattern-matching is not exhaustive.
- Here is an example of a case that is not matched:
- {tdIsDecl=VaVal true; tdNam=VaVal (_, _); tdPrm=VaVal []; tdPrv=VaVal false;
- tdCon=VaVal []; tdAttributes=VaVal (_::_); _ }
- env TOP=.. ../tools/LAUNCH ocamlfind ocamlopt    -package unix,camlp5,camlp5.parser_quotations,pa_ppx.deriving,pa_ppx.deriving_plugins.std,pa_ppx.base,pa_ppx.unmatched_vala,pa_ppx.deriving_plugins.params,pa_ppx.base,pa_ppx_unique.link,ocamlgraph,vec -syntax camlp5r -c pa_ppx_ag_runtime.ml
- findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/opam/.opam/default/lib/ocaml/compiler-libs, /home/opam/.opam/default/lib/ocaml
- /usr/bin/make DESTDIR=/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install/ install
- make[2]: Entering directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- mkdir -p /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib
- ./META.pl /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib > META
- env TOP=.. ../tools/LAUNCH not-ocamlfind reinstall-if-diff pa_ppx_ag -destdir /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib META camlp5_migrate.cmo ag_types.cmo ag_tsort.cmo ag_ordered.cmo pa_deriving_attributed.cmo pa_deriving_ag.cmo pa_ag.cmo pa_ppx_ag_runtime.cmo camlp5_migrate.cmi ag_types.cmi ag_tsort.cmi ag_ordered.cmi pa_deriving_attributed.cmi pa_deriving_ag.cmi pa_ag.cmi pa_ppx_ag_runtime.cmi camlp5_migrate.cmx ag_types.cmx ag_tsort.cmx ag_ordered.cmx pa_deriving_attributed.cmx pa_deriving_ag.cmx pa_ag.cmx pa_ppx_ag_runtime.cmx  camlp5_migrate.o ag_types.o ag_tsort.o ag_ordered.o pa_deriving_attributed.o pa_deriving_ag.o pa_ag.o pa_ppx_ag_runtime.o 
- ocamlfind: [WARNING] No such directory: /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag
- reinstall-if-diff: remove and install lists have differing lengths
- + ocamlfind remove -destdir /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib pa_ppx_ag
- ocamlfind: [WARNING] No such file: /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/META
- + ocamlfind install pa_ppx_ag -destdir /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib META camlp5_migrate.cmo ag_types.cmo ag_tsort.cmo ag_ordered.cmo pa_deriving_attributed.cmo pa_deriving_ag.cmo pa_ag.cmo pa_ppx_ag_runtime.cmo camlp5_migrate.cmi ag_types.cmi ag_tsort.cmi ag_ordered.cmi pa_deriving_attributed.cmi pa_deriving_ag.cmi pa_ag.cmi pa_ppx_ag_runtime.cmi camlp5_migrate.cmx ag_types.cmx ag_tsort.cmx ag_ordered.cmx pa_deriving_attributed.cmx pa_deriving_ag.cmx pa_ag.cmx pa_ppx_ag_runtime.cmx camlp5_migrate.o ag_types.o ag_tsort.o ag_ordered.o pa_deriving_attributed.o pa_deriving_ag.o pa_ag.o pa_ppx_ag_runtime.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ppx_ag_runtime.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ag.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_ag.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_attributed.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_ordered.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_tsort.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_types.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/camlp5_migrate.o
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ppx_ag_runtime.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ag.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_ag.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_attributed.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_ordered.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_tsort.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_types.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/camlp5_migrate.cmx
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ppx_ag_runtime.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ag.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_ag.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_attributed.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_ordered.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_tsort.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_types.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/camlp5_migrate.cmi
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ppx_ag_runtime.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_ag.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_ag.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/pa_deriving_attributed.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_ordered.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_tsort.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/ag_types.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/camlp5_migrate.cmo
- Installed /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib/pa_ppx_ag/META
- rm -f META
- make[2]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- make[1]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
-> compiled  pa_ppx_ag.0.08
[pa_ppx_ag: make install]
+ /usr/bin/make "install" (CWD=/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08)
- set -e; for i in pa_ag; do cd $i; /usr/bin/make all; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- /usr/bin/make DESTDIR=/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install/ install
- make[2]: Entering directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- mkdir -p /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib
- ./META.pl /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib > META
- env TOP=.. ../tools/LAUNCH not-ocamlfind reinstall-if-diff pa_ppx_ag -destdir /home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag/../local-install//lib META camlp5_migrate.cmo ag_types.cmo ag_tsort.cmo ag_ordered.cmo pa_deriving_attributed.cmo pa_deriving_ag.cmo pa_ag.cmo pa_ppx_ag_runtime.cmo camlp5_migrate.cmi ag_types.cmi ag_tsort.cmi ag_ordered.cmi pa_deriving_attributed.cmi pa_deriving_ag.cmi pa_ag.cmi pa_ppx_ag_runtime.cmi camlp5_migrate.cmx ag_types.cmx ag_tsort.cmx ag_ordered.cmx pa_deriving_attributed.cmx pa_deriving_ag.cmx pa_ag.cmx pa_ppx_ag_runtime.cmx  camlp5_migrate.o ag_types.o ag_tsort.o ag_ordered.o pa_deriving_attributed.o pa_deriving_ag.o pa_ag.o pa_ppx_ag_runtime.o 
- rm -f META
- make[2]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- make[1]: Leaving directory '/home/opam/.opam/default/.opam-switch/build/pa_ppx_ag.0.08/pa_ag'
- ocamlfind remove pa_ppx_ag || true
- ocamlfind: [WARNING] No such file: /home/opam/.opam/default/lib/pa_ppx_ag/META
- ocamlfind install pa_ppx_ag local-install/lib/pa_ppx_ag/*
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ppx_ag_runtime.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ppx_ag_runtime.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ppx_ag_runtime.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ppx_ag_runtime.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_attributed.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_attributed.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_attributed.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_attributed.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_ag.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_ag.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_ag.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_deriving_ag.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ag.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ag.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ag.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/pa_ag.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/camlp5_migrate.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/camlp5_migrate.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/camlp5_migrate.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/camlp5_migrate.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_types.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_types.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_types.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_types.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_tsort.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_tsort.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_tsort.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_tsort.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_ordered.o
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_ordered.cmx
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_ordered.cmo
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/ag_ordered.cmi
- Installed /home/opam/.opam/default/lib/pa_ppx_ag/META
-> installed pa_ppx_ag.0.08
[WARNING] Opam packages conf-libpcre.2, conf-m4.1, conf-perl-string-shellquote.3, conf-pkg-config.5 and not-ocamlfind.0.14 depend on the following system packages that are no longer installed: libpcre3-dev libstring-shellquote-perl m4 pkg-config xdot
  - conf-libpcre.2: depends on libpcre3-dev
  - conf-m4.1: depends on m4
  - conf-perl-string-shellquote.3: depends on libstring-shellquote-perl
  - conf-pkg-config.5: depends on pkg-config
  - not-ocamlfind.0.14: depends on xdot

=== STDERR ===

2026-06-16 19:03.49: OK: build pa_ppx_ag.0.08 (runc: 30.6s, disk: 68KB)
2026-06-16 19:03.49: Job succeeded