From 0e88dff17462b6b12045377f32b4a5c6ccbf1a90 Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 08:31:13 +0000 Subject: [PATCH 1/7] E0308 repartitioned on 967b5bc: 128 blocks -> 154 sites -> 13 clusters + 6 residue, with the two largest prior roots masked rather than closed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-derives the E0308 partition on current main against the 2026-08-21 15-category vocabulary, with a committed classifier so the population can be re-partitioned without a rebuild. Fail-closed: 6 residue sites are printed in full and never absorbed into the nearest familiar category. Findings that change how the board should be read: - T2 (34->0) and most of B3 (49->10) are MASKED, not repaired: their file v2_compiler_tokenize.rs now fails at E0599 before inference reaches those expressions, so the -73 sites are not evidence of progress. - RT-builtin (20->0) converted out of E0308 after gunbc#8792 made v1_rt::lookup generic; the callee now appears in 17 E0061 blocks instead. - R5 (6->0) is genuinely removed. - Two new mechanisms: ELEM-COLL (element vs its own collection, 4) and BOX-WRAP (1). - The brief's board (E0308=182 at this sha) does not reproduce; this run measures 128 with the prior producer and contract, and independently corroborates the brief's T2=0 and T3=14. The 182 is reported unreproduced, never differenced. The delta vector and the callee note are carried BESIDE the derived cluster, not folded into it — the direct correction of the 2026-08-21 RT-builtin label, which consumed its discriminating input and could not be re-adjudicated afterwards. Co-Authored-By: Claude Opus 5 --- .gitignore | 1 + .../self-host-cargo-refusal-root-partition.md | 2 +- docs/probes/e0308_classify_sites.py | 244 + docs/probes/e0308_partition_2026-08-21.md | 2 + docs/probes/e0308_partition_2026-08-22.md | 231 + .../03_ingest.cargo.log | 4713 +++++++++++++++++ .../sites_classified.tsv | 155 + .../summary_stamp.md | 51 + 8 files changed, 5398 insertions(+), 1 deletion(-) create mode 100755 docs/probes/e0308_classify_sites.py create mode 100644 docs/probes/e0308_partition_2026-08-22.md create mode 100644 docs/probes/e0308_partition_2026-08-22/03_ingest.cargo.log create mode 100644 docs/probes/e0308_partition_2026-08-22/sites_classified.tsv create mode 100644 docs/probes/e0308_partition_2026-08-22/summary_stamp.md diff --git a/.gitignore b/.gitignore index 25910bd4c04..f6bd00da478 100644 --- a/.gitignore +++ b/.gitignore @@ -114,6 +114,7 @@ out.txt !docs/plans/witness-subject-execution-audit.py !docs/probes/e0369_b1_operator_classify.py !docs/probes/floor_cut_name_resolution_partition.py +!docs/probes/e0308_classify_sites.py # --- CPython bytecode cache (PEP 3147) [cited: python.org/peps/pep-3147] --- __pycache__/ diff --git a/docs/plans/self-host-cargo-refusal-root-partition.md b/docs/plans/self-host-cargo-refusal-root-partition.md index 28a6d9d6ee8..05ced5dabcf 100644 --- a/docs/plans/self-host-cargo-refusal-root-partition.md +++ b/docs/plans/self-host-cargo-refusal-root-partition.md @@ -2568,7 +2568,7 @@ of the categories do not exist in §19 or §11.3**. declaration). 47 files hold the rest. Full receipt, with the board reproduced beside its denominator, the block-vs-site instrument split, -and the controls: [`docs/probes/e0308_partition_2026-08-21.md`](../probes/e0308_partition_2026-08-21.md). +and the controls: [`docs/probes/e0308_partition_2026-08-21.md`](../probes/e0308_partition_2026-08-21.md). Re-derived on `967b5bc1b92` with a committed classifier, and joined row-by-row against that board, in [`docs/probes/e0308_partition_2026-08-22.md`](../probes/e0308_partition_2026-08-22.md). Per-site TSV: [`docs/probes/e0308_partition_2026-08-21/sites_classified.tsv`](../probes/e0308_partition_2026-08-21/sites_classified.tsv). diff --git a/docs/probes/e0308_classify_sites.py b/docs/probes/e0308_classify_sites.py new file mode 100755 index 00000000000..3205d819d90 --- /dev/null +++ b/docs/probes/e0308_classify_sites.py @@ -0,0 +1,244 @@ +#!/usr/bin/env python3 +# PROBE INSTRUMENT (measurement only; never imported by production code). +# dissolve-on: the E0308 population reaches zero on the self-host board, or the partition moves +# into a modeled .dag carrier that reads the diagnostic stream directly. Committed rather than +# run ad hoc because the 2026-08-21 partition had no committed classifier, so its categories +# could not be re-derived and a later lane had to re-author the discriminators from prose. +"""E0308 raw rows -> canonical sites -> mechanism clusters (candidate roots). + +Reads a cargo human-format build log; emits a per-site TSV. Fail-closed: +any site that does not match a discriminator is printed as RESIDUE, never +absorbed into the nearest familiar category. +""" +import re, sys, collections + +ANSI = re.compile(r"\x1b\[[0-9;]*m") +BLOCK = re.compile(r"^error\[(E\d+)\]: (.*)$") +SPAN = re.compile(r"^\s*-->\s+(\S+?):(\d+):(\d+)\s*$") +INLINE = re.compile(r"expected (?:type parameter |struct |enum |reference |unit type )?`(.+?)`, found (?:type parameter |struct |enum |reference |unit type )?`(.+?)`") +NOTE_EXP = re.compile(r"=\s*note:\s*expected (\w+(?: \w+)?) `(.+?)`\s*$") +NOTE_FOUND = re.compile(r"^\s*found (\w+(?: \w+)?) `(.+?)`\s*$") + +def read_blocks(path): + lines = [ANSI.sub("", l.rstrip("\n")) for l in open(path, encoding="utf-8", errors="replace")] + blocks, cur = [], None + for i, l in enumerate(lines): + m = BLOCK.match(l) + if m: + if cur: blocks.append(cur) + cur = {"code": m.group(1), "msg": m.group(2), "lines": []} + continue + if cur is not None: + if l.startswith("error") or l.startswith("warning:"): + blocks.append(cur); cur = None; continue + cur["lines"].append(l) + if cur: blocks.append(cur) + return [b for b in blocks if b["code"] == "E0308"] + +def block_sites(b): + """Expand one block into canonical mismatch sites.""" + file = line = col = None + callee_note = "" + callee_kind = "" + pending_note = None + notes = [] # (expected, found) from `= note:` groups + inlines = [] # (expected, found) from caret labels + reorder = False + in_callee = False + for l in b["lines"]: + s = SPAN.match(l) + if s: + if in_callee and not callee_note: + callee_note = "%s:%s:%s" % s.groups() + in_callee = False + elif file is None: + file, line, col = s.group(1), s.group(2), s.group(3) + continue + if l.startswith("note: ") and "defined here" in l: + in_callee = True + callee_kind = l[len("note: "):].strip() + continue + if "reorder these arguments" in l or l.startswith("help: did you mean"): + reorder = True + m = NOTE_EXP.search(l) + if m: + pending_note = (m.group(1), m.group(2)); continue + if pending_note: + f = NOTE_FOUND.match(l) + if f: + notes.append((pending_note[1], f.group(2), pending_note[0], f.group(1))) + pending_note = None + for m in INLINE.finditer(l): + inlines.append((m.group(1), m.group(2))) + pairs = [] + seen = set() + for e, f in ((normalize(a), normalize(b)) for a, b in inlines): + if (e, f) not in seen: + seen.add((e, f)); pairs.append((e, f, "", "")) + for e, f, ke, kf in ((normalize(a), normalize(b), c, d) for a, b, c, d in notes): + if (e, f) not in seen: + seen.add((e, f)); pairs.append((e, f, ke, kf)) + # One mismatch printed two ways: rustc's caret label elides deep generics as `...` + # while the `= note:` prints the type in full. Keeping both would count one site twice. + def elision_of(a, b): + if "..." not in a[0] + a[1] or "..." in b[0] + b[1]: + return False + pat = lambda t: "^" + re.escape(t).replace(r"\.\.\.", ".*") + "$" + return bool(re.match(pat(a[0]), b[0]) and re.match(pat(a[1]), b[1])) + pairs = [a for a in pairs if not any(elision_of(a, b) for b in pairs if b is not a)] + out = [] + if not pairs: + out.append(dict(file=file, line=line, col=col, expected="", found="", + kind_e="", kind_f="", callee=callee_note, callee_kind=callee_kind, + reorder=reorder, msg=b["msg"], nopair=True)) + for e, f, ke, kf in pairs: + out.append(dict(file=file, line=line, col=col, expected=e, found=f, + kind_e=ke, kind_f=kf, callee=callee_note, callee_kind=callee_kind, + reorder=reorder, msg=b["msg"], nopair=False)) + return out + +# ---- delta vector ----------------------------------------------------------- +def strip_rc(t): + n = 0 + while t.startswith("Rc<") and t.endswith(">"): + t = t[3:-1]; n += 1 + return t, n + +def head(t): + """Nominal head: generic arguments dropped, module path dropped.""" + t = t.split("<")[0] + return t.split("::")[-1].strip("&") + +PATH_NOISE = re.compile(r"\b(?:std::string::|std::option::|std::vec::|std::collections::|im::|alloc::)") +def normalize(t): + """Semantic identity of a type spelling: module-path noise removed, spacing collapsed. + `im::Vector<..>` and `Vector<..>` are ONE type printed two ways by rustc; keeping both + would count one mismatch twice.""" + t = PATH_NOISE.sub("", t) + t = re.sub(r"\b[a-z0-9_]+::", "", t) + return re.sub(r"\s+", " ", t).strip() + +TEXT = {"String", "str", "&str"} +NUMERIC_NATIVE = {"i64", "u64", "i32", "usize", "{integer}", "integer", "u8", "i8", "u32"} +COLLECTIONS = {"OrdSet", "HashMap", "BTreeSet", "BTreeMap", "Vec", "Vector", "HashSet", + "PointwisePower", "PartialFunction", "FreeMonoid"} + +def delta_vector(e, f): + eb, en = strip_rc(e); fb, fn = strip_rc(f) + v = [] + if en != fn: v.append("rc_depth") + if head(eb) != head(fb): v.append("nominal") + elif eb != fb: v.append("generic_arg") + if head(eb) in COLLECTIONS or head(fb) in COLLECTIONS: v.append("container") + if e.startswith("&") or f.startswith("&"): v.append("borrowed") + if head(eb) == "Option" or head(fb) == "Option" or f == "None": v.append("optionality") + return "+".join(v) if v else "none" + +# ---- discriminators (prior 15-root vocabulary) ------------------------------ +def classify(s): + e, f = s["expected"], s["found"] + if s["nopair"]: + if s["reorder"] or "reorder" in s["msg"]: + return "ARG-ORDER", "call_argument_order_diverges_from_declaration" + return "RESIDUE", "block_carries_no_expected_found_pair" + eb, en = strip_rc(e); fb, fn = strip_rc(f) + he, hf = head(eb), head(fb) + if s["reorder"]: + return "ARG-ORDER", "call_argument_order_diverges_from_declaration" + # A-clone: generic parameter cloned through a reference + if s["kind_e"] == "type parameter" or (eb.isidentifier() and f == "&" + e): + if f.startswith("&") and f.lstrip("&") == e: + return "A-clone", "generic_param_clone_bound_absent" + # B3 modeled Nat vs native integer + if {he, hf} & {"Nat"} and (hf in NUMERIC_NATIVE or he in NUMERIC_NATIVE + or hf == "integer" or he == "integer"): + return "B3", "modeled_numeric_vs_native" + # B2 Bool carrier vs native/variant + if {he, hf} & {"Bool"} and (hf in {"bool", "True", "False"} or he in {"bool", "True", "False"}): + return "B2", "bool_carrier_vs_native_or_variant" + # T2 text carrier vs String + if (he in TEXT and hf in {"Vector", "FreeMonoid"}) or (hf in TEXT and he in {"Vector", "FreeMonoid"}): + return "T2", "text_carrier_vs_string" + # T3 collection carrier fork + if he in COLLECTIONS and hf in COLLECTIONS and he != hf: + return "T3", "collection_carrier_fork" + # DIAG diagnostic carrier fork + if {he, hf} & {"Diagnostic", "NonEmptyDiagnostics", "Diagnostics"} and he != hf: + return "DIAG", "diagnostic_carrier_fork" + # W Witness type argument + if he == "Witness" or hf == "Witness": + return "W", "witness_type_argument" + # C carrier collapses to unit + if eb == "()" or fb == "()" or s["kind_f"] == "unit type" or s["kind_e"] == "unit type": + return "C", "carrier_collapses_to_unit" + # R2 optional surface fork + if he == "Option" or hf == "Option" or f == "None" or e == "None": + return "R2", "optional_surface_fork" + # BOX-WRAP: same nominal, one side Box-wrapped. Named separately from R1 because the + # wrapper is a different one and a wrap-decision fix keyed on Rc would not reach it. + if e == "Box<%s>" % f or f == "Box<%s>" % e: + return "BOX-WRAP", "box_wrap_only" + # ELEM-COLL: one side is the ELEMENT, the other its own collection. Mechanically + # distinct from D (no alias, no arity change on one nominal) and from T3 (one carrier, + # not two forked carriers), so it gets its own arm rather than the nearest familiar one. + def elem_of(container_t, other_head): + m = re.match(r"[A-Za-z_][A-Za-z0-9_]*<(.+)>$", container_t) + if not m: return False + args = m.group(1) + return head(strip_rc(args.split(",")[-1].strip())[0]) == other_head + if he in COLLECTIONS and hf not in COLLECTIONS and elem_of(eb, hf): + return "ELEM-COLL", "element_vs_its_own_collection" + if hf in COLLECTIONS and he not in COLLECTIONS and elem_of(fb, he): + return "ELEM-COLL", "element_vs_its_own_collection" + # D alias arity / generic argument count: one side IS the other's generic argument, + # or the two differ only by an elided argument list + if he != hf and (re.search(r"[<,]\s*(?:Rc<)?%s[>,]" % re.escape(hf), eb) + or re.search(r"[<,]\s*(?:Rc<)?%s[>,]" % re.escape(he), fb)): + return "D", "alias_arity_generic_argument_count" + if he != hf and ("..." in e or "..." in f): + return "D", "alias_arity_generic_argument_count" + # R5 duplicate type authority (same leaf spelling under two paths / near-identical nominals) + if he != hf and (he in hf or hf in he): + return "R5", "duplicate_type_authority" + # R1 bare<->Rc wrap decision + if he == hf and en != fn: + return "R1", "rc_wrap_only" + if he == hf and eb != fb and ("Rc<" in eb or "Rc<" in fb): + return "R1", "rc_wrap_at_type_argument_depth" + if he == hf and eb != fb: + return "D", "alias_arity_generic_argument_count" + return "RESIDUE", "unclassified_pair: %s | %s" % (e, f) + +def main(path, out): + blocks = read_blocks(path) + sites, seen = [], set() + for b in blocks: + for s in block_sites(b): + key = (s["file"], s["line"], s["col"], + frozenset((s["expected"], s["found"]))) + if key in seen: continue + seen.add(key) + root, reason = classify(s) + s["root"], s["reason"] = root, reason + s["delta"] = "" if s["nopair"] else delta_vector(s["expected"], s["found"]) + sites.append(s) + cols = ["file", "line", "col", "expected", "found", "delta", "root", "reason", + "callee", "callee_kind", "block_msg"] + with open(out, "w") as fh: + fh.write("\t".join(cols) + "\n") + for s in sites: + fh.write("\t".join(str(s.get(c, "")) for c in + ["file", "line", "col", "expected", "found", "delta", "root", "reason", + "callee", "callee_kind", "msg"]) + "\n") + print("raw E0308 blocks: %d" % len(blocks)) + print("canonical sites : %d" % len(sites)) + hist = collections.Counter(s["root"] for s in sites) + for r, n in hist.most_common(): + print(" %-12s %4d %5.1f%%" % (r, n, 100.0 * n / len(sites))) + print("\nRESIDUE detail:") + for s in sites: + if s["root"] == "RESIDUE": + print(" %s:%s:%s %s | %s [%s] callee=%s" % + (s["file"], s["line"], s["col"], s["expected"], s["found"], s["delta"], s["callee"])) + +main(sys.argv[1], sys.argv[2]) diff --git a/docs/probes/e0308_partition_2026-08-21.md b/docs/probes/e0308_partition_2026-08-21.md index 19f2e1e884d..8cfae86cd54 100644 --- a/docs/probes/e0308_partition_2026-08-21.md +++ b/docs/probes/e0308_partition_2026-08-21.md @@ -1,5 +1,7 @@ # E0308 mechanism partition, re-derived on current main — 03_ingest, 199 blocks / 235 sites (2026-08-21) +**SUPERSEDED AS A POPULATION (not as a vocabulary) by [`e0308_partition_2026-08-22.md`](e0308_partition_2026-08-22.md)**, which re-derives this subject at `967b5bc1b92` with a committed classifier: 128 blocks / 154 sites / 13 clusters + 6 residue. Read that board before planning against the shares below — T2 and most of B3 are MASKED there by an earlier `E0599` in `v2_compiler_tokenize.rs`, not repaired. + **Session:** `smart-otter-254`. **Work item:** `node://adhoc-6b82f82a-ead`. **Assignment (smart-ram-730):** re-derive the expected/found categories against the **live 199** (39% of the coded board, no owner) rather than inheriting the older 204/275 partitions. diff --git a/docs/probes/e0308_partition_2026-08-22.md b/docs/probes/e0308_partition_2026-08-22.md new file mode 100644 index 00000000000..2ddda4ca1e9 --- /dev/null +++ b/docs/probes/e0308_partition_2026-08-22.md @@ -0,0 +1,231 @@ +# E0308 repartitioned on current main — 128 raw blocks / 154 canonical sites / 13 clusters + 6 residue (2026-08-22) + +**Session:** `eager-lark-892`. **Work item:** `node://adhoc-7a94657d-f17`. +**Assignment (`smart-ram-730`):** re-derive raw rows → canonical sites → mechanism roots against the +existing 15-category vocabulary of +[`e0308_partition_2026-08-21.md`](e0308_partition_2026-08-21.md), fail closed on new residue. + +This is a **measurement**, not a repair. Nothing in this lane changes a single emitted type. + +**Every cluster below is a CANDIDATE root, not a root.** Mechanical clustering plus shared +provenance establishes that a set of sites *looks like* one producer decision; only changing one +modeled decision, rerunning the whole board, and observing the exact site conversions establishes +that it *is* one. The word "root" is therefore used only for the prior partition's category names, +which are reused here as a vocabulary. + +## Subject, ref, producer — checked, not assumed + +| | | +|---|---| +| subject | `src/v2/compiler/03_ingest.dag` closure, emitted → cssl-assembled → `cargo build --release --lib` (M=1) | +| requested ref | `967b5bc1b92` | +| observed ref | `967b5bc1b92ee66250e06a7870c132b48a16b80a`, echoed by `git rev-parse HEAD` from **inside** the remote dispatch and carried independently in column 9 of the probe row | +| same-base pin | `PROBE_EXPECT_BASE_SHA=967b5bc1b92ee…` armed; the run did not refuse, so tree == pin | +| producer | `docs/probes/curated_cargo_probe_one.sh`, `PRODUCER_PATH=curated_cargo_probe_one+emit+seedlink+cargo`, `EMIT_COUNT_SRC=gunbc_compiled_line` | +| contract | `CSSL_STD_SEED_LINK=1`; `shim_lib_rel=""` (no lane shim for this module) | +| emitted roster | **177 files**, 503 emit diagnostics — the same roster count the 2026-08-21 run reported, so the subject is the same subject | +| classifier | [`e0308_classify_sites.py`](e0308_classify_sites.py), committed, run over the raw log below | +| raw log | [`e0308_partition_2026-08-22/03_ingest.cargo.log`](e0308_partition_2026-08-22/03_ingest.cargo.log) — published so this population can be **re-partitioned without a rebuild** | + +Board this run reproduces in full, so the E0308 share is readable beside its denominator: + +``` +E0308:128 E0425:24 E0277:23 E0599:22 E0004:21 E0609:18 E0560:17 E0061:17 +E0631:9 E0433:8 E0369:7 E0614:6 E0282:6 E0071:3 E0728:2 E0310:2 +E0533:1 E0223:1 uncoded_unsupported_mock_expression:13 uncoded_UNRESOLVED_CompilerError:1 +CARGO_ERROR_TOTAL=329 HISTOGRAM_SUM=330 +``` + +E0308 = **128 / 316 coded rows = 40.5%** (329 is cargo's own error total, a different instrument; +the two are published together and never differenced — see the probe's `WHY 10 AND 11` note). + +### The brief's board does not reproduce, and that is a finding, not a nuisance + +The brief states 315 rustc errors with E0308 = **182** on this exact sha under the coded-raw +convention. At that sha, with the prior partition's exact producer and contract, this run measures +316 coded rows with E0308 = **128**. The totals agree to within one row; the E0308 share does not. +Two corroborations say the instrument here is not simply wrong: the brief reports **T2 now zero** +and **T3 currently 14**, and this run independently measures T2 = 0 and T3 = 14. The 54-row gap +is therefore in the E0308 counting convention or in a differing invocation (shim, entry, or M), +not in the tree. **The 182 is not used anywhere below**, and no number here is differenced against +it. + +## Raw rows → canonical sites + +- **128** — raw `error[E0308]` blocks (what the probe histogram counts). +- **154** — canonical mismatch sites. + +Blocks < sites because one `arguments to this function are incorrect` block carries one +`expected …, found …` per wrong argument. Two collapses run the other way and both are *unit* +corrections, never deltas: + +1. **One mismatch printed two ways.** rustc's caret label elides deep generics + (`Coverage>`) while the block's `= note:` prints the same type in full + (`Coverage>`). Counting both inflates 13 coverage sites to 26. + The classifier drops an elided pair only when a non-elided pair in the *same block* matches it + under `... → .*`. +2. **One type printed two ways.** `im::Vector` and `Vector`, `std::string::String` and + `String` are one type; module-path noise is normalized before dedup. + +Sites are keyed on `(file, line, col, {expected, found})` — the pair is direction-insensitive, +because rustc prints both orientations of one mismatch when it reports a closure's argument and +its expectation. + +## The partition — 13 clusters + a live residue arm, summing to 154 + +| cluster | sites | % | files | top pair (n) | +|---|---:|---:|---:|---| +| **R1** bare↔`Rc` wrap decision | 39 | 25.3% | 19 | `Rc \| LetBinding` (4) | +| **R2** Optional surface fork | 22 | 14.3% | 7 | `Option> \| Rc<_>` (8) | +| **T3** collection carrier fork | 14 | 9.1% | 10 | `OrdSet \| Rc>` (5) | +| **D** alias arity / generic argument count | 13 | 8.4% | 1 | `Coverage> \| CoverageDefectAcceptanceKey` (13) | +| **A-clone** generic parameter `Clone` bound absent | 12 | 7.8% | 6 | `_ \| &_` (6) | +| **ARG-ORDER** call argument order | 11 | 7.1% | 1 | (no pair; rustc's own reorder help) (6) | +| **B3** modeled `Nat` vs native integer | 10 | 6.5% | 1 | `Rc \| {integer}` (10) | +| **W** `Witness<_>` type argument | 9 | 5.8% | 6 | `Witness> \| Witness>` (2) | +| **B2** `Bool` carrier vs `bool`/variant | 6 | 3.9% | 1 | `Bool \| True` (3) | +| **RESIDUE** unclassified | 6 | 3.9% | 4 | printed in full below | +| **C** carrier collapses to `()` | 4 | 2.6% | 3 | `Rc \| ()` (2) | +| **ELEM-COLL** element vs its own collection — **NEW** | 4 | 2.6% | 1 | `StateDurabilityBoundary \| Vector>` (2) | +| **DIAG** diagnostic carrier fork | 3 | 1.9% | 1 | `Rc \| Rc` (3) | +| **BOX-WRAP** `Box` wrap decision — **NEW** | 1 | 0.6% | 1 | `i64 \| Box` (1) | + +Classified = 148 / 154 = **96.1%**; residue = **6 sites, 3.9%**. The stop rule is met on both arms. + +### The grouping key is the delta vector, kept beside the pair + +The classifier derives, per site, which axes differ — `rc_depth`, `nominal`, `generic_arg`, +`container`, `borrowed`, `optionality` — and stores that vector in its own TSV column **beside** +the derived cluster, never folded into it. So is the callee note (`callee`, `callee_kind`). This +is the direct correction of the 2026-08-21 `RT-builtin` failure, where `note: function defined +here → v1_rt.rs` was consumed into the root label and the population could not afterwards be +re-adjudicated into wrong-callee-selection versus correct-callee-wrong-signature. + +| cluster | delta vectors | +|---|---| +| R1 | `rc_depth`×17, `generic_arg`×14, `generic_arg+container`×6 | +| R2 | `rc_depth+nominal+optionality`×19, `nominal+optionality`×3 | +| T3 | `rc_depth+nominal+container`×14 | +| D | `nominal`×13 | +| A-clone | `generic_arg+borrowed`×12 | +| B3 | `rc_depth+nominal`×10 | +| W | `generic_arg`×8, `nominal`×1 | +| ELEM-COLL | `nominal+container`×4 | + +The vector is what makes **R1 the largest cluster and also the least unified one**: 17 of its 39 +sites differ only at the outer `Rc`, 14 differ only *inside* a type argument +(`Rc>>` vs `Rc>`), and 6 differ at an element inside a +container. A wrap-decision change that normalizes only the outer position leaves 20 of 39 standing. +That is the same depth split the 2026-08-21 board reported (22 outer / 11 deep) and it has not +moved. + +## Residue — printed in full, never absorbed + +| file | line | expected \| found | delta | callee note | +|---|---:|---|---|---| +| `src/std_state_durability.rs` | 878 | `Rc>` \| `Rc>>` | `nominal+container` | `src/v1_rt.rs:379:8` | +| `src/v2_lens_determinism.rs` | 135 | `Rc` \| `Rc` | `nominal` | `src/v2_lens_determinism.rs:128:8` | +| `src/v2_std_compilers_target_model.rs` | 2137 | `i64` \| `String` | `nominal` | `src/v2_std_compilers_target_model.rs:2126:8` | +| `src/v2_std_compilers_target_model.rs` | 2384 | `String` \| `i64` | `nominal` | — | +| `src/v2_std_compilers_target_model.rs` | 7002 | `TargetUseSiteOwnershipLookup` \| `TargetUseSiteOwnershipCatalogLookup` | `nominal` | `alloc/src/rc.rs` | +| `src/v2_compiler_source_authority.rs` | 1331 | `Rc` \| `Rc` | `nominal` | `src/v2_compiler_source_authority.rs:1311:8` | + +Two of these six (`Rc ↔ Rc`, `TargetUseSiteOwnershipLookup ↔ +…CatalogLookup`) were residue on the 2026-08-21 board too, under a hand classification — a +two-instrument agreement that they are genuinely unlike the named mechanisms, not a classifier +gap. The residue arm is **known-positive**: it survives with 6 rows, and a run returning zero +residue would itself be the finding. + +The one residue cluster large enough to own is the three +`v2_std_compilers_target_model.rs` sites, two of which are a plain `String`↔`i64` carrier +disagreement in both directions. Suggested owner below. + +## Join against the 2026-08-21 partition + +Joined at cluster and emitted-file grain — **not** at line grain, because the trees differ and a +line number is not a semantic identity. **The confound is stated first:** the prior partition +shipped no classifier, so its categories were assigned by hand. Every count difference below is +therefore a mix of population change and classifier vintage, and only the rows marked with a +mechanical cause are safe to read as population change. + +| prior root | prior sites | now | disposition | basis | +|---|---:|---:|---|---| +| B3 | 49 | 10 | **Unjoinable — masked, not closed** | 36 of the prior 49 were in `v2_compiler_tokenize.rs`. That file emits and still fails, but at **E0599** (`no method named apply found for Rc`), which stops inference before the enclosing expressions are type-checked. Its B3/T2 sites are **unobservable at E0308 grain**, not repaired. | +| T2 | 34 | **0** | **Unjoinable — masked** | 32 of 34 were the same tokenize file, same masking. Independently corroborated as zero by the brief. | +| RT-builtin | 20 | **0** | **Converted out of E0308** | `v1_rt::lookup` was made `ReceiverKey`-generic by gunbc#8792, and **no current E0308 site names `lookup`**. `v1_rt.rs` is still named by 2 E0308 blocks, but as a different callee — `append(list: Rc>, item: T)`, which lands in ELEM-COLL/residue — and by **17 `E0061`** (arity) blocks. So the mechanism left this error code; that is not the same as the call sites being correct. | +| R5 duplicate type authority | 6 | **0** | **Removed** | `OccurrenceId`/`NodeOccurrenceId` appears in **zero** current sites (`grep Occurrence` over the TSV = 0) and in no other cluster, so it is not a reclassification. | +| R1 | 33 | 39 | StillLive | 16 of 20 prior files still carry R1; depth split unchanged. | +| T3 | 25 | 14 | StillLive (smaller) | all 10 current files were prior files. | +| D | 13 | 13 | StillLive, identical | same single file `v2_lens_coverage.rs`, same pair, same count. | +| ARG-ORDER | 11 | 11 | StillLive, identical | same single file `v2_compiler_eval.rs`, same five `eval_*_node` callees. | +| B2 | 6 | 6 | StillLive, identical | `v2_std_logic.rs`. | +| C | 4 | 4 | StillLive | same three files. | +| A-clone | 6 | 12 | StillLive (larger) | same six files; the prior hand pass counted one site per file, this pass counts each accessor. Most likely instrument, not growth. | +| R2 | 9 | 22 | StillLive (larger) | 3 of 4 prior files still present, 4 new ones. | +| W | 8 | 9 | StillLive | 4 of 4 prior files present. | +| DIAG | 4 | 3 | StillLive | `v2_compiler_source_authority.rs`. | +| — | — | 4 | **New mechanism: ELEM-COLL** | an element passed where its own collection is expected (`StateDurabilityBoundary` vs `Vector>`), all in `std_state_durability.rs`. Mechanically distinct from D (no alias, no arity change) and from T3 (one carrier, not two forked carriers), so it gets its own arm rather than the nearest familiar one. | +| — | — | 1 | **New mechanism: BOX-WRAP** | `i64` vs `Box`. Named separately from R1 because the wrapper is a different one: a wrap-decision fix keyed on `Rc` would not reach it. | + +**The tokenize masking is the most consequential row in this table.** The two largest roots of the +2026-08-21 board read as −73 sites, and none of that is evidence of repair. Any burn-down ranking +built from this board without that caveat will under-rank the `Nat`/text realization seam by the +width of one file. + +## Concentration: where the sites are + +| emitted file | sites | dominant clusters | +|---|---:|---| +| `src/v2_compiler_eval.rs` | 19 | ARG-ORDER 11, W 4, R2 3 | +| `src/v2_lens_coverage.rs` | 14 | D 13, C 1 | +| `src/v2_std_integer.rs` | 10 | B3 10 | +| `src/std_cache_interface.rs` | 9 | R2 5, R1 4 | +| `src/v2_lens_complexity_accumulator_copy_analyze.rs` | 8 | R1 8 | +| `src/v2_std_logic.rs` | 6 | B2 6 | +| `src/v2_extdeps_languages_dag.rs` | 6 | R2 6 | +| `src/std_realization_schedule.rs` | 5 | R1 5 | + +45 emitted files carry the 154 sites. **Six clusters are single-file** (D, ARG-ORDER, B3, B2, +ELEM-COLL, BOX-WRAP), which is the strongest cost-shape signal in this run: 45 of 154 sites sit +behind six decisions in six files. + +## Cost shape — the staffing question the brief asked + +The board is **not** a long tail of independent site repairs. Four clusters (R1, R2, T3, D) cover +88 of 154 = 57%, and six single-file clusters cover another 45. The tail is 6 residue sites in 4 +files. This agrees in shape with the 2026-08-21 finding (7 largest categories = 79%) even though +the population is different. + +| cluster | sites | suggested owner | why that owner | +|---|---:|---|---| +| R1 (39, 19 files) | wrap decision | emitter wrap-decision lane | needs the outer/type-argument/element split treated as one decision at three depths; the 2026-08-21 board found the same split, so it is stable and worth one design | +| R2 (22, 7 files) | Optional surface lane | `Option>` vs `Rc` in 19 of 22 — a single surface decision about where optionality is realized | +| T3 (14, 10 files) | collection carrier lane | one shape: modeled `PointwisePower`/`PartialFunction` against native `OrdSet`/`HashMap` | +| D (13, 1 file) | `v2.lens.coverage` owner | entirely one alias in one file; cheapest whole-cluster close on the board | +| ARG-ORDER (11, 1 file) | `v2.compiler.eval` owner | five `eval_*_node` callees; DESIGN §4b's named "mislabeled call reordered into positional leftovers", measured | +| A-clone (12, 6 files) | generic-bound emission lane | generated variant accessor clones `&T` where `T: Clone` was never emitted | +| B3 (10) + B2 (6) | modeled-primitive realization lane | `Nat`/`Bool` against native — same seam, and B3's real size is hidden by the tokenize mask | +| residue at `target_model.rs` (3) | `v2.std.compilers.target_model` owner | `String`↔`i64` in both directions; needs a read of the producer, not a pair rule | + +## What this run does not establish + +- **No cluster is a root.** Every row above is a candidate. Only an intervention — change one + modeled decision, rerun the whole board, observe the exact conversions — promotes one. +- **A zero is not a repair.** T2 and B3-at-tokenize are masked by an earlier E0599 in the same + file; RT-builtin left E0308 for E0061. Both are stated as conversions, not closures. +- **Old counts are not differenced against new ones** except where a mechanical cause is named, + because the prior partition had no committed classifier. +- **M=1.** These are `03_ingest`'s closure. Per-module boards are overlapping closures and may not + be summed with another module's. +- **The brief's 182 is not reconciled**, only reported as unreproduced with its two corroborating + agreements (T2=0, T3=14) stated beside it. +- **No emitter decision was traced.** Cluster names come from pair plus callee evidence; no + authored-decision count is offered. + +Per-site TSV: [`e0308_partition_2026-08-22/sites_classified.tsv`](e0308_partition_2026-08-22/sites_classified.tsv) +(columns: file, line, col, expected, found, **delta**, root, reason, **callee**, **callee_kind**, +block_msg). + +To repeat, without a rebuild: +`python3 docs/probes/e0308_classify_sites.py docs/probes/e0308_partition_2026-08-22/03_ingest.cargo.log /tmp/sites.tsv`. +To repeat from source: same probe, same contract, same single entry, at the ref above. diff --git a/docs/probes/e0308_partition_2026-08-22/03_ingest.cargo.log b/docs/probes/e0308_partition_2026-08-22/03_ingest.cargo.log new file mode 100644 index 00000000000..619a8851cfd --- /dev/null +++ b/docs/probes/e0308_partition_2026-08-22/03_ingest.cargo.log @@ -0,0 +1,4713 @@ + Updating crates.io index + Locking 121 packages to latest compatible versions + Adding generic-array v0.14.7 (available: v0.14.9) + Downloading crates ... + Downloaded rustls-webpki v0.103.15 + Downloaded cc v1.4.4 + Compiling proc-macro2 v1.0.107 + Compiling quote v1.0.47 + Compiling unicode-ident v1.0.24 + Compiling find-msvc-tools v0.1.11 + Compiling stable_deref_trait v1.2.1 + Compiling shlex v2.0.1 + Compiling version_check v0.9.5 + Compiling serde_core v1.0.229 + Compiling cfg-if v1.0.4 + Compiling cc v1.4.4 + Compiling litemap v0.8.3 + Compiling typenum v1.20.1 + Compiling serde v1.0.229 + Compiling libc v0.2.189 + Compiling writeable v0.6.4 + Compiling icu_properties_data v2.3.0 + Compiling object v0.39.1 + Compiling icu_normalizer_data v2.3.0 + Compiling utf8_iter v1.0.4 + Compiling syn v3.0.3 + Compiling syn v2.0.119 + Compiling generic-array v0.14.7 + Compiling memchr v2.8.3 + Compiling ring v0.17.14 + Compiling zeroize v1.9.0 + Compiling rustls-pki-types v1.15.1 + Compiling smallvec v1.15.2 + Compiling getrandom v0.2.17 + Compiling synstructure v0.13.2 + Compiling zmij v1.0.23 + Compiling utf8parse v0.2.2 + Compiling crc32fast v1.5.0 + Compiling untrusted v0.9.0 + Compiling anstyle-parse v1.0.0 + Compiling is_terminal_polyfill v1.70.2 + Compiling percent-encoding v2.3.2 + Compiling colorchoice v1.0.5 + Compiling anstyle-query v1.1.5 + Compiling zerofrom-derive v0.1.7 + Compiling yoke-derive v0.8.2 + Compiling anstyle v1.0.14 + Compiling adler2 v2.0.1 + Compiling simd-adler32 v0.3.10 + Compiling rustls v0.23.43 + Compiling zerofrom v0.1.8 + Compiling hashbrown v0.17.1 + Compiling yoke v0.8.3 + Compiling serde_json v1.0.151 + Compiling equivalent v1.0.2 + Compiling miniz_oxide v0.8.9 + Compiling anstream v1.0.0 + Compiling zerovec-derive v0.11.6 + Compiling displaydoc v0.2.7 + Compiling serde_derive v1.0.229 + Compiling ar_archive_writer v0.5.3 + Compiling zerotrie v0.2.5 + Compiling zerovec v0.11.8 + Compiling indexmap v2.14.0 + Compiling psm v0.1.32 + Compiling form_urlencoded v1.2.2 + Compiling tinystr v0.8.4 + Compiling potential_utf v0.1.6 + Compiling icu_locale_core v2.3.0 + Compiling icu_collections v2.3.0 + Compiling block-buffer v0.10.4 + Compiling crypto-common v0.1.7 + Compiling webpki-roots v1.0.9 + Compiling stacker v0.1.25 + Compiling bitmaps v2.1.0 + Compiling im v15.1.0 + Compiling toml_write v0.1.2 + Compiling once_cell v1.21.4 + Compiling heck v0.5.0 + Compiling clap_lex v1.1.0 + Compiling icu_provider v2.3.1 + Compiling strsim v0.11.1 + Compiling icu_properties v2.3.0 + Compiling icu_normalizer v2.3.0 + Compiling subtle v2.6.1 + Compiling winnow v0.7.15 + Compiling toml_datetime v0.6.11 + Compiling serde_spanned v0.6.9 + Compiling idna_adapter v1.2.2 + Compiling idna v1.1.0 + Compiling log v0.4.33 + Compiling rand_core v0.6.4 + Compiling itoa v1.0.18 + Compiling rand_xoshiro v0.6.0 + Compiling url v2.5.8 + Compiling clap_builder v4.6.6 + Compiling toml_edit v0.22.27 + Compiling rustls-webpki v0.103.15 + Compiling clap_derive v4.6.4 + Compiling sized-chunks v0.6.5 + Compiling webpki-roots v0.26.11 + Compiling digest v0.10.7 + Compiling flate2 v1.1.9 + Compiling cpufeatures v0.2.17 + Compiling base64 v0.22.1 + Compiling v1-compiler v0.1.0 (/root/workspace/repo-root/src/v1/stage0) + Compiling sha2 v0.10.9 + Compiling clap v4.6.6 + Compiling toml v0.8.23 + Compiling unicode-properties v0.1.4 + Compiling lazy_static v1.5.0 + Compiling ureq v2.12.1 + Compiling v1_compiled v0.1.0 (/tmp/cssl-probe.xPqvk8) +error: unsupported mock expression + --> src/std_realization_width.rs:262:13 + | +262 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:271:13 + | +271 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:280:13 + | +280 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:289:13 + | +289 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:298:13 + | +298 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:307:13 + | +307 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:316:13 + | +316 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/std_realization_width.rs:325:13 + | +325 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/v2_lens_determinism.rs:67:13 + | +67 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/v2_lens_determinism.rs:76:13 + | +76 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: UNRESOLVED_CompilerError + --> src/v2_std_grammar.rs:1364:31 + | +1364 | Rc::new(Witness::::Holds { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/v2_lens_cost_copied_port_citations.rs:236:13 + | +236 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/v2_lens_cost_copied_port_citations.rs:245:13 + | +245 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: unsupported mock expression + --> src/v2_lens_cost_copied_port_citations.rs:254:13 + | +254 | compile_error!("unsupported mock expression") + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:440:43 + | +440 | NodeKind::ComputationNode { behavior: Behavior::Transform, .. } => node.children.clone().iter().clone... + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:479:43 + | +479 | NodeKind::ComputationNode { behavior: Behavior::Transform, .. } => node.children.clone().iter().clone... + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:503:43 + | +503 | NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => match (*loop_carrier_binder_target(node... + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:538:43 + | +538 | NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => analyze_lowered_loop(node.clone(), carr... + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:539:43 + | +539 | NodeKind::ComputationNode { behavior: Behavior::Transform, .. } => match lowered_transform_combiner_o... + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:614:43 + | +614 | NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => if bound_only.clone() { + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0433]: cannot find type `Behavior` in this scope + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:655:43 + | +655 | NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => true, + | ^^^^^^^^ use of undeclared type `Behavior` + | +help: consider importing this enum through its public re-export + | + 4 + use crate::v2_compiler_translate::Behavior; + | + +error[E0425]: cannot find function `decl_facts` in this scope + --> src/v2_lens_enforcement_grammar_coverage.rs:143:41 + | +143 | grammar_coverage_distinct_rel_paths(decl_facts(crate::v2_lens_enforcement_standing_intent::whole_corp... + | ^^^^^^^^^^ not found in this scope + | +help: consider importing this function + | + 4 + use crate::v2_std_decl_index::decl_facts; + | + +error[E0425]: cannot find type `Int` in this scope + --> src/v2_std_text.rs:20:26 + | +20 | pub type String = Rc>; + | ^^^ + | + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/convert/mod.rs:451:0 + | + = note: similarly named trait `Into` defined here +help: a trait with a similar name exists + | +20 | pub type String = Rc>; + | + +help: consider importing one of these type aliases + | + 4 + use crate::std_integer::Int; + | + 4 + use crate::v2_lens_complexity_accumulator_copy::Int; + | + +error[E0425]: cannot find type `Int` in this scope + --> src/std_state_durability.rs:329:35 + | +329 | pub type StateDurabilityInstant = Int; + | ^^^ + | + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/convert/mod.rs:451:0 + | + = note: similarly named trait `Into` defined here +help: a trait with a similar name exists + | +329 | pub type StateDurabilityInstant = Into; + | + +help: consider importing one of these type aliases + | + 4 + use crate::std_integer::Int; + | + 4 + use crate::v2_lens_complexity_accumulator_copy::Int; + | + +error[E0425]: cannot find type `NonEmptyStr` in this scope + --> src/v2_compiler_materialization_carriers.rs:145:42 + | +145 | pub fn parse_table_memo_provider_id() -> NonEmptyStr { + | ^^^^^^^^^^^ + | + ::: src/lib.rs:183:1 + | +183 | pub struct NonEmptyVec(Vec); + | ---------------------------------- similarly named struct `NonEmptyVec` defined here + | +help: a struct with a similar name exists + | +145 - pub fn parse_table_memo_provider_id() -> NonEmptyStr { +145 + pub fn parse_table_memo_provider_id() -> NonEmptyVec { + | +help: consider importing this type alias through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyStr; + | + +error[E0425]: cannot find type `NonEmptyStr` in this scope + --> src/v2_compiler_materialization_carriers.rs:149:44 + | +149 | pub fn compile_stage_memo_provider_id() -> NonEmptyStr { + | ^^^^^^^^^^^ + | + ::: src/lib.rs:183:1 + | +183 | pub struct NonEmptyVec(Vec); + | ---------------------------------- similarly named struct `NonEmptyVec` defined here + | +help: a struct with a similar name exists + | +149 - pub fn compile_stage_memo_provider_id() -> NonEmptyStr { +149 + pub fn compile_stage_memo_provider_id() -> NonEmptyVec { + | +help: consider importing this type alias through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyStr; + | + +error[E0425]: cannot find type `NonEmptyStr` in this scope + --> src/v2_compiler_materialization_carriers.rs:153:44 + | +153 | pub fn parse_table_memo_artifact_kind() -> NonEmptyStr { + | ^^^^^^^^^^^ + | + ::: src/lib.rs:183:1 + | +183 | pub struct NonEmptyVec(Vec); + | ---------------------------------- similarly named struct `NonEmptyVec` defined here + | +help: a struct with a similar name exists + | +153 - pub fn parse_table_memo_artifact_kind() -> NonEmptyStr { +153 + pub fn parse_table_memo_artifact_kind() -> NonEmptyVec { + | +help: consider importing this type alias through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyStr; + | + +error[E0425]: cannot find type `Edge` in this scope + --> src/v2_compiler_target_carriers.rs:84:23 + | +84 | }), |acc: _, edge: Rc| match (*acc).clone() { + | ^^^^ not found in this scope + | +help: consider importing this struct through its public re-export + | + 4 + use crate::v2_compiler_ingest::Edge; + | + +error[E0433]: cannot find type `ConversionOpcode` in this scope + --> src/v2_lens_cost.rs:735:39 + | +735 | LlvmInstruction::Conversion { op: ConversionOpcode::OpBitCast, .. } => 0, + | ^^^^^^^^^^^^^^^^ use of undeclared type `ConversionOpcode` + | +help: consider importing this enum + | + 4 + use crate::v2_extdeps_languages_llvm_ir::ConversionOpcode; + | + +error[E0425]: cannot find type `T` in this scope + --> src/v2_lens_mandatory_tag.rs:402:301 + | +402 | ...ld(true, |acc: bool, a: Rc>| (acc && mandatory_tag_symbols_contain(region.value_accepted... + | ^ not found in this scope + | +help: you might be missing a type parameter + | +395 | pub fn mandatory_tag_value_findings(d: Rc, region: Rc) -> Rc>> { + | +++ + +error[E0425]: cannot find function `length` in this scope + --> src/v2_lens_reference_deps.rs:331:5 + | +331 | if (length(exact.clone()) > length(acc.clone())) { + | ^^^^^^ not found in this scope + | +help: consider importing this function through its public re-export + | + 4 + use crate::v2_compiler_source_authority::length; + | + +error[E0425]: cannot find function `length` in this scope + --> src/v2_lens_reference_deps.rs:331:29 + | +331 | if (length(exact.clone()) > length(acc.clone())) { + | ^^^^^^ not found in this scope + | +help: consider importing this function through its public re-export + | + 4 + use crate::v2_compiler_source_authority::length; + | + +error[E0425]: cannot find function `decl_facts` in this scope + --> src/v2_lens_reference_deps.rs:366:92 + | +366 | ...ammar_coverage_distinct_rel_paths(decl_facts(pool_roots.clone())), from_imports.clone(), |acc, path| c... + | ^^^^^^^^^^ not found in this scope + | +help: consider importing this function + | + 4 + use crate::v2_std_decl_index::decl_facts; + | + +error[E0425]: cannot find function `length` in this scope + --> src/v2_lens_reference_deps.rs:443:5 + | +443 | length(reference_resolution_census_live(pool_roots.clone(), importer_roots.clone(), exclude_substring... + | ^^^^^^ not found in this scope + | +help: consider importing this function through its public re-export + | + 4 + use crate::v2_compiler_source_authority::length; + | + +error[E0425]: cannot find type `NonEmptyDiagnostics` in this scope + --> src/v2_compiler_normalized_tree.rs:44:69 + | +44 | ...Node>, diagnostics: Option>) -> Rc>> { + | ^^^^^^^^^^^^^^^^^^^ not found in this scope + | +help: consider importing this struct through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyDiagnostics; + | + +error[E0425]: cannot find type `NonEmptyDiagnostics` in this scope + --> src/v2_compiler_normalized_tree.rs:63:80 + | +63 | ...de>>>, diagnostics: Option>) -> Rc>>>> { + | ^^^^^^^^^^^^^^^^^^^ not found in this scope + | +help: consider importing this struct through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyDiagnostics; + | + +error[E0425]: cannot find type `NonEmptyDiagnostics` in this scope + --> src/v2_compiler_normalize.rs:84:76 + | +84 | ...lded: Rc, cd: Option>) -> Rc>> { + | ^^^^^^^^^^^^^^^^^^^ not found in this scope + | +help: consider importing this struct through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyDiagnostics; + | + +error[E0425]: cannot find type `NonEmptyDiagnostics` in this scope + --> src/v2_compiler_normalize.rs:136:70 + | +136 | ...ded: Rc, cd: Option>) -> Rc>> { + | ^^^^^^^^^^^^^^^^^^^ not found in this scope + | +help: consider importing this struct through its public re-export + | + 4 + use crate::v2_compiler_source_authority::NonEmptyDiagnostics; + | + +error[E0425]: cannot find type `SourceRootIndex` in this scope + --> src/v2_compiler_program_assembly.rs:38:16 + | + 38 | index: SourceRootIndex, + | ^^^^^^^^^^^^^^^ + | + ::: src/v2_compiler_source_authority.rs:118:1 + | +118 | pub type SourceRootIngest = Rc>>; + | -------------------------------------------------------------- similarly named type alias `SourceRootIngest` defined here + | +help: a type alias with a similar name exists + | + 38 - index: SourceRootIndex, + 38 + index: SourceRootIngest, + | +help: consider importing this type alias through its public re-export + | + 4 + use crate::v2_compiler_name_resolve::SourceRootIndex; + | + +error[E0425]: cannot find value `filesystem` in this scope + --> src/v2_compiler_source_authority.rs:526:20 + | +526 | let read = filesystem.read(path.clone()).await?; + | ^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find value `filesystem` in this scope + --> src/v2_compiler_source_authority.rs:657:20 + | +657 | let read = filesystem.read(ref_.path.clone()).await?; + | ^^^^^^^^^^ not found in this scope + +error[E0728]: `await` is only allowed inside `async` functions and blocks + --> src/v2_compiler_source_authority.rs:526:50 + | +524 | pub fn source_ref_for_observed_storage_path(path: String) -> Rc { + | -------------------------------------------------------------------------- this is not `async` +525 | { +526 | let read = filesystem.read(path.clone()).await?; + | ^^^^^ only allowed inside `async` functions and blocks + +error[E0728]: `await` is only allowed inside `async` functions and blocks + --> src/v2_compiler_source_authority.rs:657:55 + | +655 | pub fn dag_source_read_result_from_ref(ref_: Rc) -> Rc { + | -------------------------------------------------------------------------------------- this is not `async` +656 | { +657 | let read = filesystem.read(ref_.path.clone()).await?; + | ^^^^^ only allowed inside `async` functions and blocks + +error[E0277]: the trait bound `A: Clone` is not satisfied + --> src/v2_std_test_claim_falsification.rs:38:24 + | +38 | pub divergence: Rc>, + | ^^^^^^^^^^^^ the trait `Clone` is not implemented for `A` + | +note: required by a bound in `ValueDiff` + --> src/v2_std_host_run.rs:77:25 + | +77 | pub struct ValueDiff { + | ^^^^^ required by this bound in `ValueDiff` +help: consider restricting type parameter `A` with trait `Clone` + | +34 | pub struct FalsificationReceipt { + | +++++++++++++++++++ + +error[E0277]: the trait bound `T: Clone` is not satisfied + --> src/v2_compiler_eval.rs:302:19 + | +302 | pub input: Rc>, + | ^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `T` + | +note: required by a bound in `TestClaimTypedInput` + --> src/v2_compiler_eval.rs:291:35 + | +291 | pub struct TestClaimTypedInput { + | ^^^^^ required by this bound in `TestClaimTypedInput` +help: consider restricting type parameter `T` with trait `Clone` + | +298 | pub struct TestClaimEvalSubject { + | +++++++++++++++++++ + +error[E0277]: the trait bound `A: Clone` is not satisfied + --> src/v2_compiler_eval.rs:329:21 + | +329 | pub verdict: Rc>, A>>, + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `A` + | +note: required by a bound in `Verdict` + --> src/v2_std_verdict.rs:25:34 + | + 25 | pub enum Verdict { + | ^^^^^ required by this bound in `Verdict` +help: consider restricting type parameter `A` with trait `Clone` + | +327 | pub struct TestClaimRun { + | +++++++++++++++++++ + +error[E0308]: mismatched types + --> src/v2_extdeps_languages_fidelity.rs:27:79 + | +23 | impl FidelityDisposition { + | ------- expected this type parameter +24 | pub fn feature(&self) -> Feature { + | ------- expected `Feature` because of return type +... +27 | FidelityDisposition::DeclaredNormalized { feature: __val, .. } => __val.clone(), + | ^^^^^^^^^^^^^ expected type parameter `Feature`, found `&Feature` + | + = note: expected type parameter `_` + found reference `&_` +note: `Feature` does not implement `Clone`, so `&Feature` was cloned instead + --> src/v2_extdeps_languages_fidelity.rs:27:79 + | +27 | FidelityDisposition::DeclaredNormalized { feature: __val, .. } => __val.clone(), + | ^^^^^ + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:70:48 + | +70 | ...().cloned().fold(acc.clone(), |a: Rc>>, e: Edge| collect_direct_captures(e.target.clone(),... + | ^^^^ ------------------------------- found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(Rc<_>, Rc) -> _` + found closure signature `fn(Rc<_>, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:72:48 + | +72 | ...().cloned().fold(acc.clone(), |a: Rc>>, e: Edge| collect_direct_captures(e.target.clone(),... + | ^^^^ ------------------------------- found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(Rc<_>, Rc) -> _` + found closure signature `fn(Rc<_>, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:125:116 + | +125 | ...>, e: Edge| if edge_skips_identifier_count(e.clone()) { + | --------------------------- ^^^^^^^^^ expected `Rc`, found `Edge` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc` + found struct `Edge` +note: function defined here + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:99:8 + | + 99 | pub fn edge_skips_identifier_count(e: Rc) -> bool { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ----------- +help: call `Into::into` on this expression to convert `Edge` into `Rc` + | +125 | n.children.clone().iter().cloned().fold(here.clone(), |a: Rc>, e: Edge| if edge_skips_identifier_count(e.clone().into()) { + | +++++++ + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:125:36 + | +125 | ...().cloned().fold(here.clone(), |a: Rc>, e: Edge| if edge_skips_identifier_count(e.clone()) { + | ^^^^ ----------------------------- found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(Rc<_>, Rc) -> _` + found closure signature `fn(Rc<_>, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:275:14 + | +275 | binding: LetBinding { + | ______________^ +276 | | name: binder.clone(), +277 | | fact: Rc::new(LetBindingFact::BindsFresh), +278 | | }, + | |_^ expected `Rc`, found `LetBinding` + | + = note: expected struct `Rc` + found struct `LetBinding` +help: call `Into::into` on this expression to convert `LetBinding` into `Rc` + | +278 | }.into(), + | +++++++ + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:284:14 + | +284 | binding: LetBinding { + | ______________^ +285 | | name: binder.clone(), +286 | | fact: Rc::new(LetBindingFact::BindsComputed { +287 | | mentions: mentions.clone(), +288 | | }), +289 | | }, + | |_^ expected `Rc`, found `LetBinding` + | + = note: expected struct `Rc` + found struct `LetBinding` +help: call `Into::into` on this expression to convert `LetBinding` into `Rc` + | +289 | }.into(), + | +++++++ + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:298:14 + | +298 | binding: LetBinding { + | ______________^ +299 | | name: binder.clone(), +300 | | fact: fact.clone(), +301 | | }, + | |_^ expected `Rc`, found `LetBinding` + | + = note: expected struct `Rc` + found struct `LetBinding` +help: call `Into::into` on this expression to convert `LetBinding` into `Rc` + | +301 | }.into(), + | +++++++ + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:309:14 + | +309 | binding: LetBinding { + | ______________^ +310 | | name: binder.clone(), +311 | | fact: Rc::new(LetBindingFact::BindsComputed { +312 | | mentions: mentions.clone(), +313 | | }), +314 | | }, + | |_^ expected `Rc`, found `LetBinding` + | + = note: expected struct `Rc` + found struct `LetBinding` +help: call `Into::into` on this expression to convert `LetBinding` into `Rc` + | +314 | }.into(), + | +++++++ + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:333:40 + | +333 | ...cloned().fold(here.clone(), |acc: Rc>>, e: Edge| append_findings(analyze(e.target.clon... + | ^^^^ ------------------------------------ found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(Rc<_>, Rc) -> _` + found closure signature `fn(Rc<_>, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:485:80 + | +485 | ...ngs.clone(), Rc::new(vec![lowered_arg_port_reading(e.target.clone())])), + | ^^^^^------------------------------------------^ + | | | + | | this argument has type `Rc`... + | expected `Vector`, found `Vector>` + | ... which causes `l` to have type `im::Vector>` + | + = note: expected struct `im::Vector` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:479:110 + | +479 | NodeKind::ComputationNode { behavior: Behavior::Transform, .. } => node.children.clone().iter().cloned().fold(Rc... + | ^^^^ expected due to this +... +482 | }), |acc: Rc, e: Edge| if acc.saw_operator.clone() { + | ------------------------------------------- found signature defined here + | + = note: expected closure signature `fn(Rc<_>, Rc) -> _` + found closure signature `fn(Rc<_>, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:479:72 + | +477 | pub fn lowered_transform_port_readings(node: Rc) -> Rc>> { + | ------------------------ expected `Rc>>` because of return type +478 | match (*node.kind.clone()).clone() { +479 | NodeKind::ComputationNode { behavior: Behavior::Transform, .. } => node.children.clone().iter().clo... + | ________________________________________________________________________^ +480 | | saw_operator: false, +481 | | readings: Rc::new(vec![]), +482 | | }), |acc: Rc, e: Edge| if acc.saw_operator.clone() { +... | +491 | | }) +492 | | }).readings.clone(), + | |_______________________^ expected `Rc>>`, found `Rc>` + | + = note: expected struct `Rc>>` + found struct `Rc>` + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:643:36 + | +643 | n.children.clone().iter().cloned().fold(here.clone(), |acc: i64, e: Edge| (acc + count_fold_sites(e.targe... + | ^^^^ ------------------- found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(_, Rc) -> _` + found closure signature `fn(_, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:656:48 + | +656 | _ => root.children.clone().iter().cloned().fold(false, |found: bool, e: Edge| if found { + | ^^^^ ---------------------- found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(_, Rc) -> _` + found closure signature `fn(_, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0631]: type mismatch in closure arguments + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:683:51 + | +683 | None => root.children.clone().iter().cloned().fold(false, |found: bool, e: Edge| if found { + | ^^^^ ---------------------- found signature defined here + | | + | expected due to this + | + = note: expected closure signature `fn(_, Rc) -> _` + found closure signature `fn(_, Edge) -> _` +note: required by a bound in `fold` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/iter/traits/iterator.rs:2664:4 + +error[E0308]: mismatched types + --> src/v2_lens_complexity_accumulator_copy_analyze.rs:696:15 + | +696 | findings: accumulator_copy_findings(root.clone()), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc>>` + | + = note: expected struct `Rc>` + found struct `Rc>>` + +error[E0308]: mismatched types + --> src/v2_lens_complexity_lowering.rs:48:13 + | +48 | Rc::new(vec![loop_invariant_hoist()]) + | ^^^^^----------------------^ + | | | + | | this argument has type `Rc`... + | expected `Vector<()>`, found `Vector>` + | ... which causes `l` to have type `im::Vector>` + | + = note: expected struct `im::Vector<()>` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0631]: type mismatch in function arguments + --> src/v2_lens_complexity_lowering.rs:52:33 + | + 33 | pub fn strictly_lowers(r: Rc) -> bool { + | --------------------------------------------------------- found signature defined here +... + 52 | for_all(lowering_catalog(), strictly_lowers) + | ------- ^^^^^^^^^^^^^^^ expected due to this + | | + | required by a bound introduced by this call + | + = note: expected function signature `fn(()) -> _` + found function signature `fn(Rc) -> _` +note: required by a bound in `for_all` + --> src/v2_std_algebra.rs:835:65 + | +835 | pub fn for_all(xs: Rc>, predicate: impl Fn(T) -> bool + Clone) -> bool { + | ^^^^^^^^^^^^^ required by this bound in `for_all` +help: consider wrapping the function in a closure + | + 52 | for_all(lowering_catalog(), |arg0: ()| strictly_lowers(/* Rc */)) + | ++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +error[E0308]: mismatched types + --> src/v2_lens_complexity_lowering.rs:60:104 + | +60 | ...oned() { if lowering_matches_class(r.clone(), cls.clone()) { __found = true; break; } } __found } + | ---------------------- ^^^^^^^^^ expected `Rc`, found `()` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc` + found unit type `()` +note: function defined here + --> src/v2_lens_complexity_lowering.rs:55:8 + | +55 | pub fn lowering_matches_class(r: Rc, cls: Rc) -> bool { + | ^^^^^^^^^^^^^^^^^^^^^^ ------------------------- + +error[E0308]: mismatched types + --> src/v2_lens_complexity_lowering.rs:68:107 + | +68 | ...|acc, r| if lowering_matches_class(r.clone(), asymptotic_class_of_cost(c.clone())) { + | ---------------------- ^^^^^^^^^ expected `Rc`, found `()` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc` + found unit type `()` +note: function defined here + --> src/v2_lens_complexity_lowering.rs:55:8 + | +55 | pub fn lowering_matches_class(r: Rc, cls: Rc) -> bool { + | ^^^^^^^^^^^^^^^^^^^^^^ ------------------------- + +error[E0609]: no field `after` on type `()` + --> src/v2_lens_complexity_lowering.rs:69:11 + | +69 | r.after.clone() + | ^^^^^ unknown field + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:52:21 + | +52 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +53 | | lens: CoverageDefectKey::DiscriminantPredicate, +54 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:63:21 + | +63 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +64 | | lens: CoverageDefectKey::DegenerateType, +65 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:74:21 + | +74 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +75 | | lens: CoverageDefectKey::HollowType, +76 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:85:21 + | +85 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +86 | | lens: CoverageDefectKey::CarrierClone, +87 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:96:21 + | +96 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +97 | | lens: CoverageDefectKey::Catamorphism, +98 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:107:21 + | +107 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +108 | | lens: CoverageDefectKey::TemplateHole, +109 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:118:21 + | +118 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +119 | | lens: CoverageDefectKey::OffSubstrateFact, +120 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:129:21 + | +129 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +130 | | lens: CoverageDefectKey::WrongHome, +131 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:140:21 + | +140 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +141 | | lens: CoverageDefectKey::VacuousArm, +142 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:151:21 + | +151 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +152 | | lens: CoverageDefectKey::CanonicalCarrier, +153 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:162:21 + | +162 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +163 | | lens: CoverageDefectKey::PlausibleFallback, +164 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:173:21 + | +173 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +174 | | lens: CoverageDefectKey::ParallelAuthority, +175 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:184:21 + | +184 | Rc::new(CoverageDefectAcceptanceKey { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +185 | | lens: CoverageDefectKey::SkeletonCollapse, +186 | | }) + | |_^ expected `Coverage>`, found `CoverageDefectAcceptanceKey` + | + = note: expected struct `v2_lens_coverage::Coverage>` + found struct `CoverageDefectAcceptanceKey` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_coverage.rs:200:11 + | +199 | pub fn dedupe_snoc(acc: Rc>, item: C, eq: impl Fn(C, C) -> bool + Clone) -> Rc> { + | - found this type parameter +200 | match v1_rt::contains(acc.clone(), item.clone(), eq.clone()) { + | ^^^^^^^^^^^^^^^ ---------- unexpected argument #3 of type `impl Fn(C, C) -> bool + Clone` + | +note: expected `String`, found `Rc>` + --> src/v2_lens_coverage.rs:200:27 + | +200 | match v1_rt::contains(acc.clone(), item.clone(), eq.clone()) { + | ^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: expected `String`, found type parameter `C` + --> src/v2_lens_coverage.rs:200:40 + | +200 | match v1_rt::contains(acc.clone(), item.clone(), eq.clone()) { + | ^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found type parameter `C` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- ----------- +help: remove the extra argument + | +200 - match v1_rt::contains(acc.clone(), item.clone(), eq.clone()) { +200 + match v1_rt::contains(/* std::string::String */, /* std::string::String */) { + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_coverage.rs:207:101 + | +206 | ...ys(expected: Rc>, actual: Rc>, eq: impl Fn(C, C) -> bool + Clone) -> Rc> { + | - found this type parameter +207 | ... mut __result = Vec::new(); for key in expected.clone().iter().cloned() { if match v1_rt::contains(actual.clone(), key.clone(), eq.clone()) { + | ^^^^^^^^^^^^^^^ ---------- unexpected argument #3 of type `impl Fn(C, C) -> bool + Clone` + | +note: expected `String`, found `Rc>` + --> src/v2_lens_coverage.rs:207:117 + | +207 | ....iter().cloned() { if match v1_rt::contains(actual.clone(), key.clone(), eq.clone()) { + | ^^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: expected `String`, found type parameter `C` + --> src/v2_lens_coverage.rs:207:133 + | +207 | ...) { if match v1_rt::contains(actual.clone(), key.clone(), eq.clone()) { + | ^^^^^^^^^^^ + = note: expected struct `std::string::String` + found type parameter `C` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- ----------- +help: remove the extra argument + | +207 - Rc::new({ let mut __result = Vec::new(); for key in expected.clone().iter().cloned() { if match v1_rt::contains(actual.clone(), key.clone(), eq.clone()) { +207 + Rc::new({ let mut __result = Vec::new(); for key in expected.clone().iter().cloned() { if match v1_rt::contains(/* std::string::String */, /* std::string::String */) { + | + +error[E0308]: mismatched types + --> src/v2_lens_coverage.rs:214:181 + | + 214 | ...e(); __cons_v.insert(0, coverage_of(key.clone())); __cons_v })) + | ------ ^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found `Rc>` + | | + | arguments to this method are incorrect + | + = note: expected unit type `()` + found struct `Rc>` +note: method defined here + --> /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/im-15.1.0/src/vector/mod.rs:1366:12 + | +1366 | pub fn insert(&mut self, index: usize, value: A) { + | ^^^^^^ + +error[E0308]: mismatched types + --> src/v2_lens_enforcement_standing_intent.rs:215:32 + | +215 | allowed_narrowing: Rc::new(vec![Rc::new(NarrowingReason::BootstrapBlocked { + | _________________________________^ - + | | _____________________________________| +216 | || blocker: "".to_string(), +217 | || }), Rc::new(NarrowingReason::TypeReflectionUnavailable { + | ||__- this argument has type `Rc`... +218 | | blocker: "".to_string(), +219 | | })]), + | | ^ + | | | + | |____expected `Vector`, found `Vector>` + | ... which causes `l` to have type `im::Vector>` + | + = note: expected struct `im::Vector` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0308]: mismatched types + --> src/v2_lens_enforcement_standing_intent.rs:246:32 + | +246 | allowed_narrowing: Rc::new(vec![Rc::new(NarrowingReason::BootstrapBlocked { + | _________________________________^ - + | | _____________________________________| +247 | || blocker: "".to_string(), +248 | || }), Rc::new(NarrowingReason::TypeReflectionUnavailable { + | ||__- this argument has type `Rc`... +249 | | blocker: "".to_string(), +250 | | })]), + | | ^ + | | | + | |____expected `Vector`, found `Vector>` + | ... which causes `l` to have type `im::Vector>` + | + = note: expected struct `im::Vector` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_enforcement_vocab.rs:225:66 + | +225 | ...ble, .. } => v1_rt::contains(acceptable.clone(), actual.clone(), consumer_kind_eq), + | ^^^^^^^^^^^^^^^ -------------- ---------------- unexpected argument #3 of type `fn(ConsumerKind, ConsumerKind) -> bool {consumer_kind_eq}` + | | + | expected `String`, found `ConsumerKind` + | +note: expected `String`, found `Rc>` + --> src/v2_lens_enforcement_vocab.rs:225:82 + | +225 | ConsumerRequirement::OneOf { acceptable: acceptable, .. } => v1_rt::contains(acceptable.clone(), actu... + | ^^^^^^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- ----------- +help: remove the extra argument + | +225 - ConsumerRequirement::OneOf { acceptable: acceptable, .. } => v1_rt::contains(acceptable.clone(), actual.clone(), consumer_kind_eq), +225 + ConsumerRequirement::OneOf { acceptable: acceptable, .. } => v1_rt::contains(/* std::string::String */, /* std::string::String */), + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_enforcement_vocab.rs:300:42 + | +300 | ...clone(), |r| v1_rt::contains(claimed.entries.clone(), r.clone(), qualified_name_eq)) + | ^^^^^^^^^^^^^^^ ----------------- unexpected argument #3 of type `fn(Rc>, Rc>) -> bool {qualified_name_eq}` + | +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ +help: remove the extra argument + | +300 - for_all(desired.entries.clone(), |r| v1_rt::contains(claimed.entries.clone(), r.clone(), qualified_name_eq)) +300 + for_all(desired.entries.clone(), |r| v1_rt::contains(claimed.entries.clone(), r.clone())) + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_enforcement_vocab.rs:304:40 + | +304 | for_all(desired.roots.clone(), |r| v1_rt::contains(claimed.roots.clone(), r.clone(), string_eq)) + | ^^^^^^^^^^^^^^^ --------- unexpected argument #3 of type `fn(std::string::String, std::string::String) -> bool {v2_lens_enforcement_vocab::string_eq}` + | +note: expected `String`, found `Rc>` + --> src/v2_lens_enforcement_vocab.rs:304:56 + | +304 | for_all(desired.roots.clone(), |r| v1_rt::contains(claimed.roots.clone(), r.clone(), string_eq)) + | ^^^^^^^^^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | +304 - for_all(desired.roots.clone(), |r| v1_rt::contains(claimed.roots.clone(), r.clone(), string_eq)) +304 + for_all(desired.roots.clone(), |r| v1_rt::contains(/* std::string::String */, r.clone())) + | + +error[E0282]: type annotations needed + --> src/v2_lens_witness_cost_locality.rs:90:127 + | +90 | ...ntains(ys.clone(), x.clone(), |a, b| (a.clone() == b.clone())) { __result.push(x); } } __result }) + | ^ - type must be known at this point + | +help: consider giving this closure parameter an explicit type + | +90 | Rc::new({ let mut __result = Vec::new(); for x in xs.clone().iter().cloned() { if v1_rt::contains(ys.clone(), x.clone(), |a: /* Type */, b| (a.clone() == b.clone())) { __result.push(x); } } __result }) + | ++++++++++++ + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_witness_cost_locality.rs:90:87 + | + 90 | ... if v1_rt::contains(ys.clone(), x.clone(), |a, b| (a.clone() == b.clone())) { __result.push(x); } } __... + | ^^^^^^^^^^^^^^^ ------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_lens_witness_cost_locality.rs:90:103 + | + 90 | ....clone().iter().cloned() { if v1_rt::contains(ys.clone(), x.clone(), |a, b| (a.clone() == b.clone())) ... + | ^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | + 90 - Rc::new({ let mut __result = Vec::new(); for x in xs.clone().iter().cloned() { if v1_rt::contains(ys.clone(), x.clone(), |a, b| (a.clone() == b.clone())) { __result.push(x); } } __result }) + 90 + Rc::new({ let mut __result = Vec::new(); for x in xs.clone().iter().cloned() { if v1_rt::contains(/* std::string::String */, x.clone()) { __result.push(x); } } __result }) + | + +error[E0282]: type annotations needed + --> src/v2_lens_witness_cost_locality.rs:188:45 + | +188 | v1_rt::contains(xs.clone(), x.clone(), |a, b| (a.clone() == b.clone())) + | ^ - type must be known at this point + | +help: consider giving this closure parameter an explicit type + | +188 | v1_rt::contains(xs.clone(), x.clone(), |a: /* Type */, b| (a.clone() == b.clone())) + | ++++++++++++ + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_witness_cost_locality.rs:188:5 + | +188 | v1_rt::contains(xs.clone(), x.clone(), |a, b| (a.clone() == b.clone())) + | ^^^^^^^^^^^^^^^ ------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_lens_witness_cost_locality.rs:188:21 + | +188 | v1_rt::contains(xs.clone(), x.clone(), |a, b| (a.clone() == b.clone())) + | ^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | +188 - v1_rt::contains(xs.clone(), x.clone(), |a, b| (a.clone() == b.clone())) +188 + v1_rt::contains(/* std::string::String */, x.clone()) + | + +error[E0308]: mismatched types + --> src/v2_std_artifact.rs:84:14 + | +84 | refined: Refined { + | ______________^ +85 | | base: Rc::new(Artifact { +86 | | kind: ArtifactKind::TestClaimArtifact, +87 | | id: id.clone(), +... | +90 | | _phantom: std::marker::PhantomData, +91 | | }, + | |_^ expected `Rc>>`, found `Refined>` + | + = note: expected struct `Rc>` + found struct `Refined<_>` +help: call `Into::into` on this expression to convert `Refined>` into `Rc>>` + | +91 | }.into(), + | +++++++ + +error[E0599]: no associated function or constant named `Empty` found for struct `im::Vector` in the current scope + --> src/v2_std_cross_tree_resolution.rs:103:17 + | +103 | FreeMonoid::Empty => LayerPrefix::LayerPrefixStd, + | ^^^^^ associated function or constant not found in `im::Vector<_>` + +error[E0223]: ambiguous associated type + --> src/v2_std_cross_tree_resolution.rs:104:5 + | +104 | FreeMonoid::Cons { head: h, tail: t, .. } => if (h.clone() == "v2".to_string()) { + | ^^^^^^^^^^^^^^^^ + | +help: if there were a trait named `Example` with associated type `Cons` implemented for `im::Vector<_>`, you could use the fully-qualified path + | +104 - FreeMonoid::Cons { head: h, tail: t, .. } => if (h.clone() == "v2".to_string()) { +104 + as Example>::Cons { head: h, tail: t, .. } => if (h.clone() == "v2".to_string()) { + | + +error[E0425]: cannot find function `layer_import_facts` in this scope + --> src/v2_std_layer.rs:38:5 + | +38 | layer_import_facts(std_roots.clone(), extdeps_roots.clone()) + | ^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0308]: mismatched types + --> src/v2_std_passing_candidate_fold.rs:34:83 + | +30 | impl PassingCandidateFold { + | - expected this type parameter +31 | pub fn candidate(&self) -> T { + | - expected `T` because of return type +... +34 | PassingCandidateFold::OnePassingCandidate { candidate: __val, .. } => __val.clone(), + | ^^^^^^^^^^^^^ expected type parameter `T`, found `&T` + | + = note: expected type parameter `_` + found reference `&_` +note: `T` does not implement `Clone`, so `&T` was cloned instead + --> src/v2_std_passing_candidate_fold.rs:34:83 + | +34 | PassingCandidateFold::OnePassingCandidate { candidate: __val, .. } => __val.clone(), + | ^^^^^ + +error[E0308]: mismatched types + --> src/std_checked_arithmetic.rs:305:12 + | +305 | value: nat_magnitude(a.clone()), + | ^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `i64` + | + = note: expected struct `Rc` + found type `i64` +help: call `Into::into` on this expression to convert `i64` into `Rc` + | +305 | value: nat_magnitude(a.clone()).into(), + | +++++++ + +error[E0308]: mismatched types + --> src/v2_std_algebra.rs:152:63 + | +149 | impl ListHeadResult { + | - expected this type parameter +150 | pub fn value(&self) -> T { + | - expected `T` because of return type +151 | match self { +152 | ListHeadResult::HeadFound { value: __val, .. } => __val.clone(), + | ^^^^^^^^^^^^^ expected type parameter `T`, found `&T` + | + = note: expected type parameter `_` + found reference `&_` +note: `T` does not implement `Clone`, so `&T` was cloned instead + --> src/v2_std_algebra.rs:152:63 + | +152 | ListHeadResult::HeadFound { value: __val, .. } => __val.clone(), + | ^^^^^ + +error[E0308]: mismatched types + --> src/v2_std_logic.rs:53:5 + | + 52 | meet: { Rc::new(move |a, b| match a.clone() { + | --------- this expression has type `v2_std_logic::Bool` + 53 | True => b.clone(), + | ^^^^ + | | + | expected `Bool`, found `True` + | `True` is interpreted as a unit struct, not a new binding +... +139 | pub struct True; + | --------------- unit struct defined here + | +help: introduce a new binding instead + | + 53 - True => b.clone(), + 53 + other_true => b.clone(), + | + +error[E0308]: mismatched types + --> src/v2_std_logic.rs:54:5 + | + 52 | meet: { Rc::new(move |a, b| match a.clone() { + | --------- this expression has type `v2_std_logic::Bool` + 53 | True => b.clone(), + 54 | False => Bool::False, + | ^^^^^ + | | + | expected `Bool`, found `False` + | `False` is interpreted as a unit struct, not a new binding +... +141 | pub struct False; + | ---------------- unit struct defined here + | +help: introduce a new binding instead + | + 54 - False => Bool::False, + 54 + other_false => Bool::False, + | + +error[E0308]: mismatched types + --> src/v2_std_logic.rs:57:5 + | + 56 | join: { Rc::new(move |a, b| match a.clone() { + | --------- this expression has type `v2_std_logic::Bool` + 57 | True => Bool::True, + | ^^^^ + | | + | expected `Bool`, found `True` + | `True` is interpreted as a unit struct, not a new binding +... +139 | pub struct True; + | --------------- unit struct defined here + | +help: introduce a new binding instead + | + 57 - True => Bool::True, + 57 + other_true => Bool::True, + | + +error[E0308]: mismatched types + --> src/v2_std_logic.rs:58:5 + | + 56 | join: { Rc::new(move |a, b| match a.clone() { + | --------- this expression has type `v2_std_logic::Bool` + 57 | True => Bool::True, + 58 | False => b.clone(), + | ^^^^^ + | | + | expected `Bool`, found `False` + | `False` is interpreted as a unit struct, not a new binding +... +141 | pub struct False; + | ---------------- unit struct defined here + | +help: introduce a new binding instead + | + 58 - False => b.clone(), + 58 + other_false => b.clone(), + | + +error[E0308]: mismatched types + --> src/v2_std_logic.rs:61:5 + | + 60 | complement: { Rc::new(move |a| match a.clone() { + | --------- this expression has type `v2_std_logic::Bool` + 61 | True => Bool::False, + | ^^^^ + | | + | expected `Bool`, found `True` + | `True` is interpreted as a unit struct, not a new binding +... +139 | pub struct True; + | --------------- unit struct defined here + | +help: introduce a new binding instead + | + 61 - True => Bool::False, + 61 + other_true => Bool::False, + | + +error[E0308]: mismatched types + --> src/v2_std_logic.rs:62:5 + | + 60 | complement: { Rc::new(move |a| match a.clone() { + | --------- this expression has type `v2_std_logic::Bool` + 61 | True => Bool::False, + 62 | False => Bool::True, + | ^^^^^ + | | + | expected `Bool`, found `False` + | `False` is interpreted as a unit struct, not a new binding +... +141 | pub struct False; + | ---------------- unit struct defined here + | +help: introduce a new binding instead + | + 62 - False => Bool::True, + 62 + other_false => Bool::True, + | + +error[E0308]: mismatched types + --> src/std_measure.rs:488:18 + | +488 | predecessor: predecessor.clone(), + | ^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `i64` + | + = note: expected struct `Rc` + found type `i64` +help: call `Into::into` on this expression to convert `i64` into `Rc` + | +488 | predecessor: predecessor.clone().into(), + | +++++++ + +error[E0369]: cannot add `{integer}` to `Rc` + --> src/std_measure.rs:508:109 + | +508 | ...redecessor: predecessor, .. } => (predecessor.clone() + 1), + | ------------------- ^ - {integer} + | | + | Rc + | +note: `Rc` does not implement `std::ops::Add<{integer}>` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:320:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:323:1 + | + = note: `Rc` is defined in another crate + +error[E0599]: no method named `clone` found for type parameter `A` in the current scope + --> src/v2_std_staging.rs:16:39 + | +15 | pub fn then_outcome(f: impl Fn(A) -> Rc> + Clone + 'static, g: impl Fn(B) -> Rc... + | - method `clone` not found for this type parameter +16 | Rc::new(move |x| bind_outcome(f(x.clone()), g.clone())) + | ^^^^^ method not found in `A` + | + = help: items from traits can only be used if the type parameter is bounded by the trait +help: the following trait defines an item `clone`, perhaps you need to restrict type parameter `A` with it: + | +15 | pub fn then_outcome(f: impl Fn(A) -> Rc> + Clone + 'static, g: impl Fn(B) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++ + +error[E0277]: the trait bound `C: Clone` is not satisfied + --> src/v2_std_staging.rs:16:22 + | + 16 | Rc::new(move |x| bind_outcome(f(x.clone()), g.clone())) + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `C` + | +note: required by a bound in `bind_outcome` + --> src/v2_std_diagnostic.rs:341:34 + | +341 | pub fn bind_outcome(o: Rc>, f: impl Fn(T) -> Rc> + Clone) -> Rc... + | ^^^^^ required by this bound in `bind_outcome` +help: consider restricting type parameter `C` with trait `Clone` + | + 15 | pub fn then_outcome(f: impl Fn(A) -> Rc> + Clone + 'static, g: impl Fn(B) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++++++++++++++ + +error[E0308]: mismatched types + --> src/v2_std_staging.rs:31:53 + | +27 | impl CacheProbe { + | - expected this type parameter +28 | pub fn value(&self) -> B { + | - expected `B` because of return type +... +31 | CacheProbe::Hit { value: __val, .. } => __val.clone(), + | ^^^^^^^^^^^^^ expected type parameter `B`, found `&B` + | + = note: expected type parameter `_` + found reference `&_` +note: `B` does not implement `Clone`, so `&B` was cloned instead + --> src/v2_std_staging.rs:31:53 + | +31 | CacheProbe::Hit { value: __val, .. } => __val.clone(), + | ^^^^^ + +error[E0308]: mismatched types + --> src/v2_std_text.rs:65:59 + | +65 | Some(c) => Rc::new(CharResult::CharFound { value: Box::new(c as i64) }), + | ^^^^^^^^^^^^^^^^^^ expected `i64`, found `Box` + | + = note: expected type `i64` + found struct `Box` +help: consider removing the Box + | +65 - Some(c) => Rc::new(CharResult::CharFound { value: Box::new(c as i64) }), +65 + Some(c) => Rc::new(CharResult::CharFound { value: c as i64 }), + | + +error[E0308]: mismatched types + --> src/std_realization_schedule.rs:64:11 + | +64 | time: time_measure(0), + | ^^^^^^^^^^^^^^^ expected `Rc>>`, found `Rc>` + | + = note: expected struct `Rc>>` + found struct `Rc>` + +error[E0308]: mismatched types + --> src/std_realization_schedule.rs:74:11 + | +74 | time: time.clone(), + | ^^^^^^^^^^^^ expected `Rc>>`, found `Rc>` + | + = note: expected struct `Rc>>` + found struct `Rc>` + +error[E0308]: mismatched types + --> src/std_realization_schedule.rs:83:19 + | + 82 | pub fn cost_account_time_count(account: Rc>) -> Nat { + | --- this return type influences the call expression's return type + 83 | measure_count(account.time.clone()) + | ------------- ^^^^^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc>>` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc>` + found struct `Rc>>` +note: function defined here + --> src/std_measure.rs:214:8 + | +214 | pub fn measure_count(m: Rc>) -> M { + | ^^^^^^^^^^^^^ ----------------------- + +error[E0308]: mismatched types + --> src/std_state_durability.rs:152:65 + | +152 | ordered: Rc::new(v1_rt::append(acc.ordered.clone(), Rc::new(vec![boundary.clone()]))), + | ^^^^^^^^^^^^^^^^^^^^^^ expected `StateDurabilityBoundary`, found `Vector>` + | + = note: expected enum `StateDurabilityBoundary` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0308]: mismatched types + --> src/std_state_durability.rs:163:70 + | +163 | ...ew(v1_rt::append(Rc::new(vec![requirements.first.clone()]), requirements.additional_unique.clone())) + | ------------- arguments to this function are incorrect ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `Rc>>` + | + = note: expected struct `Rc` + found struct `Rc>>` +help: the return type of this call is `Rc>>` due to the type of the argument passed + --> src/std_state_durability.rs:163:13 + | +163 | ...ew(v1_rt::append(Rc::new(vec![requirements.first.clone()]), requirements.additional_unique.clone())) + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------^ + | | + | this argument influences the return type of `append` +note: function defined here + --> src/v1_rt.rs:379:8 + | +379 | pub fn append(list: Rc>, item: T) -> Vec { + | ^^^^^^ ------- + +error[E0308]: mismatched types + --> src/std_state_durability.rs:291:152 + | +291 | ...::new(vec![assertion.clone()]))), + | ^^^^^^^^^^^^^^^^^^^^^^^ expected `StateDefinitionCallerAssertion`, found `Vector>` + | + = note: expected struct `StateDefinitionCallerAssertion` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0308]: mismatched types + --> src/std_state_durability.rs:636:59 + | +636 | seen: Rc::new(v1_rt::append(acc.seen.clone(), Rc::new(vec![boundary.clone()]))), + | ^^^^^^^^^^^^^^^^^^^^^^ expected `StateDurabilityBoundary`, found `Vector>` + | + = note: expected enum `StateDurabilityBoundary` + found struct `im::Vector>` + = note: this error originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0277]: can't compare `Target` with `Target` + --> src/std_state_durability.rs:661:266 + | +661 | ...kSubject>>| if (state_durability_admission_eq(candidate.admission.clone(), admission.clone()) && (cand... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `Target == Target` + | +note: required by a bound in `state_durability_admission_eq` + --> src/std_state_durability.rs:652:54 + | +652 | ...(a: Rc(evidence: Rc>>>, admission: Rc>, boundary: Rc) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `ReadbackSubject` with `ReadbackSubject` + --> src/std_state_durability.rs:661:266 + | +661 | ...>| if (state_durability_admission_eq(candidate.admission.clone(), admission.clone()) && (candidate.per... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `ReadbackSubject == ReadbackSubject` + | +note: required by a bound in `state_durability_admission_eq` + --> src/std_state_durability.rs:652:90 + | +652 | ...Subject: Clone + PartialEq>(a: Rc>, b: Rc(evidence: Rc>>>, admission: Rc>, boundary: Rc) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `Target` with `Target` + --> src/std_state_durability.rs:679:265 + | +679 | ...ckSubject>>| if state_durability_admission_eq(candidate.admission.clone(), admission.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `Target == Target` + | +note: required by a bound in `state_durability_admission_eq` + --> src/std_state_durability.rs:652:54 + | +652 | ...(a: Rc(evidence: Rc>>>, admission: Rc>) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `ReadbackSubject` with `ReadbackSubject` + --> src/std_state_durability.rs:679:265 + | +679 | ...>>| if state_durability_admission_eq(candidate.admission.clone(), admission.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `ReadbackSubject == ReadbackSubject` + | +note: required by a bound in `state_durability_admission_eq` + --> src/std_state_durability.rs:652:90 + | +652 | ...Subject: Clone + PartialEq>(a: Rc>, b: Rc(evidence: Rc>>>, admission: Rc>) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `Target` with `Target` + --> src/std_state_durability.rs:817:109 + | +817 | ..... } => match state_durability_evidence_refusal(admission.clone(), boundary.clone(), mismatched.clone(... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `Target == Target` + | +note: required by a bound in `state_durability_evidence_refusal` + --> src/std_state_durability.rs:696:58 + | +696 | ...arget: Clone + PartialEq, ReadbackSubject: Clone + PartialEq>(admission: Rc(boundary: Rc, admission: Rc>, capability: Rc, evidence: Rc>>>) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `ReadbackSubject` with `ReadbackSubject` + --> src/std_state_durability.rs:817:109 + | +817 | ...atch state_durability_evidence_refusal(admission.clone(), boundary.clone(), mismatched.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `ReadbackSubject == ReadbackSubject` + | +note: required by a bound in `state_durability_evidence_refusal` + --> src/std_state_durability.rs:696:94 + | +696 | ...bject: Clone + PartialEq>(admission: Rc>, boundary: ... + | ^^^^^^^^^ required by this bound in `state_durability_evidence_refusal` +help: consider further restricting type parameter `ReadbackSubject` with trait `PartialEq` + | +806 | pub fn state_durability_boundary_evidence_verdict(boundary: Rc, admission: Rc>, capability: Rc, evidence: Rc>>>) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `Target` with `Target` + --> src/std_state_durability.rs:842:106 + | +842 | ..... } => match state_durability_evidence_refusal(admission.clone(), boundary.clone(), receipt.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `Target == Target` + | +note: required by a bound in `state_durability_evidence_refusal` + --> src/std_state_durability.rs:696:58 + | +696 | ...arget: Clone + PartialEq, ReadbackSubject: Clone + PartialEq>(admission: Rc(boundary: Rc, admission: Rc>, capability: Rc, evidence: Rc>>>) -> Rc> { + | +++++++++++++++++++++ + +error[E0277]: can't compare `ReadbackSubject` with `ReadbackSubject` + --> src/std_state_durability.rs:842:106 + | +842 | ...atch state_durability_evidence_refusal(admission.clone(), boundary.clone(), receipt.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no implementation for `ReadbackSubject == ReadbackSubject` + | +note: required by a bound in `state_durability_evidence_refusal` + --> src/std_state_durability.rs:696:94 + | +696 | ...bject: Clone + PartialEq>(admission: Rc>, boundary: ... + | ^^^^^^^^^ required by this bound in `state_durability_evidence_refusal` +help: consider further restricting type parameter `ReadbackSubject` with trait `PartialEq` + | +806 | pub fn state_durability_boundary_evidence_verdict(boundary: Rc, admission: Rc>, capability: Rc, evidence: Rc>>>) -> Rc> { + | +++++++++++++++++++++ + +error[E0308]: mismatched types + --> src/std_state_durability.rs:878:59 + | +878 | accepted: Rc::new(v1_rt::append(acc.accepted.clone(), matched.clone())), + | ------------- ^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc>>` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc>` + found struct `Rc>>>` +help: the return type of this call is `Rc>>>` due to the type of the argument passed + --> src/std_state_durability.rs:878:23 + | +878 | accepted: Rc::new(v1_rt::append(acc.accepted.clone(), matched.clone())), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------------^ + | | + | this argument influences the return type of `append` +note: function defined here + --> src/v1_rt.rs:379:8 + | +379 | pub fn append(list: Rc>, item: T) -> Vec { + | ^^^^^^ ------- + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_std_collection.rs:94:5 + | +94 | lookup: { let key = key.clone(); let value = value.clone(); let m = m.clone(); Rc::new(move |candidate... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0277]: the trait bound `K: Eq` is not satisfied + --> src/v2_std_collection.rs:96:14 + | + 96 | false => v1_rt::lookup(&m, candidate.clone()), + | ^^^^^^^^^^^^^ the trait `Eq` is not implemented for `K` + | +note: required by a bound in `lookup` + --> src/v1_rt.rs:330:18 + | +330 | pub fn lookup(m: &HashMap, key: K) -> Option { + | ^^^^^^^^^^^^ required by this bound in `lookup` +help: consider further restricting type parameter `K` with trait `Eq` + | + 92 | pub fn map_insert(m: Rc>, key: K, value: V) -> Rc> { + | ++++++++++++++ + +error[E0277]: the trait bound `K: std::hash::Hash` is not satisfied + --> src/v2_std_collection.rs:96:14 + | + 96 | false => v1_rt::lookup(&m, candidate.clone()), + | ^^^^^^^^^^^^^ the trait `std::hash::Hash` is not implemented for `K` + | +note: required by a bound in `lookup` + --> src/v1_rt.rs:330:33 + | +330 | pub fn lookup(m: &HashMap, key: K) -> Option { + | ^^^^^^^^^^^^^^^ required by this bound in `lookup` +help: consider further restricting type parameter `K` with trait `Hash` + | + 92 | pub fn map_insert(m: Rc>, key: K, value: V) -> Rc> { + | +++++++++++++++++ + +error[E0308]: mismatched types + --> src/v2_std_collection.rs:93:13 + | +93 | Rc::new(Map { + | _____-------_^ + | | | + | | arguments to this function are incorrect +94 | | lookup: { let key = key.clone(); let value = value.clone(); let m = m.clone(); Rc::new(move |candida... +95 | | true => Some(value.clone()), +96 | | false => v1_rt::lookup(&m, candidate.clone()), +97 | | }) }, +98 | | }) + | |_^ expected `HashMap`, found `Rc>` + | + = note: expected struct `im::HashMap` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0277]: the trait bound `K: Eq` is not satisfied + --> src/v2_std_collection.rs:102:5 + | +102 | v1_rt::lookup(&m, key.clone()) + | ^^^^^^^^^^^^^ the trait `Eq` is not implemented for `K` + | +note: required by a bound in `lookup` + --> src/v1_rt.rs:330:18 + | +330 | pub fn lookup(m: &HashMap, key: K) -> Option { + | ^^^^^^^^^^^^ required by this bound in `lookup` +help: consider further restricting type parameter `K` with trait `Eq` + | +101 | pub fn map_lookup(m: Rc>, key: K) -> Option { + | ++++++++++++++ + +error[E0277]: the trait bound `K: std::hash::Hash` is not satisfied + --> src/v2_std_collection.rs:102:5 + | +102 | v1_rt::lookup(&m, key.clone()) + | ^^^^^^^^^^^^^ the trait `std::hash::Hash` is not implemented for `K` + | +note: required by a bound in `lookup` + --> src/v1_rt.rs:330:33 + | +330 | pub fn lookup(m: &HashMap, key: K) -> Option { + | ^^^^^^^^^^^^^^^ required by this bound in `lookup` +help: consider further restricting type parameter `K` with trait `Hash` + | +101 | pub fn map_lookup(m: Rc>, key: K) -> Option { + | +++++++++++++++++ + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_std_cross_tree_import_model.rs:88:5 + | + 88 | v1_rt::contains(roots.clone(), r.clone(), source_root_ref_eq) + | ^^^^^^^^^^^^^^^ --------- ------------------ unexpected argument #3 of type `fn(SourceRootRef, SourceRootRef) -> bool {source_root_ref_eq}` + | | + | expected `String`, found `SourceRootRef` + | +note: expected `String`, found `Rc>` + --> src/v2_std_cross_tree_import_model.rs:88:21 + | + 88 | v1_rt::contains(roots.clone(), r.clone(), source_root_ref_eq) + | ^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- ----------- +help: remove the extra argument + | + 88 - v1_rt::contains(roots.clone(), r.clone(), source_root_ref_eq) + 88 + v1_rt::contains(/* std::string::String */, /* std::string::String */) + | + +error[E0308]: `match` arms have incompatible types + --> src/v2_std_fold_assembly.rs:258:38 + | +256 | / match (*named_edge_target_lookup(fold_form.children.clone(), fold_elements_edge())).clone() { +257 | | NamedEdgeTargetLookup::Found { target: e, .. } => decode_per_element(e.clone()), + | | ----------------------------- this is found to be of type `Rc>>>>>>` +258 | | NamedEdgeTargetLookup::Absent => fold_decode_reject(fold_form.clone(), "fold_form_elements_edge_absent".to_string()), + | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>>>>>`, found `Rc>>>>` +259 | | NamedEdgeTargetLookup::Ambiguous => fold_decode_reject(fold_form.clone(), "fold_form_elements_edge_ambiguous".to_string... +260 | | } + | |_- `match` arms have incompatible types + | + = note: expected struct `Rc>>>>>>` + found struct `Rc>>>>` + +error[E0308]: mismatched types + --> src/std_cache_interface.rs:638:12 + | +638 | layer: None, + | ^^^^ expected `Option`, found `None` + | + = note: expected enum `std::option::Option` + found struct `std_cache_interface::None` + +error[E0308]: mismatched types + --> src/std_cache_interface.rs:652:22 + | +652 | recompute_saved: recompute.time.clone(), + | ^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc>>` + | + = note: expected struct `Rc>` + found struct `Rc>>` + +error[E0308]: mismatched types + --> src/std_cache_interface.rs:667:23 + | +667 | (nanosecond_count(recompute.time.clone()) >= nanosecond_count(read_latency_cost(cache_facts_for_id(id... + | ---------------- ^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc>>` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc>` + found struct `Rc>>` +note: function defined here + --> src/std_measure.rs:961:8 + | +961 | pub fn nanosecond_count(n: Nanosecond) -> Nat { + | ^^^^^^^^^^^^^^^^ ------------- + +error[E0308]: mismatched types + --> src/std_cache_interface.rs:695:5 + | +694 | pub fn cache_layer_plan_primary(plan: Rc) -> NonEmptyStr { + | ----------- expected `std::string::String` because of return type +695 | plan.layers.clone().first().cloned() + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `String`, found `Option` + | + = note: expected struct `std::string::String` + found enum `std::option::Option` +help: consider using `Option::expect` to unwrap the `std::option::Option` value, panicking if the value is an `Option::None` + | +695 | plan.layers.clone().first().cloned().expect("REASON") + | +++++++++++++++++ + +error[E0308]: mismatched types + --> src/std_cache_interface.rs:699:5 + | +698 | pub fn cache_layer_plan_fallback(plan: Rc) -> NonEmptyStr { + | ----------- expected `std::string::String` because of return type +699 | plan.layers.clone().iter().cloned().skip(1 as usize).next() + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `String`, found `Option` + | + = note: expected struct `std::string::String` + found enum `std::option::Option` +help: consider using `Option::expect` to unwrap the `std::option::Option` value, panicking if the value is an `Option::None` + | +699 | plan.layers.clone().iter().cloned().skip(1 as usize).next().expect("REASON") + | +++++++++++++++++ + +error[E0308]: mismatched types + --> src/std_cache_interface.rs:703:5 + | +702 | pub fn cache_facts_for_id(id: NonEmptyStr, catalog: Rc>>) -> Rc { + | ----------------------- expected `Rc` because of return type +703 | Rc::new({ let mut __result = Vec::new(); for facts in catalog.clone().iter().cloned() { if (facts.identity.clone() == id.clone()) { __result.push(facts); } } __result }).first().cloned() + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `Option>` + | + = note: expected struct `Rc<_>` + found enum `std::option::Option>` +help: consider using `Option::expect` to unwrap the `std::option::Option>` value, panicking if the value is an `Option::None` + | +703 | Rc::new({ let mut __result = Vec::new(); for facts in catalog.clone().iter().cloned() { if (facts.identity.clone() == id.clone()) { __result.push(facts); } } __result }).first().cloned().expect("REASON") + | +++++++++++++++++ + +error[E0308]: mismatched types + --> src/std_realization_measurement.rs:96:11 + | +96 | time: time.clone(), + | ^^^^^^^^^^^^ expected `Rc>>`, found `Rc>` + | + = note: expected struct `Rc>>` + found struct `Rc>` + +error[E0308]: mismatched types + --> src/std_realization_reconcile.rs:85:65 + | +82 | impl Reconciliation { + | - expected this type parameter +83 | pub fn applied(&self) -> A { + | - expected `A` because of return type +84 | match self { +85 | Reconciliation::Converged { applied: __val, .. } => __val.clone(), + | ^^^^^^^^^^^^^ expected type parameter `A`, found `&A` + | + = note: expected type parameter `_` + found reference `&_` +note: `A` does not implement `Clone`, so `&A` was cloned instead + --> src/std_realization_reconcile.rs:85:65 + | +85 | Reconciliation::Converged { applied: __val, .. } => __val.clone(), + | ^^^^^ + +error[E0425]: cannot find function `import_resolution_facts` in this scope + --> src/v2_lens_module_graph.rs:97:5 + | +97 | import_resolution_facts(pool_roots.clone(), importer_roots.clone(), exclude_substrings.clone()) + | ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function `reference_resolution_facts` in this scope + --> src/v2_lens_module_graph.rs:101:5 + | +101 | reference_resolution_facts(pool_roots.clone(), importer_roots.clone(), exclude_substrings.clone()) + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function `module_declaration_facts` in this scope + --> src/v2_lens_module_graph.rs:114:5 + | +114 | module_declaration_facts(pool_roots.clone()) + | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0425]: cannot find function `dependency_resolution_facts` in this scope + --> src/v2_lens_module_graph.rs:130:5 + | +130 | dependency_resolution_facts(pool_roots.clone(), importer_roots.clone(), exclude_substrings.clone()) + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_module_graph.rs:161:8 + | +161 | if v1_rt::contains(acc.clone(), item.clone(), string_eq) { + | ^^^^^^^^^^^^^^^ --------- unexpected argument #3 of type `fn(Rc, {type error}>, Rc, {type error}>) -> bool {v2_lens_module_graph::string_eq}` + | +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ +help: remove the extra argument + | +161 - if v1_rt::contains(acc.clone(), item.clone(), string_eq) { +161 + if v1_rt::contains(acc.clone(), item.clone()) { + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_module_graph.rs:190:8 + | +190 | if v1_rt::contains(acc.clone(), item.clone(), string_eq) { + | ^^^^^^^^^^^^^^^ --------- unexpected argument #3 of type `fn(Rc, {type error}>, Rc, {type error}>) -> bool {v2_lens_module_graph::string_eq}` + | +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ +help: remove the extra argument + | +190 - if v1_rt::contains(acc.clone(), item.clone(), string_eq) { +190 + if v1_rt::contains(acc.clone(), item.clone()) { + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_module_graph.rs:223:8 + | +223 | if v1_rt::contains(state.reached.clone(), path.clone(), string_eq) { + | ^^^^^^^^^^^^^^^ --------- unexpected argument #3 of type `fn(Rc, {type error}>, Rc, {type error}>) -> bool {v2_lens_module_graph::string_eq}` + | +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ +help: remove the extra argument + | +223 - if v1_rt::contains(state.reached.clone(), path.clone(), string_eq) { +223 + if v1_rt::contains(state.reached.clone(), path.clone()) { + | + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_std_model_core.rs:190:5 + | +190 | lookup: { let facts = facts.clone(); Rc::new(move |axis| match (*model_core_bool_fact_lookup(facts.cl... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_std_model_core.rs:189:13 + | +189 | Rc::new(Map { + | _____-------_^ + | | | + | | arguments to this function are incorrect +190 | | lookup: { let facts = facts.clone(); Rc::new(move |axis| match (*model_core_bool_fact_lookup(facts.... +191 | | Witness::Holds { value: v, .. } => Some(v.clone()), +192 | | Witness::Violates { diagnostic: _, .. } => None, +193 | | }) }, +194 | | }) + | |_^ expected `HashMap>`, found `Rc>` + | + = note: expected struct `im::HashMap>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0369]: binary operation `<` cannot be applied to type `Rc` + --> src/v2_std_nat.rs:56:23 + | +56 | if (a.clone() < b.clone()) { + | --------- ^ --------- Rc + | | + | Rc + | +note: an implementation of `PartialOrd` might be missing for `v2_std_nat::Nat` + --> src/v2_std_nat.rs:18:1 + | +18 | pub enum Nat { + | ^^^^^^^^^^^^ must implement `PartialOrd` +help: consider annotating `v2_std_nat::Nat` with `#[derive(PartialEq, PartialOrd)]` + | +18 + #[derive(PartialEq, PartialOrd)] +19 | pub enum Nat { + | + +error[E0308]: mismatched types + --> src/v2_std_node_query.rs:150:104 + | +146 | impl CoproductNullaryInhabitantLookup { + | - expected this type parameter +147 | pub fn value(&self) -> T { + | - expected `T` because of return type +... +150 | CoproductNullaryInhabitantLookup::CoproductNullaryInhabitantUnique { value: __val, .. } => __val.clone(), + | ^^^^^^^^^^^^^ expected type parameter `T`, found `&T` + | + = note: expected type parameter `_` + found reference `&_` +note: `T` does not implement `Clone`, so `&T` was cloned instead + --> src/v2_std_node_query.rs:150:104 + | +150 | ... CoproductNullaryInhabitantLookup::CoproductNullaryInhabitantUnique { value: __val, .. } => __val.cl... + | ^^^^^ + +error[E0308]: mismatched types + --> src/v2_std_provenance.rs:79:27 + | +79 | witness_from_optional(v1_rt::lookup(&index.entries.clone(), id.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)"), s... + | --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_std_witness.rs:26:8 + | +26 | pub fn witness_from_optional(opt: Option, absent: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^^^^^^ -------------- +help: try wrapping the expression in `Some` + | +79 | witness_from_optional(Some(v1_rt::lookup(&index.entries.clone(), id.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)")), span_index_occurrence_absent_diagnostic()) + | +++++ + + +error[E0308]: arguments to this function are incorrect + --> src/v2_lens_determinism.rs:135:42 + | +135 | ...acc, e, child| determinism_axis_fold_step(acc.clone(), child.clone(), e.clone())) }, + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ------------- --------- expected `Rc`, found `Rc` + | | + | expected `Rc`, found `Rc` + | +note: function defined here + --> src/v2_lens_determinism.rs:128:8 + | +128 | pub fn determinism_axis_fold_step(acc: Rc, _: Rc, child: Rc) -> Rc src/v2_lens_determinism.rs:161:64 + | +161 | Determinism::NonDeterministic { source: _, .. } => Rc::new(Witness::::Violates { + | ________________________________________________________-------_^ + | | | + | | arguments to this function are incorrect +162 | | diagnostic: determinism_leak_diagnostic(n.clone()), +163 | | }), + | |_^ expected `Witness>`, found `Witness` + | + = note: expected enum `Witness>` + found enum `Witness` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: arguments to this function are incorrect + --> src/v2_std_cardinality.rs:581:42 + | +581 | ...acc, e, child| termination_proof_fold_step(acc.clone(), child.clone(), e.clone())) }, + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ------------- --------- expected `Rc>>`, found `Rc` + | | + | expected `Rc`, found `Rc>>` + | +note: function defined here + --> src/v2_std_cardinality.rs:566:8 + | +566 | pub fn termination_proof_fold_step(acc: Rc>>, _: Rc, child: Rc src/v2_std_compilers_lexing.rs:235:13 + | +235 | Rc::new(skip(stream.all.clone(), stream.pos.clone())) + | ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Vector>`, found `Rc>>` + | | + | arguments to this function are incorrect + | + = note: expected struct `im::Vector>` + found struct `Rc>>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1359:26 + | +1359 | if (digit.clone() == 0) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1362:30 + | +1362 | if (digit.clone() == 1) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1365:34 + | +1365 | if (digit.clone() == 2) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1368:38 + | +1368 | if (digit.clone() == 3) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1371:42 + | +1371 | if (digit.clone() == 4) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1374:46 + | +1374 | if (digit.clone() == 5) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1377:50 + | +1377 | ... if (digit.clone() == 6) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1380:54 + | +1380 | ... if (digit.clone() == 7) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1383:58 + | +1383 | ... if (digit.clone() == 8) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0308]: mismatched types + --> src/v2_std_integer.rs:1400:30 + | +1400 | if (value.clone() == 0) { + | ------------- ^ expected `Rc`, found integer + | | + | expected because this is `Rc` + | + = note: expected struct `Rc` + found type `{integer}` + +error[E0369]: binary operation `<` cannot be applied to type `Rc` + --> src/v2_std_integer.rs:1403:31 + | +1403 | if (value.clone() < 10) { + | ------------- ^ -- {integer} + | | + | Rc + | +note: `Rc` does not implement `PartialOrd<{integer}>` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:320:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:323:1 + | + = note: `Rc` is defined in another crate + +error[E0369]: cannot divide `Rc` by `{integer}` + --> src/v2_std_integer.rs:1407:47 + | +1407 | let rest = (value.clone() / 10); + | ------------- ^ -- {integer} + | | + | Rc + | +note: `Rc` does not implement `Div<{integer}>` + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:320:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:323:1 + | + = note: `Rc` is defined in another crate + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:331:54 + | +331 | apply: { Rc::new(move |s| match (*left_r.clone().apply(s.clone())).clone() { + | ^^^^^----------- help: remove the arguments + | | + | field, not a method + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:333:104 + | +333 | ...=> match (*right_r.clone().apply(rest1.clone())).clone() { + | ^^^^^--------------- help: remove the arguments + | | + | field, not a method + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:343:54 + | +343 | apply: { Rc::new(move |s| match (*left_r.clone().apply(s.clone())).clone() { + | ^^^^^----------- help: remove the arguments + | | + | field, not a method + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:348:57 + | +348 | LexMatchResult::LexMatchRejected => right_r.clone().apply(s.clone()), + | ^^^^^----------- help: remove the arguments + | | + | field, not a method + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:352:54 + | +352 | apply: { Rc::new(move |s| match (*elem_r.clone().apply(s.clone())).clone() { + | ^^^^^----------- help: remove the arguments + | | + | field, not a method + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:377:54 + | +377 | apply: { Rc::new(move |s| match (*elem_r.clone().apply(s.clone())).clone() { + | ^^^^^----------- help: remove the arguments + | | + | field, not a method + +error[E0599]: no method named `apply` found for struct `Rc` in the current scope + --> src/v2_compiler_tokenize.rs:393:54 + | +393 | apply: { Rc::new(move |s| match (*open_r.clone().apply(s.clone())).clone() { + | ^^^^^----------- help: remove the arguments + | | + | field, not a method + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_extdeps_runtimes_v2_effect_io_pure.rs:119:5 + | +119 | lookup: { Rc::new(move |_| None) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_extdeps_runtimes_v2_effect_io_pure.rs:118:23 + | +118 | bindings: Rc::new(Map { + | _______________-------_^ + | | | + | | arguments to this function are incorrect +119 | | lookup: { Rc::new(move |_| None) }, +120 | | }), + | |_^ expected `HashMap, ...>`, found `Rc>` + | + = note: expected struct `im::HashMap, Rc>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0614]: type `std::option::Option>` cannot be dereferenced + --> src/v2_extdeps_runtimes_v2_effect_io_pure.rs:211:15 + | +211 | match (*v1_rt::map_get(&store.entries.clone(), locator.identity.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't be dereferenced + +error[E0599]: no variant, associated function, or constant named `GlobalBareAmbiguous` found for enum `std::option::Option` in the current scope + --> src/v2_std_symbol_index.rs:116:20 + | +116 | Some(Optional::GlobalBareAmbiguous) => index.clone(), + | ^^^^^^^^^^^^^^^^^^^ variant, associated function, or constant not found in `std::option::Option<_>` + +error[E0599]: no variant named `GlobalBareUnique` found for enum `std::option::Option<_>` + --> src/v2_std_symbol_index.rs:117:20 + | +117 | Some(Optional::GlobalBareUnique { node: existing, path: existing_path, .. }) => if ((existing_path.cl... + | ^^^^^^^^^^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0599]: no variant named `GlobalBareUnique` found for enum `std::option::Option<_>` + --> src/v2_std_symbol_index.rs:151:20 + | +151 | Some(Optional::GlobalBareUnique { node: n, .. }) => Rc::new(GlobalBareLookup::GlobalBareHit { + | ^^^^^^^^^^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0599]: no variant, associated function, or constant named `GlobalBareAmbiguous` found for enum `std::option::Option` in the current scope + --> src/v2_std_symbol_index.rs:154:20 + | +154 | Some(Optional::GlobalBareAmbiguous) => Rc::new(GlobalBareLookup::GlobalBareLookupAmbiguous), + | ^^^^^^^^^^^^^^^^^^^ variant, associated function, or constant not found in `std::option::Option<_>` + +error[E0599]: no method named `clone` found for type parameter `A` in the current scope + --> src/v2_compiler_materialization_carriers.rs:188:59 + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc crate::v2_std_staging::resolve_probe(lookup(x.clone()), stage.clone(), x.clone()), + | ^^^^^ method not found in `A` + | + = help: items from traits can only be used if the type parameter is bounded by the trait +help: the following trait defines an item `clone`, perhaps you need to restrict type parameter `A` with it: + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc> + Clone + 'static, stage: impl Fn(A) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++ + +error[E0277]: the trait bound `B: Clone` is not satisfied + --> src/v2_compiler_materialization_carriers.rs:188:50 + | +188 | true => crate::v2_std_staging::resolve_probe(lookup(x.clone()), stage.clone(), x.clone()), + | ------------------------------------ ^^^^^^^^^^^^^^^^^ the trait `Clone` is not implemented for `B` + | | + | required by a bound introduced by this call + | +note: required by a bound in `resolve_probe` + --> src/v2_std_staging.rs:36:35 + | + 36 | pub fn resolve_probe(probe: Rc>, stage: impl Fn(A) -> Rc> + ... + | ^^^^^ required by this bound in `resolve_probe` +help: consider restricting type parameter `B` with trait `Clone` + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc> + Clone + 'static, stage: impl Fn(A) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++++++++++++++ + +error[E0599]: no method named `clone` found for type parameter `A` in the current scope + --> src/v2_compiler_materialization_carriers.rs:188:86 + | +186 | ...overned(realization: Rc, lookup: impl Fn(A) -> Rc> + Clone... + | - method `clone` not found for this type parameter +187 | ...match materialization_allows_memo_store(realization.materialization.clone()) { +188 | ..._std_staging::resolve_probe(lookup(x.clone()), stage.clone(), x.clone()), + | ^^^^^ method not found in `A` + | + = help: items from traits can only be used if the type parameter is bounded by the trait +help: the following trait defines an item `clone`, perhaps you need to restrict type parameter `A` with it: + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc> + Clone + 'static, stage: impl Fn(A) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++ + +error[E0277]: the trait bound `A: Clone` is not satisfied + --> src/v2_compiler_materialization_carriers.rs:188:84 + | +188 | true => crate::v2_std_staging::resolve_probe(lookup(x.clone()), stage.clone(), x.clone()), + | ------------------------------------ ^^^^^^^^^ the trait `Clone` is not implemented for `A` + | | + | required by a bound introduced by this call + | +note: required by a bound in `resolve_probe` + --> src/v2_std_staging.rs:36:25 + | + 36 | pub fn resolve_probe(probe: Rc>, stage: impl Fn(A) -> Rc> + ... + | ^^^^^ required by this bound in `resolve_probe` +help: consider restricting type parameter `A` with trait `Clone` + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc> + Clone + 'static, stage: impl Fn(A) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++++++++++++++ + +error[E0599]: no method named `clone` found for type parameter `A` in the current scope + --> src/v2_compiler_materialization_carriers.rs:189:22 + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc stage(x.clone()), + | ^^^^^ method not found in `A` + | + = help: items from traits can only be used if the type parameter is bounded by the trait +help: the following trait defines an item `clone`, perhaps you need to restrict type parameter `A` with it: + | +186 | pub fn cached_stage_governed(realization: Rc, lookup: impl Fn(A) -> Rc> + Clone + 'static, stage: impl Fn(A) -> Rc> + Clone + 'static) -> Rc Rc>> { + | +++++++ + +error[E0282]: type annotations needed + --> src/v2_std_find_witness.rs:77:67 + | +77 | ...n_rules(), rule.clone(), |left, right| (left.clone() == right.clone())) + | ^^^^ ---- type must be known at this point + | +help: consider giving this closure parameter an explicit type + | +77 | v1_rt::contains(realized_preservation_rules(), rule.clone(), |left: /* Type */, right| (left.clone() == right.clone())) + | ++++++++++++ + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_std_find_witness.rs:77:5 + | + 77 | v1_rt::contains(realized_preservation_rules(), rule.clone(), |left, right| (left.clone() == right.clone())) + | ^^^^^^^^^^^^^^^ --------------------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_std_find_witness.rs:77:21 + | + 77 | v1_rt::contains(realized_preservation_rules(), rule.clone(), |left, right| (left.clone() == right.clo... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | + 77 - v1_rt::contains(realized_preservation_rules(), rule.clone(), |left, right| (left.clone() == right.clone())) + 77 + v1_rt::contains(/* std::string::String */, rule.clone()) + | + +error[E0614]: type `std::option::Option<_>` cannot be dereferenced + --> src/v2_std_compilers_target_model.rs:442:11 + | +442 | match (*v1_rt::map_get(&binding_spellings, binding.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't be dereferenced + +error[E0614]: type `std::option::Option<_>` cannot be dereferenced + --> src/v2_std_compilers_target_model.rs:534:105 + | +534 | ... match (*v1_rt::map_get(&target.token_class_emit_transforms.clone(), token_class.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't be dereferenced + +error[E0614]: type `std::option::Option<_>` cannot be dereferenced + --> src/v2_std_compilers_target_model.rs:544:100 + | +544 | ... match (*v1_rt::map_get(&target.token_class_emit_transforms.clone(), token_class.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't be dereferenced + +error[E0308]: mismatched types + --> src/v2_std_compilers_target_model.rs:2137:43 + | +2137 | optional_present(source_atom_char(c.clone())) + | ---------------- ^^^^^^^^^ expected `i64`, found `String` + | | + | arguments to this function are incorrect + | +note: function defined here + --> src/v2_std_compilers_target_model.rs:2126:8 + | +2126 | pub fn source_atom_char(codepoint: i64) -> Rc { + | ^^^^^^^^^^^^^^^^ -------------- + +error[E0308]: mismatched types + --> src/v2_std_compilers_target_model.rs:2384:15 + | +2384 | identity: codepoint.clone(), + | ^^^^^^^^^^^^^^^^^ expected `String`, found `i64` + | +help: try using a conversion method + | +2384 - identity: codepoint.clone(), +2384 + identity: codepoint.to_string(), + | + +error[E0308]: mismatched types + --> src/v2_std_compilers_target_model.rs:2647:62 + | +2647 | ...1_rt::map_get(&fold_list(shape.callees.clone(), v1_rt::rc_empty_map::<_, _>(), |acc, row| v1_rt::rc_m... + | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `HashMap<_, _>`, found `Rc>` + | | + | arguments to this function are incorrect + | + = note: expected struct `im::HashMap<_, _>` + found struct `Rc>` +help: the return type of this call is `Rc>` due to the type of the argument passed + --> src/v2_std_compilers_target_model.rs:2647:29 + | +2647 | ...t(&fold_list(shape.callees.clone(), v1_rt::rc_empty_map::<_, _>(), |acc, row| v1_rt::rc_map_insert(acc.clone(), row.effect_kind.clone(), row.callee.clone())), e... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | | + | this argument influences the return type of `fold_list` +note: function defined here + --> src/v2_std_algebra.rs:64:8 + | + 64 | pub fn fold_list(mut xs: Rc>, mut empty: A, mut cons: impl Fn(A, T) ->... + | ^^^^^^^^^ ------------ + +error[E0614]: type `std::option::Option<_>` cannot be dereferenced + --> src/v2_std_compilers_target_model.rs:2647:11 + | +2647 | ...ch (*v1_rt::map_get(&fold_list(shape.callees.clone(), v1_rt::rc_empty_map::<_, _>(), |acc, row| v1_rt::rc_map_insert(acc.clone(), row.effect_kind.clone(), row.callee.clone())), effect_kind.clone())).cl... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't be dereferenced + +error[E0308]: mismatched types + --> src/v2_std_compilers_target_model.rs:7002:90 + | +7002 | ...lid => Rc::new(TargetUseSiteOwnershipCatalogLookup::TargetUseSiteOwnershipCatalogInvalid), + | ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `TargetUseSiteOwnershipLookup`, found `TargetUseSiteOwnershipCatalogLookup` + | | + | arguments to this function are incorrect + | +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_target_carriers.rs:105:64 + | +105 | ...=> outcome_accepted(Some(child.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of outcome_accepted (empty Optional at runtime)")), + | ---------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +help: the return type of this call is `Rc` due to the type of the argument passed + --> src/v2_compiler_target_carriers.rs:105:47 + | +105 | ...=> outcome_accepted(Some(child.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of outcome_accepted (empty Optional at runtime)")), + | ^^^^^^^^^^^^^^^^^-------------------------------------------------------------------------------------------------------------------------------------------------^ + | | + | this argument influences the return type of `outcome_accepted` +note: function defined here + --> src/v2_std_diagnostic.rs:172:8 + | +172 | pub fn outcome_accepted(value: T) -> Rc> { + | ^^^^^^^^^^^^^^^^ -------- +help: try wrapping the expression in `Some` + | +105 | Outcome::Accepted { value: child, .. } => outcome_accepted(Some(Some(child.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of outcome_accepted (empty Optional at runtime)"))), + | +++++ + + +error[E0609]: no field `member` on type `Rc>>` + --> src/v2_std_grammar.rs:124:82 + | +124 | FormalGrammarSymbol::FormalTerminalOccurrence { terminal, .. } => (terminals.member)(terminal.clone()), + | ^^^^^^ unknown field + +error[E0609]: no field `member` on type `Rc>>` + --> src/v2_std_grammar.rs:125:104 + | +125 | ...inal: nonterminal, .. } => (nonterminals.member)(nonterminal.clone()), + | ^^^^^^ unknown field + +error[E0609]: no field `member` on type `Rc>>` + --> src/v2_std_grammar.rs:134:102 + | +134 | ... (acc.clone() && (g.nonterminals.clone().member)(production.lhs.clone()))) + | ^^^^^^ unknown field + +error[E0609]: no field `member` on type `Rc>>` + --> src/v2_std_grammar.rs:142:33 + | +142 | if !(g.nonterminals.clone().member)(g.start.clone()) { + | ^^^^^^ unknown field + +error[E0308]: mismatched types + --> src/v2_std_grammar.rs:1285:29 + | +1281 | ...ch (*progress.clone()).clone() { + | --------------------------- this expression has type `Witness>` +... +1285 | ...ness::Holds { value: DeriveGrammarRelationTokensProgress { edges, conj_index, conj_children, .. }, ..... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `DeriveGrammarRelationTokensProgress` + | + = note: expected struct `Rc` + found struct `DeriveGrammarRelationTokensProgress` + +error[E0308]: mismatched types + --> src/v2_std_grammar.rs:1363:29 + | +1356 | match (*fold_list(production.rhs.clone(), Rc::new(Witness::>::Holds { + | _______- +1357 | | value: Rc::new(DeriveGrammarRelationTokensProgress { +1358 | | edges: Rc::new(vec![]), +1359 | | conj_index: 0, +1360 | | conj_children: conj_children.clone(), +1361 | | }), +1362 | | }), |progress, symbol| derive_grammar_relation_token_edges_recursive_step(progress.clone(), productions.clone(), emitted.clone(), symbol.clone()))).clone() { + | |___________________________________________________________________________________________________________________________________________________________- this expression has type `Witness>` +1363 | Witness::Holds { value: DeriveGrammarRelationTokensProgress { edges: result, conj_index, conj_children, .. }, .. } => if (conj_index.clone() == conj_posit... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `DeriveGrammarRelationTokensProgress` + | + = note: expected struct `Rc` + found struct `DeriveGrammarRelationTokensProgress` + +error[E0308]: mismatched types + --> src/v2_std_grammar.rs:1365:12 + | +1365 | value: result.clone(), + | ^^^^^^^^^^^^^^ expected `()`, found `Rc>>` + | + = note: expected unit type `()` + found struct `Rc>>` + +error[E0308]: mismatched types + --> src/v2_std_grammar.rs:1364:21 + | +1364 | Rc::new(Witness::::Holds { + | _____________-------_^ + | | | + | | arguments to this function are incorrect +1365 | | value: result.clone(), +1366 | | }) + | |_^ expected `Witness>>>`, found `Witness<()>` + | + = note: expected enum `Witness>>>` + found enum `Witness<()>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_extdeps_languages_llvm_ir.rs:1100:5 + | +1100 | lookup: { let facts = facts.clone(); Rc::new(move |axis| if (axis.clone() == "ModelCoreFactAxisSurfa... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0599]: no variant named `Present` found for enum `std::option::Option<_>` + --> src/v2_extdeps_languages_llvm_ir.rs:1101:19 + | +1101 | Optional::Present { + | ^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0599]: no variant named `Present` found for enum `std::option::Option<_>` + --> src/v2_extdeps_languages_llvm_ir.rs:1106:23 + | +1106 | Optional::Present { + | ^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0599]: no variant named `Present` found for enum `std::option::Option<_>` + --> src/v2_extdeps_languages_llvm_ir.rs:1111:27 + | +1111 | Optional::Present { + | ^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0308]: mismatched types + --> src/v2_extdeps_languages_llvm_ir.rs:1099:13 + | +1099 | Rc::new(Map { + | _____-------_^ + | | | + | | arguments to this function are incorrect +1100 | | lookup: { let facts = facts.clone(); Rc::new(move |axis| if (axis.clone() == "ModelCoreFactAxisSur... +1101 | | Optional::Present { +1102 | | value: llvm_inhabitant_atom(facts.surface_spelling.clone()), +... | +1118 | | }) }, +1119 | | }) + | |_^ expected `HashMap>`, found `Rc>` + | + = note: expected struct `im::HashMap>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_extdeps_languages_llvm_ir.rs:1124:5 + | +1124 | lookup: { let facts = facts.clone(); Rc::new(move |axis| if (axis.clone() == "ModelCoreFactAxisSurfa... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0599]: no variant named `Present` found for enum `std::option::Option<_>` + --> src/v2_extdeps_languages_llvm_ir.rs:1125:19 + | +1125 | Optional::Present { + | ^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0599]: no variant named `Present` found for enum `std::option::Option<_>` + --> src/v2_extdeps_languages_llvm_ir.rs:1130:23 + | +1130 | Optional::Present { + | ^^^^^^^ variant not found in `std::option::Option<_>` + +error[E0308]: mismatched types + --> src/v2_extdeps_languages_llvm_ir.rs:1123:13 + | +1123 | Rc::new(Map { + | _____-------_^ + | | | + | | arguments to this function are incorrect +1124 | | lookup: { let facts = facts.clone(); Rc::new(move |axis| if (axis.clone() == "ModelCoreFactAxisSur... +1125 | | Optional::Present { +1126 | | value: llvm_inhabitant_atom(facts.surface_spelling.clone()), +... | +1136 | | }) }, +1137 | | }) + | |_^ expected `HashMap>`, found `Rc>` + | + = note: expected struct `im::HashMap>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_std_language_model.rs:45:5 + | +45 | member: { Rc::new(move |_| false) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_std_language_model.rs:44:13 + | +44 | Rc::new(Set { + | _____-------_^ + | | | + | | arguments to this function are incorrect +45 | | member: { Rc::new(move |_| false) }, +46 | | }) + | |_^ expected `OrdSet`, found `Rc>` + | + = note: expected struct `OrdSet` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_extdeps_languages_dag.rs:1219:5 + | +1219 | member: { Rc::new(move |sym| (((((sym.clone() == "dag_c3_surface_sugar_service".to_string()) || (sym... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_extdeps_languages_dag.rs:1225:5 + | +1225 | member: { Rc::new(move |_| false) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_extdeps_languages_dag.rs:1235:5 + | +1235 | member: { Rc::new(move |sym| (((dag_language_model_surface_prelude_atoms().member)(sym.clone()) || g... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_extdeps_languages_dag.rs:3055:56 + | +3055 | dag_bodied_fn_target_model(dag_pick_family_spec(), Some(target_emit_host_runtime_row_unconfigured()).expect("fail-closed: an optional value flowed into non-optional parameter 1 of dag_bodied_fn_target_model (empty Optional at runtime)")) + | -------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_extdeps_languages_dag.rs:2964:8 + | +2964 | ...fn dag_bodied_fn_target_model(spec: Rc, runtime_row: Option>) -... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ------------------------------------------------- +help: try wrapping the expression in `Some` + | +3055 | dag_bodied_fn_target_model(dag_pick_family_spec(), Some(Some(target_emit_host_runtime_row_unconfigured()).expect("fail-closed: an optional value flowed into non-optional parameter 1 of dag_bodied_fn_target_model (empty Optional at runtime)"))) + | +++++ + + +error[E0308]: mismatched types + --> src/v2_extdeps_languages_dag.rs:3100:56 + | +3100 | dag_bodied_fn_target_model(dag_bind_family_spec(), Some(target_emit_host_runtime_row_unconfigured()).expect("fail-closed: an optional value flowed into non-optional parameter 1 of dag_bodied_fn_target_model (empty Optional at runtime)")) + | -------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_extdeps_languages_dag.rs:2964:8 + | +2964 | ...fn dag_bodied_fn_target_model(spec: Rc, runtime_row: Option>) -... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ------------------------------------------------- +help: try wrapping the expression in `Some` + | +3100 | dag_bodied_fn_target_model(dag_bind_family_spec(), Some(Some(target_emit_host_runtime_row_unconfigured()).expect("fail-closed: an optional value flowed into non-optional parameter 1 of dag_bodied_fn_target_model (empty Optional at runtime)"))) + | +++++ + + +error[E0308]: mismatched types + --> src/v2_extdeps_languages_dag.rs:3145:56 + | +3145 | dag_bodied_fn_target_model(dag_loop_family_spec(), Some(target_emit_host_runtime_row_unconfigured()).expect("fail-closed: an optional value flowed into non-optional parameter 1 of dag_bodied_fn_target_model (empty Optional at runtime)")) + | -------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_extdeps_languages_dag.rs:2964:8 + | +2964 | ...fn dag_bodied_fn_target_model(spec: Rc, runtime_row: Option>) -... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ------------------------------------------------- +help: try wrapping the expression in `Some` + | +3145 | dag_bodied_fn_target_model(dag_loop_family_spec(), Some(Some(target_emit_host_runtime_row_unconfigured()).expect("fail-closed: an optional value flowed into non-optional parameter 1 of dag_bodied_fn_target_model (empty Optional at runtime)"))) + | +++++ + + +error[E0308]: mismatched types + --> src/v2_lens_cost.rs:312:123 + | +312 | ...Succ { prev: Nat::Zero, .. } = value.as_ref() else { unreachable!() }; b.clone() }, + | ^^^^^^^^^ -------------- this expression has type `&v2_std_nat::Nat` + | | + | expected `Rc`, found `Nat` + | + = note: expected struct `Rc` + found enum `v2_std_nat::Nat` +help: consider dereferencing to access the inner value using the `Deref` trait + | +312 | SymbolicCost::ConstantCost { ref value, .. } if matches!(value.as_ref(), Nat::Succ { .. }) => { let Nat::Succ { prev: Nat::Zero, .. } = &*value.as_ref() else { unreachable!() }; b.clone() }, + | ++ + +error[E0308]: mismatched types + --> src/v2_lens_cost.rs:315:123 + | +315 | ...Succ { prev: Nat::Zero, .. } = value.as_ref() else { unreachable!() }; a.clone() }, + | ^^^^^^^^^ -------------- this expression has type `&v2_std_nat::Nat` + | | + | expected `Rc`, found `Nat` + | + = note: expected struct `Rc` + found enum `v2_std_nat::Nat` +help: consider dereferencing to access the inner value using the `Deref` trait + | +315 | SymbolicCost::ConstantCost { ref value, .. } if matches!(value.as_ref(), Nat::Succ { .. }) => { let Nat::Succ { prev: Nat::Zero, .. } = &*value.as_ref() else { unreachable!() }; a.clone() }, + | ++ + +error[E0308]: mismatched types + --> src/v2_compiler_parse.rs:414:27 + | +414 | witness_from_optional(v1_rt::lookup(&table.entries.clone(), key.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)"), p... + | --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_std_witness.rs:26:8 + | + 26 | pub fn witness_from_optional(opt: Option, absent: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^^^^^^ -------------- +help: try wrapping the expression in `Some` + | +414 | witness_from_optional(Some(v1_rt::lookup(&table.entries.clone(), key.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)")), parse_table_memo_miss_diagnostic(port_locus("parse_stage_locus_port".to_string()))) + | +++++ + + +error[E0282]: type annotations needed + --> src/v2_compiler_parse.rs:532:100 + | +532 | ...cc, ch| combine_hash(acc.clone(), byte_limb_hash_peano_digest(ch.clone()))) + | ^^ -- type must be known at this point + | +help: consider giving this closure parameter an explicit type + | +532 | fold_list(lexeme.clone(), symbol_identity_digest("parse_lexeme_digest_nil".to_string()), |acc, ch: /* Type */| combine_hash(acc.clone(), byte_limb_hash_peano_digest(ch.clone()))) + | ++++++++++++ + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_compiler_parse.rs:572:5 + | +572 | member: { Rc::new(move |_| false) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_compiler_parse.rs:571:27 + | +571 | nullable_set: Rc::new(Set { + | ___________________-------_^ + | | | + | | arguments to this function are incorrect +572 | | member: { Rc::new(move |_| false) }, +573 | | }), + | |_^ expected `OrdSet`, found `Rc>` + | + = note: expected struct `OrdSet` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_compiler_parse.rs:1034:5 + | +1034 | member: { let item = item.clone(); let s = s.clone(); Rc::new(move |sym| ((sym.clone() == item.clone... + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0609]: no field `member` on type `Rc>` + --> src/v2_compiler_parse.rs:1034:115 + | +1034 | ...m| ((sym.clone() == item.clone()) || (s.member)(sym.clone()))) }, + | ^^^^^^ unknown field + +error[E0308]: mismatched types + --> src/v2_compiler_parse.rs:1033:13 + | +1033 | Rc::new(Set { + | _____-------_^ + | | | + | | arguments to this function are incorrect +1034 | | member: { let item = item.clone(); let s = s.clone(); Rc::new(move |sym| ((sym.clone() == item.clo... +1035 | | }) + | |_^ expected `OrdSet`, found `Rc>` + | + = note: expected struct `OrdSet` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0609]: no field `member` on type `Rc>` + --> src/v2_compiler_parse.rs:1041:95 + | +1041 | ...ne(); Rc::new(move |name| (nullable_set.member)(name.clone())) }, + | ^^^^^^ unknown field + +error[E0609]: no field `member` on type `Rc>` + --> src/v2_compiler_parse.rs:1063:60 + | +1063 | fold_list(root.productions.clone(), 0, |acc, p| if (ns.member)(p.name.clone()) { + | ^^^^^^ unknown field + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_compiler_parse.rs:1096:5 + | +1096 | member: { Rc::new(move |_| false) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_compiler_parse.rs:1095:53 + | +1095 | compute_nullable_fixpoint(root.clone(), Rc::new(Set { + | _____________________________________________-------_^ + | | | + | | arguments to this function are incorrect +1096 | | member: { Rc::new(move |_| false) }, +1097 | | }), 0, length(root.productions.clone())) + | |_^ expected `OrdSet`, found `Rc>` + | + = note: expected struct `OrdSet` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0282]: type annotations needed + --> src/v2_compiler_parse.rs:1117:48 + | +1117 | v1_rt::contains(xs.clone(), item.clone(), |a, b| (a.clone() == b.clone())) + | ^ - type must be known at this point + | +help: consider giving this closure parameter an explicit type + | +1117 | v1_rt::contains(xs.clone(), item.clone(), |a: /* Type */, b| (a.clone() == b.clone())) + | ++++++++++++ + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_compiler_parse.rs:1117:5 + | +1117 | v1_rt::contains(xs.clone(), item.clone(), |a, b| (a.clone() == b.clone())) + | ^^^^^^^^^^^^^^^ ------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_compiler_parse.rs:1117:21 + | +1117 | v1_rt::contains(xs.clone(), item.clone(), |a, b| (a.clone() == b.clone())) + | ^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | + 307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | +1117 - v1_rt::contains(xs.clone(), item.clone(), |a, b| (a.clone() == b.clone())) +1117 + v1_rt::contains(/* std::string::String */, item.clone()) + | + +error[E0609]: no field `member` on type `Rc>` + --> src/v2_compiler_parse.rs:1150:29 + | +1150 | nullable: (nullable_set.member)(name.clone()), + | ^^^^^^ unknown field + +error[E0609]: no field `member` on type `Rc>` + --> src/v2_compiler_parse.rs:1353:29 + | +1353 | nullable: (nullable_set.member)(name.clone()), + | ^^^^^^ unknown field + +error[E0282]: type annotations needed + --> src/v2_compiler_parse.rs:1406:103 + | +1406 | ...s(acc.clone(), name.clone(), |a, b| (a.clone() == b.clone())) { + | ^ - type must be known at this point + | +help: consider giving this closure parameter an explicit type + | +1406 | fold_list(right.clone(), left.clone(), |acc, name| if v1_rt::contains(acc.clone(), name.clone(), |a: /* Type */, b| (a.clone() == b.clone())) { + | ++++++++++++ + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_compiler_parse.rs:1406:59 + | +1406 | ..., name| if v1_rt::contains(acc.clone(), name.clone(), |a, b| (a.clone() == b.clone())) { + | ^^^^^^^^^^^^^^^ ------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_compiler_parse.rs:1406:75 + | +1406 | fold_list(right.clone(), left.clone(), |acc, name| if v1_rt::contains(acc.clone(), name.clone(), |a,... + | ^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | + 307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | +1406 - fold_list(right.clone(), left.clone(), |acc, name| if v1_rt::contains(acc.clone(), name.clone(), |a, b| (a.clone() == b.clone())) { +1406 + fold_list(right.clone(), left.clone(), |acc, name| if v1_rt::contains(/* std::string::String */, name.clone()) { + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_compiler_parse.rs:1471:35 + | +1471 | ...p| v1_rt::contains(left_corner_row(rows.clone(), p.name.clone()), p.name.clone(), |a, b| (a.clone() == b.clone()))) + | ^^^^^^^^^^^^^^^ ------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_compiler_parse.rs:1471:51 + | +1471 | any(root.productions.clone(), |p| v1_rt::contains(left_corner_row(rows.clone(), p.name.clone()), p.name.... + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | + 307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | +1471 - any(root.productions.clone(), |p| v1_rt::contains(left_corner_row(rows.clone(), p.name.clone()), p.name.clone(), |a, b| (a.clone() == b.clone()))) +1471 + any(root.productions.clone(), |p| v1_rt::contains(/* std::string::String */, p.name.clone())) + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_compiler_parse.rs:1626:20 + | +1626 | ...atch v1_rt::contains(sync_tokens.clone(), tok.class.clone(), |a, b| (a.clone() == b.clone())) { + | ^^^^^^^^^^^^^^^ ------------------------------- unexpected argument #3 + | +note: expected `String`, found `Rc>` + --> src/v2_compiler_parse.rs:1626:36 + | +1626 | false => match v1_rt::contains(sync_tokens.clone(), tok.class.clone(), |a, b| (a.clone() == b.clone(... + | ^^^^^^^^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>` +note: function defined here + --> src/v1_rt.rs:307:8 + | + 307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- +help: remove the extra argument + | +1626 - false => match v1_rt::contains(sync_tokens.clone(), tok.class.clone(), |a, b| (a.clone() == b.clone())) { +1626 + false => match v1_rt::contains(/* std::string::String */, tok.class.clone()) { + | + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_extdeps_runtimes_v2_evaluator.rs:161:5 + | +161 | lookup: Rc::new(v2_eval_binding_lookup_miss), + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_extdeps_runtimes_v2_evaluator.rs:160:13 + | +160 | Rc::new(Map { + | _____-------_^ + | | | + | | arguments to this function are incorrect +161 | | lookup: Rc::new(v2_eval_binding_lookup_miss), +162 | | }) + | |_^ expected `HashMap, ...>`, found `Rc>` + | + = note: expected struct `im::HashMap, Rc>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_extdeps_runtimes_v2_evaluator.rs:332:5 + | +331 | Some(child) => match child.clone() { + | ------------- this expression has type `Rc` +332 | Edge { target: arm, .. } => outcome_accepted(arm.clone()), + | ^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `Edge` + | + = note: expected struct `Rc` + found struct `Edge` +help: consider dereferencing to access the inner value using the `Deref` trait + | +331 | Some(child) => match *child.clone() { + | + + +error[E0308]: mismatched types + --> src/v2_lens_machine_shape.rs:190:5 + | +187 | match fold_node_topdown(root.clone(), Rc::new(MachineShapeWalkCtx { + | ___________- +188 | | module_qn: optional_absent(), +189 | | }), machine_shape_topdown_algebra()) { + | |____________________________________- this expression has type `Rc` +190 | MachineShapeWalkResult { findings, .. } => findings.clone(), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `MachineShapeWalkResult` + | + = note: expected struct `Rc` + found struct `MachineShapeWalkResult` +help: consider dereferencing to access the inner value using the `Deref` trait + | +187 | match *fold_node_topdown(root.clone(), Rc::new(MachineShapeWalkCtx { + | + + +error[E0533]: expected value, found struct variant `ConstructionClass::WallNow` + --> src/v2_lens_mandatory_tag.rs:469:20 + | +469 | class: Rc::new(ConstructionClass::WallNow), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^ not a value + | +help: you might have meant to create a new value of the struct + | +469 - class: Rc::new(ConstructionClass::WallNow), +469 + class: Rc::new(ConstructionClass::WallNow { mechanism: /* value */, authority: /* value */ }, + | + +error[E0061]: this function takes 2 arguments but 3 arguments were supplied + --> src/v2_lens_reference_deps.rs:199:8 + | +199 | if v1_rt::contains(acc.clone(), fact.clone(), reference_fact_eq) { + | ^^^^^^^^^^^^^^^ ----------------- unexpected argument #3 of type `fn(Rc, Rc) -> bool {reference_fact_eq}` + | +note: expected `String`, found `Rc>>` + --> src/v2_lens_reference_deps.rs:199:24 + | +199 | if v1_rt::contains(acc.clone(), fact.clone(), reference_fact_eq) { + | ^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc>>` +note: expected `String`, found `Rc` + --> src/v2_lens_reference_deps.rs:199:37 + | +199 | if v1_rt::contains(acc.clone(), fact.clone(), reference_fact_eq) { + | ^^^^^^^^^^^^ + = note: expected struct `std::string::String` + found struct `Rc` +note: function defined here + --> src/v1_rt.rs:307:8 + | +307 | pub fn contains(s: String, sub: String) -> bool { string_contains(&s, sub) } + | ^^^^^^^^ --------- ----------- +help: remove the extra argument + | +199 - if v1_rt::contains(acc.clone(), fact.clone(), reference_fact_eq) { +199 + if v1_rt::contains(/* std::string::String */, /* std::string::String */) { + | + +error[E0308]: `match` arms have incompatible types + --> src/v2_compiler_body_lowering_fold.rs:3176:13 + | +3174 | Some(else_raw) => match body_lower_arm_operand_resolved_optional(else_raw.clone()) { + | _______________________- +3175 | | Some(else_arm) => outcome_accepted(optional_present(lower_branch(condition.clone(), then_arm.clone(), else_arm.clone()))), + | | ------------------------------------------------------------------------------------------------------- this is found to be of type `Rc>>>` +3176 | | None => body_lower_if_navigation_reject(else_capture.clone()), + | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>>>`, found `Rc>>` +3177 | | }, + | |_- `match` arms have incompatible types + | + = note: expected struct `Rc>>>` + found struct `Rc>>` + +error[E0599]: no associated function or constant named `Empty` found for struct `im::Vector` in the current scope + --> src/v2_compiler_program_assembly.rs:107:17 + | +107 | FreeMonoid::Empty => Rc::new(ProgramAssemblyFoldState::ProgramAssemblyFoldOk { + | ^^^^^ associated function or constant not found in `im::Vector<_>` + +error[E0560]: struct `Rc>` has no field named `member` + --> src/v2_compiler_resolve.rs:146:5 + | +146 | member: { Rc::new(move |_| false) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_compiler_resolve.rs:145:13 + | +145 | Rc::new(Set { + | _____-------_^ + | | | + | | arguments to this function are incorrect +146 | | member: { Rc::new(move |_| false) }, +147 | | }) + | |_^ expected `OrdSet`, found `Rc>` + | + = note: expected struct `OrdSet` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0609]: no field `member` on type `Rc>` + --> src/v2_compiler_resolve.rs:377:42 + | +377 | (namespace.canonical_symbols.clone().member)(name.clone()) + | ^^^^^^ unknown field + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_compiler_infer.rs:165:5 + | +165 | lookup: { Rc::new(move |_key| None) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_compiler_infer.rs:164:20 + | +164 | facts: Rc::new(Map { + | ____________-------_^ + | | | + | | arguments to this function are incorrect +165 | | lookup: { Rc::new(move |_key| None) }, +166 | | }), + | |_^ expected `HashMap, Rc>`, found `Rc>` + | + = note: expected struct `im::HashMap, Rc>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_infer.rs:378:63 + | +378 | Witness::Violates { diagnostic: upstream, .. } => Rc::new(Witness::::Violates { + | _______________________________________________________-------_^ + | | | + | | arguments to this function are incorrect +379 | | diagnostic: infer_descent_not_derived_diagnostic(upstream.at.clone()), +380 | | }), + | |_^ expected `Witness>`, found `Witness` + | + = note: expected enum `Witness>` + found enum `Witness` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_compiler_infer.rs:514:5 + | +514 | lookup: { Rc::new(move |key| lookup_inferred_facts_in_entries(admitted.clone(), key.clone())) }, + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_compiler_infer.rs:513:20 + | +513 | value: Rc::new(Map { + | ____________-------_^ + | | | + | | arguments to this function are incorrect +514 | | lookup: { Rc::new(move |key| lookup_inferred_facts_in_entries(admitted.clone(), key.clone())) }, +515 | | }), + | |_^ expected `HashMap, Rc>`, found `Rc>` + | + = note: expected struct `im::HashMap, Rc>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_infer.rs:522:27 + | +522 | witness_from_optional(v1_rt::lookup(&tree.facts.clone(), node.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)"), i... + | --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_std_witness.rs:26:8 + | + 26 | pub fn witness_from_optional(opt: Option, absent: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^^^^^^ -------------- +help: try wrapping the expression in `Some` + | +522 | witness_from_optional(Some(v1_rt::lookup(&tree.facts.clone(), node.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)")), infer_facts_lookup_miss_diagnostic(node.clone())) + | +++++ + + +error[E0308]: mismatched types + --> src/v2_compiler_name_resolve.rs:493:5 + | +488 | NodeKind::TypeNode { ref connective, .. } if matches!(connective.as_ref(), Connective::Conj) => { let Connective::Conj = connective.as_ref() else { unreachable!() }; match fold... + | _________________________________________________________________________________________________________________________________________________________________________________- +489 | | origin: origin.clone(), +490 | | state: state.clone(), +491 | | at_conj: false, +492 | | }), named_exports_topdown_algebra()) { + | |____________________________________- this expression has type `Rc` +493 | AdmitExportsFold { state: folded_state, .. } => folded_state.clone(), + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `AdmitExportsFold` + | + = note: expected struct `Rc` + found struct `AdmitExportsFold` +help: consider dereferencing to access the inner value using the `Deref` trait + | +488 | NodeKind::TypeNode { ref connective, .. } if matches!(connective.as_ref(), Connective::Conj) => { let Connective::Conj = connective.as_ref() else { unreachable!() }; match *fold_node_topdown(working.clone(), Rc::new(AdmitExportsFold { + | + + +error[E0369]: binary operation `==` cannot be applied to type `Rc` + --> src/v2_compiler_eval.rs:276:36 + | +276 | if (interpretation.clone() == v2_evaluator_interpretation()) { + | ---------------------- ^^ ----------------------------- Rc + | | + | Rc + | +note: an implementation of `PartialEq` might be missing for `InterpretationAlgebra` + --> src/v2_std_runtime.rs:368:1 + | +368 | pub struct InterpretationAlgebra { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` +help: consider annotating `InterpretationAlgebra` with `#[derive(PartialEq)]` + --> src/v2_std_runtime.rs:368:1 + | +368 + #[derive(PartialEq)] +369 | pub struct InterpretationAlgebra { + | + +error[E0369]: binary operation `==` cannot be applied to type `Rc` + --> src/v2_compiler_eval.rs:575:123 + | +575 | ... && (authority.interpretation.clone() == v2_evaluator_interpretation())) && (authority.semantics_diges... + | -------------------------------- ^^ ----------------------------- Rc + | | + | Rc + | +note: an implementation of `PartialEq` might be missing for `InterpretationAlgebra` + --> src/v2_std_runtime.rs:368:1 + | +368 | pub struct InterpretationAlgebra { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ must implement `PartialEq` +help: consider annotating `InterpretationAlgebra` with `#[derive(PartialEq)]` + --> src/v2_std_runtime.rs:368:1 + | +368 + #[derive(PartialEq)] +369 | pub struct InterpretationAlgebra { + | + +error[E0560]: struct `Rc>` has no field named `lookup` + --> src/v2_compiler_eval.rs:643:5 + | +643 | lookup: Rc::new(runtime_binding_lookup_miss), + | ^^^^^^ `Rc>` does not have this field + | + = note: all struct fields are already assigned + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:642:13 + | +642 | Rc::new(Map { + | _____-------_^ + | | | + | | arguments to this function are incorrect +643 | | lookup: Rc::new(runtime_binding_lookup_miss), +644 | | }) + | |_^ expected `HashMap, ...>`, found `Rc>` + | + = note: expected struct `im::HashMap, Rc>` + found struct `Rc>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:662:27 + | +662 | witness_from_optional(v1_rt::lookup(&tree.facts.clone(), node.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)"), i... + | --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option>` + found struct `Rc<_>` +note: function defined here + --> src/v2_std_witness.rs:26:8 + | + 26 | pub fn witness_from_optional(opt: Option, absent: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^^^^^^ -------------- +help: try wrapping the expression in `Some` + | +662 | witness_from_optional(Some(v1_rt::lookup(&tree.facts.clone(), node.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)")), infer_facts_lookup_miss_diagnostic(node.clone())) + | +++++ + + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:734:56 + | +734 | Witness::Violates { diagnostic: _, .. } => Rc::new(Witness::>::Vi... + | ________________________________________________-------_^ + | | | + | | arguments to this function are incorrect +735 | | diagnostic: eval_diagnostic("eval_rejected_grounding_not_derived".to_string(), node.clone()), +736 | | }), + | |_^ expected `Witness>`, found `Witness>` + | + = note: expected enum `Witness>` + found enum `Witness>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:742:17 + | +742 | Rc::new(Witness::>::Violates { + | _________-------_^ + | | | + | | arguments to this function are incorrect +743 | | diagnostic: eval_diagnostic("eval_rejected_resolved_type_mismatch".to_string(), node.clone()), +744 | | }) + | |_^ expected `Witness>`, found `Witness>` + | + = note: expected enum `Witness>` + found enum `Witness>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:752:17 + | +752 | Rc::new(Witness::>::Violates { + | _________-------_^ + | | | + | | arguments to this function are incorrect +753 | | diagnostic: eval_diagnostic("eval_rejected_inhabitance_mismatch".to_string(), node.clone()), +754 | | }) + | |_^ expected `Witness>`, found `Witness>` + | + = note: expected enum `Witness>` + found enum `Witness>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:761:17 + | +761 | Rc::new(Witness::>::Violates { + | _________-------_^ + | | | + | | arguments to this function are incorrect +762 | | diagnostic: eval_diagnostic("eval_rejected_canonical_mismatch".to_string(), node.clone()), +763 | | }) + | |_^ expected `Witness>`, found `Witness>` + | + = note: expected enum `Witness>` + found enum `Witness>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0308]: mismatched types + --> src/v2_compiler_eval.rs:850:121 + | +850 | ...me(witness_from_optional(v1_rt::lookup(&environment.bindings.clone(), key.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)"), e... + | --------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option<_>`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected enum `std::option::Option<_>` + found struct `Rc` +note: function defined here + --> src/v2_std_witness.rs:26:8 + | + 26 | pub fn witness_from_optional(opt: Option, absent: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^^^^^^ -------------- +help: try wrapping the expression in `Some` + | +850 | bind_outcome(eval_environment_binding_key_from_node(node.clone()), |key| eval_witness_outcome(witness_from_optional(Some(v1_rt::lookup(&environment.bindings.clone(), key.clone()).expect("fail-closed: an optional value flowed into non-optional parameter 0 of witness_from_optional (empty Optional at runtime)")), eval_diagnostic("eval_rejected_runtime_binding_lookup_miss".to_string(), symbol_atom_node(key.identity.clone()))))) + | +++++ + + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1192:83 + | +1192 | ...=> eval_value_node(node.clone(), dispatch.clone(), environment.clone(), args.clone(), facts.clone(), tree.clone(), r... + | ^^^^^^^^^^^^^^^ ---------------- ------------------- ------------ ------------- ------------ expected `Rc`, found `Rc` + | | | | | + | | | | expected `Rc`, found `Rc` + | | | expected `Rc`, found `Rc>>` + | | expected `Rc`, found `Rc` + | expected `Rc>>`, found `Rc` + | +note: function defined here + --> src/v2_compiler_eval.rs:1098:8 + | +1098 | pub fn eval_value_node(node: Rc, _args: Rc>>, _facts: Rc, _tre... + | ^^^^^^^^^^^^^^^ +help: reorder these arguments + | +1192 - RuntimeBehaviorInterpreter::ValueRuntimeInterpreter { interpreter: _, .. } => eval_value_node(node.clone(), dispatch.clone(), environment.clone(), args.clone(), facts.clone(), tree.clone(), runtime.clone()), +1192 + RuntimeBehaviorInterpreter::ValueRuntimeInterpreter { interpreter: _, .. } => eval_value_node(node.clone(), args.clone(), facts.clone(), tree.clone(), dispatch.clone(), environment.clone(), runtime.clone()), + | + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1193:87 + | +1193 | ...imeInterpreter { interpreter: _, .. } => eval_transform_node(node.clone(), args.clone(), tree.clone()... + | ^^^^^^^^^^^^^^^^^^^ + | +note: function defined here + --> src/v2_compiler_eval.rs:1105:8 + | +1105 | pub fn eval_transform_node(node: Rc, args: Rc>>, _facts: Rc, t... + | ^^^^^^^^^^^^^^^^^^^ +help: reorder these arguments + | +1193 - RuntimeBehaviorInterpreter::TransformRuntimeInterpreter { interpreter: _, .. } => eval_transform_node(node.clone(), args.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone(), facts.clone()), +1193 + RuntimeBehaviorInterpreter::TransformRuntimeInterpreter { interpreter: _, .. } => eval_transform_node(node.clone(), args.clone(), facts.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone()), + | + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1194:84 + | +1194 | RuntimeBehaviorInterpreter::BranchRuntimeInterpreter { interpreter: _, .. } => eval_branch_node(node... + | ^^^^^^^^^^^^^^^^ + | +note: function defined here + --> src/v2_compiler_eval.rs:1147:8 + | +1147 | pub fn eval_branch_node(node: Rc, _args: Rc>>, _facts: Rc, tre... + | ^^^^^^^^^^^^^^^^ +help: reorder these arguments + | +1194 - RuntimeBehaviorInterpreter::BranchRuntimeInterpreter { interpreter: _, .. } => eval_branch_node(node.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone(), args.clone(), facts.clone()), +1194 + RuntimeBehaviorInterpreter::BranchRuntimeInterpreter { interpreter: _, .. } => eval_branch_node(node.clone(), args.clone(), facts.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone()), + | + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1195:82 + | +1195 | RuntimeBehaviorInterpreter::LoopRuntimeInterpreter { interpreter: _, .. } => eval_loop_node(node.clo... + | ^^^^^^^^^^^^^^ + | +note: function defined here + --> src/v2_compiler_eval.rs:1151:8 + | +1151 | pub fn eval_loop_node(node: Rc, _args: Rc>>, _facts: Rc, _tree... + | ^^^^^^^^^^^^^^ +help: did you mean + | +1195 - RuntimeBehaviorInterpreter::LoopRuntimeInterpreter { interpreter: _, .. } => eval_loop_node(node.clone(), dispatch.clone(), environment.clone(), runtime.clone(), args.clone(), facts.clone(), tree.clone()), +1195 + RuntimeBehaviorInterpreter::LoopRuntimeInterpreter { interpreter: _, .. } => eval_loop_node(node.clone(), args.clone(), facts.clone(), tree.clone(), dispatch.clone(), environment.clone(), runtime.clone()), + | + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1196:82 + | +1196 | RuntimeBehaviorInterpreter::BindRuntimeInterpreter { interpreter: _, .. } => eval_bind_node(node.clo... + | ^^^^^^^^^^^^^^ + | +note: function defined here + --> src/v2_compiler_eval.rs:1169:8 + | +1169 | pub fn eval_bind_node(node: Rc, _args: Rc>>, _facts: Rc, tree:... + | ^^^^^^^^^^^^^^ +help: reorder these arguments + | +1196 - RuntimeBehaviorInterpreter::BindRuntimeInterpreter { interpreter: _, .. } => eval_bind_node(node.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone(), args.clone(), facts.clone()), +1196 + RuntimeBehaviorInterpreter::BindRuntimeInterpreter { interpreter: _, .. } => eval_bind_node(node.clone(), args.clone(), facts.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone()), + | + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1197:83 + | +1197 | RuntimeBehaviorInterpreter::MatchRuntimeInterpreter { interpreter: _, .. } => eval_match_node(node.c... + | ^^^^^^^^^^^^^^^ + | +note: function defined here + --> src/v2_compiler_eval.rs:1184:8 + | +1184 | pub fn eval_match_node(node: Rc, _args: Rc>>, _facts: Rc, tree... + | ^^^^^^^^^^^^^^^ +help: reorder these arguments + | +1197 - RuntimeBehaviorInterpreter::MatchRuntimeInterpreter { interpreter: _, .. } => eval_match_node(node.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone(), args.clone(), facts.clone()), +1197 + RuntimeBehaviorInterpreter::MatchRuntimeInterpreter { interpreter: _, .. } => eval_match_node(node.clone(), args.clone(), facts.clone(), tree.clone(), interpretation.clone(), dispatch.clone(), environment.clone(), runtime.clone(), effect_io.clone()), + | + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_eval.rs:1444:67 + | +1444 | NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => eval_loop_node(node.clone(), dispatch.... + | ^^^^^^^^^^^^^^ + | +note: function defined here + --> src/v2_compiler_eval.rs:1151:8 + | +1151 | pub fn eval_loop_node(node: Rc, _args: Rc>>, _facts: Rc, _tree... + | ^^^^^^^^^^^^^^ +help: did you mean + | +1444 - NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => eval_loop_node(node.clone(), dispatch.clone(), environment.clone(), runtime.clone(), empty_runtime_values(), facts.clone(), tree.clone()), +1444 + NodeKind::ComputationNode { behavior: Behavior::Loop, .. } => eval_loop_node(node.clone(), empty_runtime_values(), facts.clone(), tree.clone(), dispatch.clone(), environment.clone(), runtime.clone()), + | + +error[E0071]: expected struct, variant or union type, found `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1666:12 + | +1666 | value: TranslateFoldAcc { + | ^^^^^^^^^^^^^^^^ not a struct + +error[E0071]: expected struct, variant or union type, found `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1681:12 + | +1681 | value: TranslateFoldAcc { + | ^^^^^^^^^^^^^^^^ not a struct + +error[E0609]: no field `rebuilt` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1696:16 + | +1696 | value: acc.rebuilt.clone(), + | ^^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0609]: no field `source` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1925:185 + | +1925 | ...ved_child_gate(tree.clone(), parent_acc.source.clone(), child_acc.source.clone()), |_| Rc::new(Outcom... + | ^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0609]: no field `source` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1925:211 + | +1925 | ...), parent_acc.source.clone(), child_acc.source.clone()), |_| Rc::new(Outcome::Accepted { + | ^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0071]: expected struct, variant or union type, found `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1926:12 + | +1926 | value: TranslateFoldAcc { + | ^^^^^^^^^^^^^^^^ not a struct + +error[E0609]: no field `source` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1927:24 + | +1927 | source: parent_acc.source.clone(), + | ^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0609]: no field `rebuilt` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1928:38 + | +1928 | rebuilt: node_rebuild(parent_acc.rebuilt.clone(), list_snoc_item(parent_acc.rebuilt.clone().children... + | ^^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0609]: no field `rebuilt` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1928:81 + | +1928 | rebuilt: node_rebuild(parent_acc.rebuilt.clone(), list_snoc_item(parent_acc.rebuilt.clone().children... + | ^^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0609]: no field `rebuilt` on type `(Rc, Rc)` + --> src/v2_compiler_translate.rs:1930:23 + | +1930 | target: child_acc.rebuilt.clone(), + | ^^^^^^^ unknown field + | + = note: available fields are: `0`, `1` + +error[E0308]: mismatched types + --> src/v2_compiler_source_authority.rs:698:97 + | +698 | ... .. } => outcome_rejected(source_ref_read_failed_diagnostic(ref_.clone(), error.clone())), + | ---------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc` + found struct `Rc` +note: function defined here + --> src/v2_std_diagnostic.rs:179:8 + | +179 | pub fn outcome_rejected(d: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^ ----------------- + +error[E0308]: mismatched types + --> src/v2_compiler_source_authority.rs:699:95 + | +699 | ...=> outcome_rejected(source_ref_content_hash_mismatch_diagnostic(ref_.clone(), observed.clone())), + | ---------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc` + found struct `Rc` +note: function defined here + --> src/v2_std_diagnostic.rs:179:8 + | +179 | pub fn outcome_rejected(d: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^ ----------------- + +error[E0308]: mismatched types + --> src/v2_compiler_source_authority.rs:732:13 + | +732 | result: failed.clone(), + | ^^^^^^^^^^^^^^ expected `Rc`, found `SourceRefReadResult` + | + = note: expected struct `Rc` + found enum `SourceRefReadResult` +help: call `Into::into` on this expression to convert `SourceRefReadResult` into `Rc` + | +732 | result: failed.clone().into(), + | +++++++ + +error[E0308]: mismatched types + --> src/v2_compiler_source_authority.rs:751:50 + | +751 | ...=> outcome_rejected(source_ref_read_failed_diagnostic(source_ref_for_storage_path("source-root-ingest-build-impossible".to_string()), "internal: read-through accepted without ingest row".to_string())), + | ---------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc`, found `Rc` + | | + | arguments to this function are incorrect + | + = note: expected struct `Rc` + found struct `Rc` +note: function defined here + --> src/v2_std_diagnostic.rs:179:8 + | +179 | pub fn outcome_rejected(d: Rc) -> Rc> { + | ^^^^^^^^^^^^^^^^ ----------------- + +error[E0308]: arguments to this function are incorrect + --> src/v2_compiler_source_authority.rs:1331:8 + | +1331 | if source_authority_node_equal(original.tree.clone(), reparsed.tree.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: expected `Rc`, found `Rc` + --> src/v2_compiler_source_authority.rs:1331:36 + | +1331 | if source_authority_node_equal(original.tree.clone(), reparsed.tree.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^ + = note: expected struct `Rc` + found struct `Rc` +note: expected `Rc`, found `Rc` + --> src/v2_compiler_source_authority.rs:1331:59 + | +1331 | if source_authority_node_equal(original.tree.clone(), reparsed.tree.clone()) { + | ^^^^^^^^^^^^^^^^^^^^^ + = note: expected struct `Rc` + found struct `Rc` +note: function defined here + --> src/v2_compiler_source_authority.rs:1311:8 + | +1311 | pub fn source_authority_node_equal(left: Rc, right: Rc) -> bool { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------------- --------------- + +error[E0277]: `(dyn Fn(Rc) -> Rc>>>> + 'static)` doesn't implement `Debug` + --> src/v2_compiler_compile.rs:93:5 + | +91 | #[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)] + | ----- in this derive macro expansion +92 | pub struct CompileLens { +93 | pub gate: CompileLensGate, + | ^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound + | + = help: the trait `Debug` is not implemented for `(dyn Fn(Rc) -> Rc>>>> + 'static)` + +error[E0369]: binary operation `==` cannot be applied to type `Rc) -> Rc>>>>>` + --> src/v2_compiler_compile.rs:93:5 + | +91 | #[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)] + | --------- in this derive macro expansion +92 | pub struct CompileLens { +93 | pub gate: CompileLensGate, + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + +error[E0277]: the trait bound `dyn Fn(Rc) -> Rc>>>>: serde::Serialize` is not satisfied + --> src/v2_compiler_compile.rs:91:35 + | + 91 | #[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)] + | ^^^^^^^^^^^^^^^^ the trait `Serialize` is not implemented for `dyn Fn(Rc) -> Rc>>>>` + 92 | pub struct CompileLens { + 93 | pub gate: CompileLensGate, + | --- required by a bound introduced by this call + | + = note: for local types consider adding `#[derive(serde::Serialize)]` to your `dyn Fn(Rc) -> Rc>>>>` type + = note: for types from other crates check whether the crate offers a `serde` feature flag + = note: required for `Rc) -> Rc>>>>>` to implement `Serialize` +note: required by a bound in `std_constructors::_::_serde::ser::SerializeStruct::serialize_field` + --> /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.229/src/ser/mod.rs:1917:21 + | +1915 | fn serialize_field(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error> + | --------------- required by a bound in this associated function +1916 | where +1917 | T: ?Sized + Serialize; + | ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field` + = note: this error originates in the derive macro `serde::Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0277]: the trait bound `(dyn Fn(Rc) -> Rc>>>> + 'static): serde::Deserialize<'de>` is not satisfied + --> src/v2_compiler_compile.rs:93:15 + | + 93 | pub gate: CompileLensGate, + | ^^^^^^^^^^^^^^^ unsatisfied trait bound + | + = help: the trait `Deserialize<'_>` is not implemented for `(dyn Fn(Rc) -> Rc>>>> + 'static)` + = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `(dyn Fn(Rc) -> Rc>>>> + 'static)` type + = note: for types from other crates check whether the crate offers a `serde` feature flag + = note: required for `Box) -> Rc>>>` to implement `Deserialize<'_>` + = note: 1 redundant requirement hidden + = note: required for `Rc) -> Rc>>>` to implement `Deserialize<'_>` +note: required by a bound in `next_element` + --> /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.229/src/de/mod.rs:1771:12 + | +1769 | fn next_element(&mut self) -> Result, Self::Error> + | ------------ required by a bound in this associated function +1770 | where +1771 | T: Deserialize<'de>, + | ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element` + = note: the full name for the type has been written to '/tmp/cssl-probe.xPqvk8/target/release/deps/v1_compiled-f7e78b84bd93032c.long-type-5441287763026653127.txt' + = note: consider using `--verbose` to print the full type name to the console + +error[E0277]: the trait bound `(dyn Fn(Rc) -> Rc>>>> + 'static): serde::Deserialize<'de>` is not satisfied + --> src/v2_compiler_compile.rs:93:15 + | + 93 | pub gate: CompileLensGate, + | ^^^^^^^^^^^^^^^ unsatisfied trait bound + | + = help: the trait `Deserialize<'_>` is not implemented for `(dyn Fn(Rc) -> Rc>>>> + 'static)` + = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `(dyn Fn(Rc) -> Rc>>>> + 'static)` type + = note: for types from other crates check whether the crate offers a `serde` feature flag + = note: required for `Box) -> Rc>>>` to implement `Deserialize<'_>` + = note: 1 redundant requirement hidden + = note: required for `Rc) -> Rc>>>` to implement `Deserialize<'_>` +note: required by a bound in `next_value` + --> /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.229/src/de/mod.rs:1916:12 + | +1914 | fn next_value(&mut self) -> Result + | ---------- required by a bound in this associated function +1915 | where +1916 | V: Deserialize<'de>, + | ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value` + = note: the full name for the type has been written to '/tmp/cssl-probe.xPqvk8/target/release/deps/v1_compiled-f7e78b84bd93032c.long-type-5441287763026653127.txt' + = note: consider using `--verbose` to print the full type name to the console + +error[E0277]: the trait bound `dyn Fn(Rc) -> Rc>>>>: serde::Deserialize<'de>` is not satisfied + --> src/v2_compiler_compile.rs:91:53 + | +91 | #[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)] + | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound + | + = help: the trait `Deserialize<'_>` is not implemented for `dyn Fn(Rc) -> Rc>>>>` + = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `dyn Fn(Rc) -> Rc>>>>` type + = note: for types from other crates check whether the crate offers a `serde` feature flag + = note: required for `Box) -> Rc>>>>>` to implement `Deserialize<'_>` + = note: 1 redundant requirement hidden + = note: required for `Rc) -> Rc>>>>>` to implement `Deserialize<'_>` +note: required by a bound in `std_constructors::_::_serde::__private229::de::missing_field` + --> /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.229/src/private/de.rs:26:8 + | +24 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result + | ------------- required by a bound in this function +25 | where +26 | V: Deserialize<'de>, + | ^^^^^^^^^^^^^^^^ required by this bound in `missing_field` + = note: this error originates in the derive macro `serde::Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) + +error[E0308]: mismatched types + --> src/v2_compiler_compile.rs:283:82 + | +283 | Outcome::Rejected { diagnostics: d, .. } => outcome_with_diagnostics(Rc::new(Witness::>`, found `Witness>>>>` + | + = note: expected enum `Witness>` + found enum `Witness>>>>>` +note: associated function defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 + +error[E0614]: type `std::option::Option` cannot be dereferenced + --> src/v2_compiler_ingest.rs:51:11 + | +51 | match (*v1_rt::map_get(&binding_to_class, atom_identity.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't be dereferenced + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer.rs:718:84 + | +718 | Outcome::Accepted { value: decoded_container, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +724 ~ }, +725 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer.rs:720:84 + | +720 | Outcome::Accepted { value: decoded_contained, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +721 ~ None => integer_interval_spec_contains_decoded_node(integer_standard_integer_type_interval_spec(decoded_container.clone()), decoded_contained.clone()), +722 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer_value_set.rs:106:77 + | +106 | Outcome::Accepted { value: found_kind, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +157 ~ }, +158 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer_value_set.rs:110:58 + | +110 | Outcome::Accepted { ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +113 ~ }), +114 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer_value_set.rs:129:75 + | +129 | Outcome::Accepted { value: interval, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +141 ~ }, +142 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer_value_set.rs:178:84 + | +178 | Outcome::Accepted { value: decoded_container, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +184 ~ }, +185 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_integer_value_set.rs:180:84 + | +180 | Outcome::Accepted { value: decoded_contained, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +181 ~ None => integer_value_set_contains_decoded(decoded_container.clone(), decoded_contained.clone()), +182 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:78:83 + | +78 | Outcome::Accepted { value: source_value_set, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +84 ~ }, +85 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:80:86 + | +80 | Outcome::Accepted { value: candidate_value_set, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +81 ~ None => integer_value_set_strictly_contains(candidate_value_set.clone(), source_value_set.clone()), +82 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:92:83 + | +92 | Outcome::Accepted { value: source_value_set, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +98 ~ }, +99 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:94:86 + | +94 | Outcome::Accepted { value: candidate_value_set, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +95 ~ None => integer_value_set_strictly_contains(source_value_set.clone(), candidate_value_set.clone()), +96 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:106:81 + | +106 | Outcome::Accepted { value: bundled_source, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +117 ~ }, +118 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:108:84 + | +108 | Outcome::Accepted { value: bundled_candidate, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +114 ~ }, +115 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_std_refinement_widening_predicate.rs:110:87 + | +110 | Outcome::Accepted { value: bundled_source_facts, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +111 ~ None => (((((bundled_source.clone() == source_facts.clone()) && (bundled_candidate.clone() == candidate.clone())) && (bundled_source_facts.clone() == source_facts.clone())) && (source_facts.clone() != candidate.clone())) && refinement_widening_value_sets_hold(algebra.clone())), +112 ~ &Some(_) => todo!(), + | + +error[E0004]: non-exhaustive patterns: `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowPositionalWire, .. }` and `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowLabeledWire, .. }` not covered + --> src/v2_std_compilers_target_model.rs:5546:54 + | +5546 | ...prArrow => match (*target_type_expr_arrow_wire_shape(node.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ patterns `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowPositionalWire, .. }` and `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowLabeledWire, .. }` not covered + | +note: `Outcome` defined here + --> src/v2_std_diagnostic.rs:104:10 + | + 104 | pub enum Outcome { + | ^^^^^^^ + 105 | Accepted { + | -------- not covered + = note: the matched value is of type `Outcome` + = note: match arms with guards don't count towards exhaustivity +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern, a match arm with multiple or-patterns as shown, or multiple match arms + | +5554 ~ }), +5555 ~ Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowPositionalWire, .. } | Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowLabeledWire, .. } => todo!(), + | + +error[E0004]: non-exhaustive patterns: `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowPositionalWire, .. }` and `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowLabeledWire, .. }` not covered + --> src/v2_std_compilers_target_model.rs:5629:54 + | +5629 | ...prArrow => match (*target_type_expr_arrow_wire_shape(node.clone())).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ patterns `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowPositionalWire, .. }` and `Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowLabeledWire, .. }` not covered + | +note: `Outcome` defined here + --> src/v2_std_diagnostic.rs:104:10 + | + 104 | pub enum Outcome { + | ^^^^^^^ + 105 | Accepted { + | -------- not covered + = note: the matched value is of type `Outcome` + = note: match arms with guards don't count towards exhaustivity +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern, a match arm with multiple or-patterns as shown, or multiple match arms + | +5634 ~ }), +5635 ~ Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowPositionalWire, .. } | Outcome::Accepted { value: TargetTypeExprArrowWireShape::TargetTypeExprArrowLabeledWire, .. } => todo!(), + | + +error[E0004]: non-exhaustive patterns: `Edge { .. }` not covered + --> src/v2_std_compilers_target_model.rs:7785:19 + | +7785 | None => match (*edge.clone()).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^ pattern `Edge { .. }` not covered + | +note: `Edge` defined here + --> src/v2_std_node.rs:247:12 + | + 247 | pub struct Edge { + | ^^^^ + = note: the matched value is of type `Edge` + = note: match arms with guards don't count towards exhaustivity +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +7791 ~ Edge { ref label, .. } if matches!(label.as_ref(), EdgeLabel::Positional) => { let EdgeLabel::Positional = label.as_ref() else { unreachable!() }; optional_absent() }, +7792 ~ Edge { .. } => todo!(), + | + +error[E0004]: non-exhaustive patterns: `&RebuildEmittedResult::RebuildEmittedFail` not covered + --> src/v2_std_grammar.rs:1818:49 + | +1818 | Witness::Holds { ref value, .. } => { match value.as_ref() { + | ^^^^^^^^^^^^^^ pattern `&RebuildEmittedResult::RebuildEmittedFail` not covered + | +note: `RebuildEmittedResult` defined here + --> src/v2_std_grammar.rs:1656:10 + | +1656 | pub enum RebuildEmittedResult { + | ^^^^^^^^^^^^^^^^^^^^ +... +1661 | RebuildEmittedFail, + | ------------------ not covered + = note: the matched value is of type `&RebuildEmittedResult` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +1826 ~ }, +1827 ~ &RebuildEmittedResult::RebuildEmittedFail => todo!(), + | + +error[E0004]: non-exhaustive patterns: `Outcome::Accepted { .. }` not covered + --> src/v2_std_host_run.rs:58:11 + | + 58 | match (*exit.outcome.clone()).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ pattern `Outcome::Accepted { .. }` not covered + | +note: `Outcome>>` defined here + --> src/v2_std_diagnostic.rs:104:10 + | +104 | pub enum Outcome { + | ^^^^^^^ +105 | Accepted { + | -------- not covered + = note: the matched value is of type `Outcome>>` + = note: match arms with guards don't count towards exhaustivity +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | + 72 ~ }), + 73 ~ Outcome::Accepted { .. } => todo!(), + | + +error[E0004]: non-exhaustive patterns: `Edge { .. }` not covered + --> src/v2_extdeps_languages_dag.rs:1896:11 + | +1896 | match (*edge.clone()).clone() { + | ^^^^^^^^^^^^^^^^^^^^^^^ pattern `Edge { .. }` not covered + | +note: `Edge` defined here + --> src/v2_std_node.rs:247:12 + | + 247 | pub struct Edge { + | ^^^^ + = note: the matched value is of type `Edge` + = note: match arms with guards don't count towards exhaustivity +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +1902 ~ Edge { ref label, .. } if matches!(label.as_ref(), EdgeLabel::Positional) => { let EdgeLabel::Positional = label.as_ref() else { unreachable!() }; optional_absent() }, +1903 ~ Edge { .. } => todo!(), + | + +error[E0310]: the parameter type `Subj` may not live long enough + --> src/v2_std_verdict.rs:123:9 + | +123 | op: Rc::new(verdict_combine), + | ^^^^^^^^^^^^^^^^^^^^^^^^ + | | + | the parameter type `Subj` must be valid for the static lifetime... + | ...so that the type `Subj` will meet its required lifetime bounds + | +help: consider adding an explicit lifetime bound + | +121 | pub fn verdict_monoid() -> Rc>>> { + | +++++++++ + +error[E0310]: the parameter type `T` may not live long enough + --> src/v2_std_verdict.rs:123:9 + | +123 | op: Rc::new(verdict_combine), + | ^^^^^^^^^^^^^^^^^^^^^^^^ + | | + | the parameter type `T` must be valid for the static lifetime... + | ...so that the type `T` will meet its required lifetime bounds + | +help: consider adding an explicit lifetime bound + | +121 | pub fn verdict_monoid() -> Rc>>> { + | +++++++++ + +error[E0004]: non-exhaustive patterns: `&Some(_)` not covered + --> src/v2_compiler_eval.rs:1039:68 + | +1039 | Outcome::Accepted { value: v, ref diagnostics, .. } => { match diagnostics.as_ref() { + | ^^^^^^^^^^^^^^^^^^^^ pattern `&Some(_)` not covered + | +note: `std::option::Option>` defined here + --> /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:597:0 + ::: /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/core/src/option.rs:605:4 + | + = note: not covered + = note: the matched value is of type `&std::option::Option>` +help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown + | +1046 ~ }), +1047 ~ &Some(_) => todo!(), + | + +Some errors have detailed explanations: E0004, E0061, E0071, E0223, E0277, E0282, E0308, E0310, E0369... +For more information about an error, try `rustc --explain E0004`. +error: could not compile `v1_compiled` (lib) due to 329 previous errors +warning: build failed, waiting for other jobs to finish... diff --git a/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv b/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv new file mode 100644 index 00000000000..5be3f9a7ff0 --- /dev/null +++ b/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv @@ -0,0 +1,155 @@ +file line col expected found delta root reason callee callee_kind block_msg +src/v2_extdeps_languages_fidelity.rs 27 79 Feature &Feature generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_extdeps_languages_fidelity.rs 27 79 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 125 116 Rc Edge rc_depth R1 rc_wrap_only src/v2_lens_complexity_accumulator_copy_analyze.rs:99:8 function defined here mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 275 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 284 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 298 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 309 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 485 80 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 479 72 Rc>> Rc> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 696 15 Rc> Rc>> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_lowering.rs 48 13 Vector<()> Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_lowering.rs 60 104 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types +src/v2_lens_complexity_lowering.rs 68 107 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types +src/v2_lens_coverage.rs 52 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 63 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 74 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 85 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 96 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 107 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 118 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 129 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 140 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 151 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 162 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 173 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 184 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 214 181 () Rc> rc_depth+nominal C carrier_collapses_to_unit /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/im-15.1.0/src/vector/mod.rs:1366:12 method defined here mismatched types +src/v2_lens_enforcement_standing_intent.rs 215 32 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_enforcement_standing_intent.rs 246 32 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_std_artifact.rs 84 14 Rc>> Refined> rc_depth R1 rc_wrap_only mismatched types +src/v2_std_artifact.rs 84 14 Rc> Refined<_> rc_depth R1 rc_wrap_only mismatched types +src/v2_std_passing_candidate_fold.rs 34 83 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_passing_candidate_fold.rs 34 83 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/std_checked_arithmetic.rs 305 12 Rc i64 rc_depth R1 rc_wrap_only mismatched types +src/v2_std_algebra.rs 152 63 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_algebra.rs 152 63 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_logic.rs 53 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 54 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 57 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 58 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 61 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 62 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/std_measure.rs 488 18 Rc i64 rc_depth R1 rc_wrap_only mismatched types +src/v2_std_staging.rs 31 53 B &B generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_staging.rs 31 53 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_text.rs 65 59 i64 Box nominal BOX-WRAP box_wrap_only mismatched types +src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_schedule.rs 83 19 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:214:8 function defined here mismatched types +src/std_state_durability.rs 152 65 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types +src/std_state_durability.rs 163 70 Rc Rc>> nominal+container ELEM-COLL element_vs_its_own_collection src/v1_rt.rs:379:8 function defined here mismatched types +src/std_state_durability.rs 291 152 StateDefinitionCallerAssertion Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types +src/std_state_durability.rs 636 59 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types +src/std_state_durability.rs 878 59 Rc> Rc>>> nominal+container RESIDUE unclassified_pair: Rc> | Rc>>> src/v1_rt.rs:379:8 function defined here mismatched types +src/v2_std_collection.rs 93 13 HashMap Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_fold_assembly.rs 258 38 Rc>>>>>> Rc>>>> generic_arg R1 rc_wrap_at_type_argument_depth `match` arms have incompatible types +src/std_cache_interface.rs 638 12 Option None nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_cache_interface.rs 667 23 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:961:8 function defined here mismatched types +src/std_cache_interface.rs 667 23 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:961:8 function defined here mismatched types +src/std_cache_interface.rs 695 5 String Option nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 699 5 String Option nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 703 5 Rc Option> rc_depth+nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 703 5 Rc<_> Option> rc_depth+nominal+optionality R2 optional_surface_fork mismatched types +src/std_realization_measurement.rs 96 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_measurement.rs 96 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_reconcile.rs 85 65 A &A generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/std_realization_reconcile.rs 85 65 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_model_core.rs 189 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_node_query.rs 150 104 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_node_query.rs 150 104 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_provenance.rs 79 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_std_provenance.rs 79 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_lens_determinism.rs 135 42 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_lens_determinism.rs:128:8 function defined here arguments to this function are incorrect +src/v2_lens_determinism.rs 161 64 Witness> Witness generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_cardinality.rs 581 42 Rc>> Rc nominal W witness_type_argument src/v2_std_cardinality.rs:566:8 function defined here arguments to this function are incorrect +src/v2_std_compilers_lexing.rs 235 13 Vector> Rc>> rc_depth+container R1 rc_wrap_only /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_integer.rs 1359 26 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1362 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1365 34 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1368 38 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1371 42 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1374 46 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1377 50 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1380 54 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1383 58 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1400 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_extdeps_runtimes_v2_effect_io_pure.rs 118 23 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_compilers_target_model.rs 2137 43 i64 String nominal RESIDUE unclassified_pair: i64 | String src/v2_std_compilers_target_model.rs:2126:8 function defined here mismatched types +src/v2_std_compilers_target_model.rs 2384 15 String i64 nominal RESIDUE unclassified_pair: String | i64 mismatched types +src/v2_std_compilers_target_model.rs 2647 62 HashMap<_, _> Rc> rc_depth+container R1 rc_wrap_only src/v2_std_algebra.rs:64:8 function defined here mismatched types +src/v2_std_compilers_target_model.rs 7002 90 TargetUseSiteOwnershipLookup TargetUseSiteOwnershipCatalogLookup nominal RESIDUE unclassified_pair: TargetUseSiteOwnershipLookup | TargetUseSiteOwnershipCatalogLookup /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_target_carriers.rs 105 64 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_diagnostic.rs:172:8 function defined here mismatched types +src/v2_compiler_target_carriers.rs 105 64 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_diagnostic.rs:172:8 function defined here mismatched types +src/v2_std_grammar.rs 1285 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types +src/v2_std_grammar.rs 1363 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types +src/v2_std_grammar.rs 1365 12 () Rc>> rc_depth+nominal+container C carrier_collapses_to_unit mismatched types +src/v2_std_grammar.rs 1364 21 Witness>>> Witness<()> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_languages_llvm_ir.rs 1099 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_languages_llvm_ir.rs 1123 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_language_model.rs 44 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3055 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3055 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3100 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3100 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3145 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3145 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_lens_cost.rs 312 123 Rc Nat rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_cost.rs 315 123 Rc Nat rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_parse.rs 414 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_parse.rs 414 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_parse.rs 571 27 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_parse.rs 1033 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_parse.rs 1095 53 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_runtimes_v2_evaluator.rs 160 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_runtimes_v2_evaluator.rs 332 5 Rc Edge rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_machine_shape.rs 190 5 Rc MachineShapeWalkResult rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth `match` arms have incompatible types +src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth `match` arms have incompatible types +src/v2_compiler_resolve.rs 145 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 164 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 378 63 Witness> Witness generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 513 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 522 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_infer.rs 522 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_name_resolve.rs 493 5 Rc AdmitExportsFold rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_eval.rs 642 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 662 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_eval.rs 662 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_eval.rs 734 56 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 742 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 752 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 761 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 850 121 Option<_> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc Rc>> nominal+container ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc>> Rc nominal+container ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1193 87 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1105:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1194 84 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1147:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1195 82 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1151:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1196 82 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1169:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1197 83 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1184:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1444 67 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1151:8 function defined here arguments to this function are incorrect +src/v2_compiler_source_authority.rs 698 97 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types +src/v2_compiler_source_authority.rs 699 95 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types +src/v2_compiler_source_authority.rs 732 13 Rc SourceRefReadResult rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_source_authority.rs 751 50 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types +src/v2_compiler_source_authority.rs 1331 8 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_compiler_source_authority.rs:1311:8 function defined here arguments to this function are incorrect +src/v2_compiler_compile.rs 283 82 Witness> Witness>>>>> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types diff --git a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md new file mode 100644 index 00000000000..8b4c1ed8434 --- /dev/null +++ b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md @@ -0,0 +1,51 @@ +# E0308 repartition on current main (mechanism grain, M=1) + +| field | value | +|---|---| +| git_sha | `967b5bc1b92ee66250e06a7870c132b48a16b80a` (requested `967b5bc1b92`; echoed from inside the remote dispatch and pinned by `PROBE_EXPECT_BASE_SHA`) | +| entry | `src/v2/compiler/03_ingest.dag` (M=1) | +| producer | `curated_cargo_probe_one+emit+seedlink+cargo`, `CSSL_STD_SEED_LINK=1`, shim `""` | +| emitted roster | 177 files, 503 emit diagnostics (same roster count as the 2026-08-21 run — same subject) | +| raw E0308 blocks | **128** (40.5% of 316 coded rows; `CARGO_ERROR_TOTAL=329`, `HISTOGRAM_SUM=330`) | +| canonical sites | **154** | +| clusters | 13 + residue | +| unclassified residue | **6 (3.9%)**, printed in full; residue arm known-positive | +| classifier | `docs/probes/e0308_classify_sites.py` (committed; re-runnable over the published raw log) | + +## Clusters (site grain, this subject only) — every one a CANDIDATE root + +| cluster | sites | % | +|---|---:|---:| +| R1 bare↔`Rc` wrap (17 outer / 14 type-argument depth / 6 element) | 39 | 25.3% | +| R2 Optional surface fork | 22 | 14.3% | +| T3 collection carrier fork | 14 | 9.1% | +| D alias arity / generic argument count | 13 | 8.4% | +| A-clone generic `Clone` bound absent | 12 | 7.8% | +| ARG-ORDER call argument order | 11 | 7.1% | +| B3 modeled `Nat` vs native integer | 10 | 6.5% | +| W `Witness<_>` type argument | 9 | 5.8% | +| B2 `Bool` vs `bool`/variant | 6 | 3.9% | +| RESIDUE | 6 | 3.9% | +| C carrier collapses to `()` | 4 | 2.6% | +| ELEM-COLL element vs its own collection (**NEW**) | 4 | 2.6% | +| DIAG diagnostic carrier fork | 3 | 1.9% | +| BOX-WRAP `Box` wrap decision (**NEW**) | 1 | 0.6% | + +## Prior-root dispositions + +- **StillLive:** R1, R2, T3, D, A-clone, ARG-ORDER, B3, W, B2, C, DIAG (D, ARG-ORDER and B2 are + count-for-count identical, same file, same pairs). +- **Removed:** R5 (`OccurrenceId`/`NodeOccurrenceId`) — zero occurrences anywhere in the TSV. +- **Converted out of E0308:** RT-builtin — `v1_rt::lookup` went generic in gunbc#8792; the callee + now shows up in 17 `E0061` blocks instead. +- **Unjoinable (masked, NOT closed):** T2 (34→0) and most of B3 (49→10). Their file, + `v2_compiler_tokenize.rs`, now fails at `E0599` before inference reaches those expressions. +- **New:** ELEM-COLL (4), BOX-WRAP (1). + +## Cost shape + +Four clusters cover 57% of sites; six more are single-file and cover another 45. Tail = 6 residue +sites in 4 files. This is a small number of producer decisions with wide fanout, not a site-by-site +tail — the same shape the 2026-08-21 board reported on a different population. + +Receipt: [`e0308_partition_2026-08-22.md`](../e0308_partition_2026-08-22.md). From d770f389c6b6db8b91a4176c3d6e4768b9af8533 Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 08:33:43 +0000 Subject: [PATCH 2/7] Record the resolved cause of the 182 (465-board at a different ref, withdrawn) and state the masking's forward consequence MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The brief's E0308=182 was traced by its author to the 465-board at 4ce1774912 and withdrawn together with every claim derived from it; the receipt now records that rather than leaving it as an unreconciled disagreement, and states the author's monotone retained series that this run's 128 continues. Also makes the tokenize masking's forward consequence explicit: fixing that E0599 will make ~68 E0308 sites APPEAR, which reads as a large regression and is not one — a blocking error aborts the pipeline before the phase that would report them, so any source carrying one publishes a silently truncated diagnostic set. Co-Authored-By: Claude Opus 5 --- docs/probes/e0308_partition_2026-08-22.md | 46 +++++++++++++------ .../summary_stamp.md | 7 +++ 2 files changed, 40 insertions(+), 13 deletions(-) diff --git a/docs/probes/e0308_partition_2026-08-22.md b/docs/probes/e0308_partition_2026-08-22.md index 2ddda4ca1e9..af6a2bdc636 100644 --- a/docs/probes/e0308_partition_2026-08-22.md +++ b/docs/probes/e0308_partition_2026-08-22.md @@ -39,16 +39,32 @@ CARGO_ERROR_TOTAL=329 HISTOGRAM_SUM=330 E0308 = **128 / 316 coded rows = 40.5%** (329 is cargo's own error total, a different instrument; the two are published together and never differenced — see the probe's `WHY 10 AND 11` note). -### The brief's board does not reproduce, and that is a finding, not a nuisance - -The brief states 315 rustc errors with E0308 = **182** on this exact sha under the coded-raw -convention. At that sha, with the prior partition's exact producer and contract, this run measures -316 coded rows with E0308 = **128**. The totals agree to within one row; the E0308 share does not. -Two corroborations say the instrument here is not simply wrong: the brief reports **T2 now zero** -and **T3 currently 14**, and this run independently measures T2 = 0 and T3 = 14. The 54-row gap -is therefore in the E0308 counting convention or in a differing invocation (shim, entry, or M), -not in the tree. **The 182 is not used anywhere below**, and no number here is differenced against -it. +### The brief's board did not reproduce, and the cause is now known: it was a different tree + +The brief stated 315 rustc errors with E0308 = **182** on this exact sha. At that sha, with the +prior partition's exact producer and contract, this run measures 316 coded rows with E0308 = +**128**. The totals agree to within one row; the E0308 share did not. Two corroborations said the +instrument here was not simply wrong: the brief reported **T2 now zero** and **T3 currently 14**, +and this run independently measured T2 = 0 and T3 = 14. + +**Resolved by `smart-ram-730` (2026-08-22): the 182 came from a different tree.** Its run echoed +`4ce177491202217a1a1520b413a62b7c7dfe9f71` with a coded total of **465** — the 465-board. An E0308 +component was lifted from that histogram and published beside a current total, so the pair +described two trees. The author's own retained boards form a monotone series that this run +continues: + +| board | ref | E0308 | +|---|---|---:| +| 465-board | `4ce1774912` | 182 | +| 399-board | `ba63edc09b` | 174 | +| 339-board | `629252b6df` | 135 | +| 315-board | `967b5bc1b9` | **128** ← this run | + +The 182 and every claim derived from it are **withdrawn by their author** — including "E0308 is +58% of the board", "nothing else is above 15%", and the accompanying histogram (E0599 41, E0277 +38, E0004 31, E0597 27, E0425 23, E0609 19, E0560 17, E0061 17), all of which are 465-era. **The +182 is used nowhere in this document and nothing here is differenced against it**; it is recorded +only because the brief that commissioned this run carried it as framing. ## Raw rows → canonical sites @@ -167,7 +183,11 @@ mechanical cause are safe to read as population change. | — | — | 4 | **New mechanism: ELEM-COLL** | an element passed where its own collection is expected (`StateDurabilityBoundary` vs `Vector>`), all in `std_state_durability.rs`. Mechanically distinct from D (no alias, no arity change) and from T3 (one carrier, not two forked carriers), so it gets its own arm rather than the nearest familiar one. | | — | — | 1 | **New mechanism: BOX-WRAP** | `i64` vs `Box`. Named separately from R1 because the wrapper is a different one: a wrap-decision fix keyed on `Rc` would not reach it. | -**The tokenize masking is the most consequential row in this table.** The two largest roots of the +**The tokenize masking is the most consequential row in this table, and it has a forward +consequence for anyone reading a burn-down: fixing that `E0599` will make ~68 E0308 sites APPEAR. +That will read as a large regression and it is not one — those sites exist today and are simply +unobservable, because a blocking error aborts the pipeline before the phase that would report +them, so any source carrying one publishes a silently truncated diagnostic set.** The two largest roots of the 2026-08-21 board read as −73 sites, and none of that is evidence of repair. Any burn-down ranking built from this board without that caveat will under-rank the `Nat`/text realization seam by the width of one file. @@ -217,8 +237,8 @@ the population is different. because the prior partition had no committed classifier. - **M=1.** These are `03_ingest`'s closure. Per-module boards are overlapping closures and may not be summed with another module's. -- **The brief's 182 is not reconciled**, only reported as unreproduced with its two corroborating - agreements (T2=0, T3=14) stated beside it. +- **The brief's 182 is not a comparison point.** It was traced to the 465-board at a different + ref and withdrawn by its author; nothing here is differenced against it. - **No emitter decision was traced.** Cluster names come from pair plus callee evidence; no authored-decision count is offered. diff --git a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md index 8b4c1ed8434..a80fe085429 100644 --- a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md +++ b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md @@ -48,4 +48,11 @@ Four clusters cover 57% of sites; six more are single-file and cover another 45. sites in 4 files. This is a small number of producer decisions with wide fanout, not a site-by-site tail — the same shape the 2026-08-21 board reported on a different population. +## The 182 in the commissioning brief + +Traced to the **465-board** at `4ce177491202217a1a1520b413a62b7c7dfe9f71` and withdrawn by its +author, along with the accompanying 465-era histogram. Its retained series — 465-board 182, +399-board 174, 339-board 135 — is monotone and this run's 128 is its next point. Nothing here is +differenced against it. + Receipt: [`e0308_partition_2026-08-22.md`](../e0308_partition_2026-08-22.md). From 246de31da95e4e315ea2c71c0e42a921e357529b Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 10:34:47 +0000 Subject: [PATCH 3/7] The partition summed to 154 and was still keyed inconsistently: declare the precedence, fix the R1 rule, repartition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two reviewers (royal-dove-436, smart-ram-730) ran the R1 rule in the direction I had not — which NON-R1 sites pass it — and found the general mechanism under it. The arms use three keying schemes (delta, carrier, context) and every carrier arm sat above every delta arm, so the carrier won every collision by source order. The partition still summed to exactly 154, which is precisely the check that cannot see a keying inconsistency. Ruling, now declared in the classifier rather than emergent: 1. an exact delta test outranks a carrier test — if erasing Rc from both sides makes them equal, the sides AGREE about the carrier, so R1 is hoisted; 2. a carrier arm keys on the carrier AT THE DIFFERENCE, not at the head — Outcome>> vs Outcome> is an Option presence one level down, and head-only tests could not see it; 3. W is context-keyed and sits below the carrier arms. Also fixes the R1 rule defect that started this: the old arm fired whenever the substring `Rc<` occurred anywhere on either side, which is not evidence that the DELTA is an Rc wrap. The replacement erases Rc balanced-bracket and recursively, with its self-test asserted at import time (a regex on [^<>]* leaves Rc> untouched). Contributing cause fixed with it: the delta vector's optionality axis tested the head only. Repartitioned: R1 39->34, R2 22->24, D 13->16, C 4->6, ELEM-COLL 4->5, W 9->5, residue 6->7 (95.5% classified). Every one of the seven R1 leavers was verified against the TSV to land where the reporters predicted. An off-branch consumer — another lane's rejection control at v2_lens_cost.rs:312/:315 — is now safe by construction rather than by B3's arm happening not to admit Nat. Co-Authored-By: Claude Opus 5 --- docs/probes/e0308_classify_sites.py | 126 +++++++++++++-- docs/probes/e0308_partition_2026-08-22.md | 144 +++++++++++------- .../sites_classified.tsv | 22 +-- .../summary_stamp.md | 26 ++-- 4 files changed, 233 insertions(+), 85 deletions(-) diff --git a/docs/probes/e0308_classify_sites.py b/docs/probes/e0308_classify_sites.py index 3205d819d90..c0a4ed7023a 100755 --- a/docs/probes/e0308_classify_sites.py +++ b/docs/probes/e0308_classify_sites.py @@ -131,9 +131,103 @@ def delta_vector(e, f): elif eb != fb: v.append("generic_arg") if head(eb) in COLLECTIONS or head(fb) in COLLECTIONS: v.append("container") if e.startswith("&") or f.startswith("&"): v.append("borrowed") - if head(eb) == "Option" or head(fb) == "Option" or f == "None": v.append("optionality") + # ANY-DEPTH, not head-only: an Option nested inside Outcome<_> never set this flag, which is + # how three non-wrap sites reached the old R1 arm looking like bare wrap deltas. + if "Option<" in e or "Option<" in f or f == "None" or e == "None": v.append("optionality") return "+".join(v) if v else "none" + +# ---- keying, declared rather than emergent --------------------------------- +# THE ARMS USE THREE KEYING SCHEMES AND THE PRECEDENCE BETWEEN THEM IS DECLARED HERE. +# delta-keyed : fires on the SHAPE OF THE DIFFERENCE (R1, A-clone, BOX-WRAP, ELEM-COLL, D) +# carrier-keyed : fires on the head type's identity (B3, B2, T2, T3, DIAG, W, C, R2) +# message-keyed : fires on rustc's own text (ARG-ORDER) +# A site can satisfy a delta-keyed and a carrier-keyed definition at once -- Witness> vs +# Witness is both a Witness fork and a pure Rc wrap -- so SOME precedence always decides it. +# Before this block that precedence was source order: every carrier arm sat above every delta +# arm, so the carrier silently won, and the partition still summed to the site total. A sum is +# exactly the check that cannot see a keying inconsistency (found by smart-ram-730 and +# royal-dove-436 running the rule in the direction neither the author nor the first reporter ran: +# which NON-R1 rows PASS the R1 test). +# +# THE RULING: an EXACT delta test outranks a carrier test. If erasing every Rc from both sides +# makes them equal, the two sides AGREE about the carrier and disagree only about wrapping, so +# the faulty decision is the wrap decision -- naming the carrier there would name a fact both +# sides already share. Carrier arms therefore keep only sites where the carrier itself differs. +# The one exact delta test that can collide with a carrier arm is R1's, so R1 is hoisted above +# the carrier arms; the other delta-keyed arms are not exact in this sense and keep their place. +def rc_erased(t): + """Erase every Rc<...> wrapper, at any depth. Balanced-bracket, not a regex: a regex on + [^<>]* leaves Rc> untouched and would report a real R1 site as unequal.""" + out, i = [], 0 + while i < len(t): + if t.startswith("Rc<", i): + d, k = 0, i + 2 + while k < len(t): + if t[k] == "<": + d += 1 + elif t[k] == ">": + d -= 1 + if d == 0: + break + k += 1 + out.append(rc_erased(t[i + 3:k])) + i = k + 1 + else: + out.append(t[i]) + i += 1 + return "".join(out) + +assert rc_erased("Rc>") == "Refined" +assert rc_erased("Rc>>") == "Vector" +assert rc_erased("Measure<(), S, Rc>") == "Measure<(), S, i64>" +assert rc_erased("String") == "String" + + +def split_args(t): + """Top-level generic argument list of `Head`, or None.""" + i = t.find("<") + if i < 0 or not t.endswith(">"): + return None + inner, args, d, cur = t[i + 1:-1], [], 0, [] + for ch in inner: + if ch == "<": + d += 1 + elif ch == ">": + d -= 1 + if ch == "," and d == 0: + args.append("".join(cur).strip()); cur = [] + else: + cur.append(ch) + args.append("".join(cur).strip()) + return args + +def difference_context(e, f, path=None): + """The constructor path descended THROUGH to reach the difference, e.g. + `Witness>` vs `Witness>` gives ['Witness'].""" + path = [] if path is None else path + ea, fa = split_args(e), split_args(f) + if ea is None or fa is None or head(e) != head(f) or len(ea) != len(fa): + return path + diffs = [i for i in range(len(ea)) if ea[i] != fa[i]] + if len(diffs) != 1: + return path + return difference_context(ea[diffs[0]], fa[diffs[0]], path + [head(e)]) + +def innermost_difference(e, f): + """Descend while the two sides agree, and return the first position at which they differ. + A CARRIER arm must be keyed on the carrier AT THE DIFFERENCE, not at the head: the head of + `Outcome>` vs `Outcome` is `Outcome` on both sides and says nothing about + the disagreement, which is an Option presence one level down. Head-only carrier tests are + why three such sites fell past every carrier arm into a same-head catch-all.""" + ea, fa = split_args(e), split_args(f) + if ea is None or fa is None or head(e) != head(f) or len(ea) != len(fa): + return e, f + diffs = [i for i in range(len(ea)) if ea[i] != fa[i]] + if len(diffs) != 1: + return e, f + return innermost_difference(ea[diffs[0]], fa[diffs[0]]) + # ---- discriminators (prior 15-root vocabulary) ------------------------------ def classify(s): e, f = s["expected"], s["found"] @@ -145,6 +239,15 @@ def classify(s): he, hf = head(eb), head(fb) if s["reorder"]: return "ARG-ORDER", "call_argument_order_diverges_from_declaration" + # R1, hoisted above every carrier arm by the ruling above: the ONLY difference is Rc wrapping. + if e != f and rc_erased(e) == rc_erased(f): + return "R1", ("rc_wrap_only" if en != fn else "rc_wrap_at_type_argument_depth") + # Carrier arms below key on the carrier AT THE DIFFERENCE. The outer pair is still what the + # site reports; only the discriminator descends. + de, df = innermost_difference(e, f) + if (de, df) != (e, f): + eb, en = strip_rc(de); fb, fn = strip_rc(df) + he, hf = head(eb), head(fb) # A-clone: generic parameter cloned through a reference if s["kind_e"] == "type parameter" or (eb.isidentifier() and f == "&" + e): if f.startswith("&") and f.lstrip("&") == e: @@ -165,9 +268,6 @@ def classify(s): # DIAG diagnostic carrier fork if {he, hf} & {"Diagnostic", "NonEmptyDiagnostics", "Diagnostics"} and he != hf: return "DIAG", "diagnostic_carrier_fork" - # W Witness type argument - if he == "Witness" or hf == "Witness": - return "W", "witness_type_argument" # C carrier collapses to unit if eb == "()" or fb == "()" or s["kind_f"] == "unit type" or s["kind_e"] == "unit type": return "C", "carrier_collapses_to_unit" @@ -190,6 +290,13 @@ def elem_of(container_t, other_head): return "ELEM-COLL", "element_vs_its_own_collection" if hf in COLLECTIONS and he not in COLLECTIONS and elem_of(fb, he): return "ELEM-COLL", "element_vs_its_own_collection" + # W is CONTEXT-keyed, not carrier-keyed: the prior vocabulary's row is "Witness<_> type + # argument", i.e. the two sides agree that the value is a Witness and disagree about what it + # witnesses. It sits below the carrier arms by the declared precedence -- a difference that + # is itself a carrier fork (a unit collapse, a text carrier) is named by the fork, not by the + # constructor it happens to sit inside. + if "Witness" in difference_context(e, f): + return "W", "witness_type_argument" # D alias arity / generic argument count: one side IS the other's generic argument, # or the two differ only by an elided argument list if he != hf and (re.search(r"[<,]\s*(?:Rc<)?%s[>,]" % re.escape(hf), eb) @@ -200,11 +307,12 @@ def elem_of(container_t, other_head): # R5 duplicate type authority (same leaf spelling under two paths / near-identical nominals) if he != hf and (he in hf or hf in he): return "R5", "duplicate_type_authority" - # R1 bare<->Rc wrap decision - if he == hf and en != fn: - return "R1", "rc_wrap_only" - if he == hf and eb != fb and ("Rc<" in eb or "Rc<" in fb): - return "R1", "rc_wrap_at_type_argument_depth" + # The old R1 tail arms are GONE, not moved. `("Rc<" in eb or "Rc<" in fb)` admitted a site + # whenever the substring occurred anywhere on either side, which is not evidence that the + # DELTA is an Rc wrap: it swept in Outcome> vs Outcome (an Option + # presence), Vector<()> vs Vector (a unit collapse) and + # Measure<(),S,i64> vs Measure<(),_,i64> (a type-parameter binding). The exact test above + # replaces it; anything reaching here differs by more than wrapping. if he == hf and eb != fb: return "D", "alias_arity_generic_argument_count" return "RESIDUE", "unclassified_pair: %s | %s" % (e, f) diff --git a/docs/probes/e0308_partition_2026-08-22.md b/docs/probes/e0308_partition_2026-08-22.md index af6a2bdc636..b073e4d5fae 100644 --- a/docs/probes/e0308_partition_2026-08-22.md +++ b/docs/probes/e0308_partition_2026-08-22.md @@ -87,53 +87,88 @@ Sites are keyed on `(file, line, col, {expected, found})` — the pair is direct because rustc prints both orientations of one mismatch when it reports a closure's argument and its expectation. -## The partition — 13 clusters + a live residue arm, summing to 154 +## The partition — 14 clusters + a live residue arm, summing to 154 + +**REPARTITIONED 2026-08-22 after a keying defect was found by review** (`royal-dove-436`, +`smart-ram-730`); the counts below are the corrected ones and the superseded table is not kept +beside them, because two tables for one measurement is two authorities. What changed and why is +in *The keying ruling* immediately after. | cluster | sites | % | files | top pair (n) | |---|---:|---:|---:|---| -| **R1** bare↔`Rc` wrap decision | 39 | 25.3% | 19 | `Rc \| LetBinding` (4) | -| **R2** Optional surface fork | 22 | 14.3% | 7 | `Option> \| Rc<_>` (8) | +| **R1** bare↔`Rc` wrap decision | 34 | 22.1% | 18 | `Rc \| LetBinding` (4) | +| **R2** Optional surface fork | 24 | 15.6% | 8 | `Option> \| Rc<_>` (8) | +| **D** alias arity / generic argument count | 16 | 10.4% | 2 | `Coverage> \| CoverageDefectAcceptanceKey` (13) | | **T3** collection carrier fork | 14 | 9.1% | 10 | `OrdSet \| Rc>` (5) | -| **D** alias arity / generic argument count | 13 | 8.4% | 1 | `Coverage> \| CoverageDefectAcceptanceKey` (13) | | **A-clone** generic parameter `Clone` bound absent | 12 | 7.8% | 6 | `_ \| &_` (6) | | **ARG-ORDER** call argument order | 11 | 7.1% | 1 | (no pair; rustc's own reorder help) (6) | | **B3** modeled `Nat` vs native integer | 10 | 6.5% | 1 | `Rc \| {integer}` (10) | -| **W** `Witness<_>` type argument | 9 | 5.8% | 6 | `Witness> \| Witness>` (2) | +| **RESIDUE** unclassified | 7 | 4.5% | 5 | printed in full below | +| **C** carrier collapses to `()` | 6 | 3.9% | 3 | `Rc \| ()` (2) | | **B2** `Bool` carrier vs `bool`/variant | 6 | 3.9% | 1 | `Bool \| True` (3) | -| **RESIDUE** unclassified | 6 | 3.9% | 4 | printed in full below | -| **C** carrier collapses to `()` | 4 | 2.6% | 3 | `Rc \| ()` (2) | -| **ELEM-COLL** element vs its own collection — **NEW** | 4 | 2.6% | 1 | `StateDurabilityBoundary \| Vector>` (2) | +| **ELEM-COLL** element vs its own collection — **NEW** | 5 | 3.2% | 2 | `StateDurabilityBoundary \| Vector>` (2) | +| **W** `Witness<_>` type argument | 5 | 3.2% | 2 | `Witness> \| Witness>` (2) | | **DIAG** diagnostic carrier fork | 3 | 1.9% | 1 | `Rc \| Rc` (3) | | **BOX-WRAP** `Box` wrap decision — **NEW** | 1 | 0.6% | 1 | `i64 \| Box` (1) | -Classified = 148 / 154 = **96.1%**; residue = **6 sites, 3.9%**. The stop rule is met on both arms. - -### The grouping key is the delta vector, kept beside the pair - -The classifier derives, per site, which axes differ — `rc_depth`, `nominal`, `generic_arg`, -`container`, `borrowed`, `optionality` — and stores that vector in its own TSV column **beside** -the derived cluster, never folded into it. So is the callee note (`callee`, `callee_kind`). This -is the direct correction of the 2026-08-21 `RT-builtin` failure, where `note: function defined -here → v1_rt.rs` was consumed into the root label and the population could not afterwards be -re-adjudicated into wrong-callee-selection versus correct-callee-wrong-signature. - -| cluster | delta vectors | -|---|---| -| R1 | `rc_depth`×17, `generic_arg`×14, `generic_arg+container`×6 | -| R2 | `rc_depth+nominal+optionality`×19, `nominal+optionality`×3 | -| T3 | `rc_depth+nominal+container`×14 | -| D | `nominal`×13 | -| A-clone | `generic_arg+borrowed`×12 | -| B3 | `rc_depth+nominal`×10 | -| W | `generic_arg`×8, `nominal`×1 | -| ELEM-COLL | `nominal+container`×4 | - -The vector is what makes **R1 the largest cluster and also the least unified one**: 17 of its 39 -sites differ only at the outer `Rc`, 14 differ only *inside* a type argument -(`Rc>>` vs `Rc>`), and 6 differ at an element inside a -container. A wrap-decision change that normalizes only the outer position leaves 20 of 39 standing. -That is the same depth split the 2026-08-21 board reported (22 outer / 11 deep) and it has not -moved. +Classified = 147 / 154 = **95.5%**; residue = **7 sites, 4.5%**. The stop rule is met on both arms. + +R1's depth split is now **19 outer / 15 type-argument depth**. + +## The keying ruling — precedence declared, not emergent + +The first partition summed to exactly 154 and I cited that sum as evidence it was total with +nothing double-counted. **It was total, and the sum is exactly the check that cannot see what was +wrong with it.** Two reviewers ran the rule in the direction I had not: which *non*-R1 sites pass +the R1 test. Two do, and the mechanism behind them is general. + +The arms use **three different keying schemes**, and every arm keyed on a *carrier* sat above +every arm keyed on a *delta*, so the carrier silently won every collision by source order: + +| scheme | fires on | arms | +|---|---|---| +| delta-keyed | the shape of the difference | R1, A-clone, BOX-WRAP, ELEM-COLL, D | +| carrier-keyed | the head type's identity | B3, B2, T2, T3, DIAG, C, R2 | +| context-keyed | the constructor descended through | W | +| message-keyed | rustc's own text | ARG-ORDER | + +**The ruling, in three parts:** + +1. **An exact delta test outranks a carrier test.** If erasing every `Rc` from both sides makes + them equal, the sides *agree* about the carrier and disagree only about wrapping, so the + faulty decision is the wrap decision — naming the carrier would name a fact both sides already + share. R1's test is the one exact delta test that can collide with a carrier arm, so R1 is + hoisted above them. `Witness>` vs `Witness` and + `Witness>` vs `Witness` therefore move **W → R1**. +2. **A carrier arm keys on the carrier at the difference, not at the head.** The head of + `Outcome>>` vs `Outcome>` is `Outcome` on both sides and says nothing + about the disagreement, which is an `Option` presence one level down. The discriminator now + descends to the first differing position; the site still reports its outer pair. +3. **W is context-keyed and sits below the carrier arms.** Its row means "the two sides agree the + value is a `Witness` and disagree about what it witnesses". A difference that is *itself* a + carrier fork — a unit collapse, a text carrier — is named by the fork, not by the constructor + it happens to sit inside. + +**The R1 rule defect that started this** (reported by `royal-dove-436` with a tested fix, and +confirmed independently by `smart-ram-730` with a self-tested eraser): the old arm admitted a site +whenever the substring `Rc<` occurred *anywhere* on either side, which is not evidence that the +**delta** is an `Rc` wrap. The `rc_erased` eraser is balanced-bracket and recursive, with its +self-test asserted at import time — a regex on `[^<>]*` leaves `Rc>` untouched +and would report a real R1 site as unequal. A contributing cause is fixed with it: the delta +vector's optionality axis tested the head only, so an `Option` nested inside `Outcome<_>` never +set the flag. + +**Where the seven leavers went, each verified against the TSV:** 2 → R2 (`Option` presence inside +`Outcome`), 1 → ELEM-COLL (an extra `Vector` nesting layer), 1 → C (`Vector<()>` vs +`Vector`), 3 → D (`Measure<(), S, Rc>` vs `Measure<(), _, i64>` — a +type-parameter binding, `()` vs `S` vs `_`, at generic-argument position; that call was mine to +make and D is where a generic-argument disagreement belongs). + +**One off-branch consumer, flagged by `royal-dove-436` and now safe by construction:** an R1 +experiment uses `v2_lens_cost.rs:312`/`:315` (`Rc` vs `Nat`) as a rejection control, which +sat in R1 only because B3's arm requires one side in `NUMERIC_NATIVE` and `Nat` is not in it — so +a later broadening of B3 would have silently deleted their control. Under ruling (1) those sites +are R1 because the delta test is exact, whatever B3 later admits. ## Residue — printed in full, never absorbed @@ -141,15 +176,16 @@ moved. |---|---:|---|---|---| | `src/std_state_durability.rs` | 878 | `Rc>` \| `Rc>>` | `nominal+container` | `src/v1_rt.rs:379:8` | | `src/v2_lens_determinism.rs` | 135 | `Rc` \| `Rc` | `nominal` | `src/v2_lens_determinism.rs:128:8` | +| `src/v2_std_cardinality.rs` | 581 | `Rc>>` \| `Rc` | `nominal` | `src/v2_std_cardinality.rs:566:8` | | `src/v2_std_compilers_target_model.rs` | 2137 | `i64` \| `String` | `nominal` | `src/v2_std_compilers_target_model.rs:2126:8` | | `src/v2_std_compilers_target_model.rs` | 2384 | `String` \| `i64` | `nominal` | — | | `src/v2_std_compilers_target_model.rs` | 7002 | `TargetUseSiteOwnershipLookup` \| `TargetUseSiteOwnershipCatalogLookup` | `nominal` | `alloc/src/rc.rs` | | `src/v2_compiler_source_authority.rs` | 1331 | `Rc` \| `Rc` | `nominal` | `src/v2_compiler_source_authority.rs:1311:8` | -Two of these six (`Rc ↔ Rc`, `TargetUseSiteOwnershipLookup ↔ +Two of these seven (`Rc ↔ Rc`, `TargetUseSiteOwnershipLookup ↔ …CatalogLookup`) were residue on the 2026-08-21 board too, under a hand classification — a two-instrument agreement that they are genuinely unlike the named mechanisms, not a classifier -gap. The residue arm is **known-positive**: it survives with 6 rows, and a run returning zero +gap. The residue arm is **known-positive**: it survives with 7 rows, and a run returning zero residue would itself be the finding. The one residue cluster large enough to own is the three @@ -170,17 +206,17 @@ mechanical cause are safe to read as population change. | T2 | 34 | **0** | **Unjoinable — masked** | 32 of 34 were the same tokenize file, same masking. Independently corroborated as zero by the brief. | | RT-builtin | 20 | **0** | **Converted out of E0308** | `v1_rt::lookup` was made `ReceiverKey`-generic by gunbc#8792, and **no current E0308 site names `lookup`**. `v1_rt.rs` is still named by 2 E0308 blocks, but as a different callee — `append(list: Rc>, item: T)`, which lands in ELEM-COLL/residue — and by **17 `E0061`** (arity) blocks. So the mechanism left this error code; that is not the same as the call sites being correct. | | R5 duplicate type authority | 6 | **0** | **Removed** | `OccurrenceId`/`NodeOccurrenceId` appears in **zero** current sites (`grep Occurrence` over the TSV = 0) and in no other cluster, so it is not a reclassification. | -| R1 | 33 | 39 | StillLive | 16 of 20 prior files still carry R1; depth split unchanged. | +| R1 | 33 | 34 | StillLive | 16 of 20 prior files still carry R1; depth split 19 outer / 15 deep against the prior 22 / 11. | | T3 | 25 | 14 | StillLive (smaller) | all 10 current files were prior files. | -| D | 13 | 13 | StillLive, identical | same single file `v2_lens_coverage.rs`, same pair, same count. | +| D | 13 | 16 | StillLive (larger) | the 13 `v2_lens_coverage.rs` sites are unchanged count-for-count; the 3 added are the `Measure` type-parameter bindings the keying ruling moved here. | | ARG-ORDER | 11 | 11 | StillLive, identical | same single file `v2_compiler_eval.rs`, same five `eval_*_node` callees. | | B2 | 6 | 6 | StillLive, identical | `v2_std_logic.rs`. | -| C | 4 | 4 | StillLive | same three files. | +| C | 4 | 6 | StillLive | same three files. | | A-clone | 6 | 12 | StillLive (larger) | same six files; the prior hand pass counted one site per file, this pass counts each accessor. Most likely instrument, not growth. | -| R2 | 9 | 22 | StillLive (larger) | 3 of 4 prior files still present, 4 new ones. | -| W | 8 | 9 | StillLive | 4 of 4 prior files present. | +| R2 | 9 | 24 | StillLive (larger) | 3 of 4 prior files still present, 4 new ones. | +| W | 8 | 5 | StillLive (smaller) | 4 of 4 prior files present. | | DIAG | 4 | 3 | StillLive | `v2_compiler_source_authority.rs`. | -| — | — | 4 | **New mechanism: ELEM-COLL** | an element passed where its own collection is expected (`StateDurabilityBoundary` vs `Vector>`), all in `std_state_durability.rs`. Mechanically distinct from D (no alias, no arity change) and from T3 (one carrier, not two forked carriers), so it gets its own arm rather than the nearest familiar one. | +| — | — | 5 | **New mechanism: ELEM-COLL** | an element passed where its own collection is expected (`StateDurabilityBoundary` vs `Vector>`), all in `std_state_durability.rs`. Mechanically distinct from D (no alias, no arity change) and from T3 (one carrier, not two forked carriers), so it gets its own arm rather than the nearest familiar one. | | — | — | 1 | **New mechanism: BOX-WRAP** | `i64` vs `Box`. Named separately from R1 because the wrapper is a different one: a wrap-decision fix keyed on `Rc` would not reach it. | **The tokenize masking is the most consequential row in this table, and it has a forward @@ -203,25 +239,25 @@ width of one file. | `src/v2_lens_complexity_accumulator_copy_analyze.rs` | 8 | R1 8 | | `src/v2_std_logic.rs` | 6 | B2 6 | | `src/v2_extdeps_languages_dag.rs` | 6 | R2 6 | -| `src/std_realization_schedule.rs` | 5 | R1 5 | +| `src/std_realization_schedule.rs` | 5 | D 3, R1 2 | -45 emitted files carry the 154 sites. **Six clusters are single-file** (D, ARG-ORDER, B3, B2, -ELEM-COLL, BOX-WRAP), which is the strongest cost-shape signal in this run: 45 of 154 sites sit -behind six decisions in six files. +45 emitted files carry the 154 sites. **Four clusters are single-file** (ARG-ORDER, B3, B2, +BOX-WRAP) and two more sit in two files each (D, ELEM-COLL), which is the strongest cost-shape +signal in this run: 49 of 154 sites sit behind six decisions in eight files. ## Cost shape — the staffing question the brief asked -The board is **not** a long tail of independent site repairs. Four clusters (R1, R2, T3, D) cover -88 of 154 = 57%, and six single-file clusters cover another 45. The tail is 6 residue sites in 4 -files. This agrees in shape with the 2026-08-21 finding (7 largest categories = 79%) even though +The board is **not** a long tail of independent site repairs. Four clusters (R1, R2, D, T3) cover +88 of 154 = 57%, and six near-single-file clusters cover another 49. The tail is 7 residue sites in +5 files. This agrees in shape with the 2026-08-21 finding (7 largest categories = 79%) even though the population is different. | cluster | sites | suggested owner | why that owner | |---|---:|---|---| -| R1 (39, 19 files) | wrap decision | emitter wrap-decision lane | needs the outer/type-argument/element split treated as one decision at three depths; the 2026-08-21 board found the same split, so it is stable and worth one design | -| R2 (22, 7 files) | Optional surface lane | `Option>` vs `Rc` in 19 of 22 — a single surface decision about where optionality is realized | +| R1 (34, 18 files) | wrap decision | emitter wrap-decision lane | needs the outer and type-argument depths treated as one decision at two depths; the 2026-08-21 board found the same split, so it is stable and worth one design | +| R2 (24, 8 files) | Optional surface lane | `Option>` vs `Rc` in 19 of 22 — a single surface decision about where optionality is realized | | T3 (14, 10 files) | collection carrier lane | one shape: modeled `PointwisePower`/`PartialFunction` against native `OrdSet`/`HashMap` | -| D (13, 1 file) | `v2.lens.coverage` owner | entirely one alias in one file; cheapest whole-cluster close on the board | +| D (16, 2 files) | `v2.lens.coverage` owner | 13 of 16 are one alias in one file; cheapest near-whole-cluster close on the board | | ARG-ORDER (11, 1 file) | `v2.compiler.eval` owner | five `eval_*_node` callees; DESIGN §4b's named "mislabeled call reordered into positional leftovers", measured | | A-clone (12, 6 files) | generic-bound emission lane | generated variant accessor clones `&T` where `T: Clone` was never emitted | | B3 (10) + B2 (6) | modeled-primitive realization lane | `Nat`/`Bool` against native — same seam, and B3's real size is hidden by the tokenize mask | diff --git a/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv b/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv index 5be3f9a7ff0..27d1a6a37f4 100644 --- a/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv +++ b/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv @@ -9,7 +9,7 @@ src/v2_lens_complexity_accumulator_copy_analyze.rs 309 14 Rc LetBind src/v2_lens_complexity_accumulator_copy_analyze.rs 485 80 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types src/v2_lens_complexity_accumulator_copy_analyze.rs 479 72 Rc>> Rc> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types src/v2_lens_complexity_accumulator_copy_analyze.rs 696 15 Rc> Rc>> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types -src/v2_lens_complexity_lowering.rs 48 13 Vector<()> Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_lowering.rs 48 13 Vector<()> Vector> generic_arg+container C carrier_collapses_to_unit mismatched types src/v2_lens_complexity_lowering.rs 60 104 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types src/v2_lens_complexity_lowering.rs 68 107 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types src/v2_lens_coverage.rs 52 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types @@ -45,18 +45,18 @@ src/std_measure.rs 488 18 Rc i64 rc_depth R1 rc_wrap_only mismatched type src/v2_std_staging.rs 31 53 B &B generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types src/v2_std_staging.rs 31 53 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types src/v2_std_text.rs 65 59 i64 Box nominal BOX-WRAP box_wrap_only mismatched types -src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg D alias_arity_generic_argument_count mismatched types +src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg D alias_arity_generic_argument_count mismatched types src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_realization_schedule.rs 83 19 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:214:8 function defined here mismatched types +src/std_realization_schedule.rs 83 19 Rc> Rc>> generic_arg D alias_arity_generic_argument_count src/std_measure.rs:214:8 function defined here mismatched types src/std_state_durability.rs 152 65 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types src/std_state_durability.rs 163 70 Rc Rc>> nominal+container ELEM-COLL element_vs_its_own_collection src/v1_rt.rs:379:8 function defined here mismatched types src/std_state_durability.rs 291 152 StateDefinitionCallerAssertion Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types src/std_state_durability.rs 636 59 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types src/std_state_durability.rs 878 59 Rc> Rc>>> nominal+container RESIDUE unclassified_pair: Rc> | Rc>>> src/v1_rt.rs:379:8 function defined here mismatched types src/v2_std_collection.rs 93 13 HashMap Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_fold_assembly.rs 258 38 Rc>>>>>> Rc>>>> generic_arg R1 rc_wrap_at_type_argument_depth `match` arms have incompatible types +src/v2_std_fold_assembly.rs 258 38 Rc>>>>>> Rc>>>> generic_arg ELEM-COLL element_vs_its_own_collection `match` arms have incompatible types src/std_cache_interface.rs 638 12 Option None nominal+optionality R2 optional_surface_fork mismatched types src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types @@ -76,8 +76,8 @@ src/v2_std_node_query.rs 150 104 _ &_ generic_arg+borrowed A-clone generic_param src/v2_std_provenance.rs 79 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types src/v2_std_provenance.rs 79 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types src/v2_lens_determinism.rs 135 42 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_lens_determinism.rs:128:8 function defined here arguments to this function are incorrect -src/v2_lens_determinism.rs 161 64 Witness> Witness generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_cardinality.rs 581 42 Rc>> Rc nominal W witness_type_argument src/v2_std_cardinality.rs:566:8 function defined here arguments to this function are incorrect +src/v2_lens_determinism.rs 161 64 Witness> Witness generic_arg R1 rc_wrap_at_type_argument_depth /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_cardinality.rs 581 42 Rc>> Rc nominal RESIDUE unclassified_pair: Rc>> | Rc src/v2_std_cardinality.rs:566:8 function defined here arguments to this function are incorrect src/v2_std_compilers_lexing.rs 235 13 Vector> Rc>> rc_depth+container R1 rc_wrap_only /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_std_integer.rs 1359 26 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types src/v2_std_integer.rs 1362 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types @@ -99,7 +99,7 @@ src/v2_compiler_target_carriers.rs 105 64 Option> Rc<_> rc_depth+nominal+o src/v2_std_grammar.rs 1285 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types src/v2_std_grammar.rs 1363 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types src/v2_std_grammar.rs 1365 12 () Rc>> rc_depth+nominal+container C carrier_collapses_to_unit mismatched types -src/v2_std_grammar.rs 1364 21 Witness>>> Witness<()> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_grammar.rs 1364 21 Witness>>> Witness<()> generic_arg C carrier_collapses_to_unit /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_extdeps_languages_llvm_ir.rs 1099 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_extdeps_languages_llvm_ir.rs 1123 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_std_language_model.rs 44 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types @@ -119,11 +119,11 @@ src/v2_compiler_parse.rs 1095 53 OrdSet Rc> rc_depth+n src/v2_extdeps_runtimes_v2_evaluator.rs 160 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_extdeps_runtimes_v2_evaluator.rs 332 5 Rc Edge rc_depth R1 rc_wrap_only mismatched types src/v2_lens_machine_shape.rs 190 5 Rc MachineShapeWalkResult rc_depth R1 rc_wrap_only mismatched types -src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth `match` arms have incompatible types -src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth `match` arms have incompatible types +src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg+optionality R2 optional_surface_fork `match` arms have incompatible types +src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg+optionality R2 optional_surface_fork `match` arms have incompatible types src/v2_compiler_resolve.rs 145 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_compiler_infer.rs 164 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_infer.rs 378 63 Witness> Witness generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 378 63 Witness> Witness generic_arg R1 rc_wrap_at_type_argument_depth /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_compiler_infer.rs 513 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types src/v2_compiler_infer.rs 522 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types src/v2_compiler_infer.rs 522 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types diff --git a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md index a80fe085429..44deac5f8b6 100644 --- a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md +++ b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md @@ -8,26 +8,30 @@ | emitted roster | 177 files, 503 emit diagnostics (same roster count as the 2026-08-21 run — same subject) | | raw E0308 blocks | **128** (40.5% of 316 coded rows; `CARGO_ERROR_TOTAL=329`, `HISTOGRAM_SUM=330`) | | canonical sites | **154** | -| clusters | 13 + residue | -| unclassified residue | **6 (3.9%)**, printed in full; residue arm known-positive | +| clusters | 14 + residue | +| unclassified residue | **7 (4.5%)**, printed in full; residue arm known-positive | | classifier | `docs/probes/e0308_classify_sites.py` (committed; re-runnable over the published raw log) | ## Clusters (site grain, this subject only) — every one a CANDIDATE root +Repartitioned 2026-08-22 after a keying defect found by review; precedence between delta-keyed, +carrier-keyed and context-keyed arms is now declared in the classifier and in the receipt's +*keying ruling*, not left to source order. + | cluster | sites | % | |---|---:|---:| -| R1 bare↔`Rc` wrap (17 outer / 14 type-argument depth / 6 element) | 39 | 25.3% | -| R2 Optional surface fork | 22 | 14.3% | +| R1 bare↔`Rc` wrap (19 outer / 15 type-argument depth) | 34 | 22.1% | +| R2 Optional surface fork | 24 | 15.6% | +| D alias arity / generic argument count | 16 | 10.4% | | T3 collection carrier fork | 14 | 9.1% | -| D alias arity / generic argument count | 13 | 8.4% | | A-clone generic `Clone` bound absent | 12 | 7.8% | | ARG-ORDER call argument order | 11 | 7.1% | | B3 modeled `Nat` vs native integer | 10 | 6.5% | -| W `Witness<_>` type argument | 9 | 5.8% | +| RESIDUE | 7 | 4.5% | +| C carrier collapses to `()` | 6 | 3.9% | | B2 `Bool` vs `bool`/variant | 6 | 3.9% | -| RESIDUE | 6 | 3.9% | -| C carrier collapses to `()` | 4 | 2.6% | -| ELEM-COLL element vs its own collection (**NEW**) | 4 | 2.6% | +| ELEM-COLL element vs its own collection (**NEW**) | 5 | 3.2% | +| W `Witness<_>` type argument | 5 | 3.2% | | DIAG diagnostic carrier fork | 3 | 1.9% | | BOX-WRAP `Box` wrap decision (**NEW**) | 1 | 0.6% | @@ -44,8 +48,8 @@ ## Cost shape -Four clusters cover 57% of sites; six more are single-file and cover another 45. Tail = 6 residue -sites in 4 files. This is a small number of producer decisions with wide fanout, not a site-by-site +Four clusters cover 57% of sites; six more are single- or two-file and cover another 49. Tail = 7 +residue sites in 5 files. This is a small number of producer decisions with wide fanout, not a site-by-site tail — the same shape the 2026-08-21 board reported on a different population. ## The 182 in the commissioning brief From 90acb852ca6eeec303c748858283353129d24695 Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 10:37:45 +0000 Subject: [PATCH 4/7] Publish R1's four delta values rather than a two-bucket rollup: the element arm is load-bearing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A 19 outer / 15 typearg rollup is arithmetically right and erases the element arm. Another lane's join over this table finds the three element-depth carriers (Finding, NarrowingReason, PortReading) at element depth AND NOWHERE ELSE, while i64 crosses outer and type-argument — so element depth is a separate producer root, and a reader given two numbers cannot see the distinction exists. Reported by royal-dove-436 against the landed TSV. Co-Authored-By: Claude Opus 5 --- docs/probes/e0308_partition_2026-08-22.md | 10 ++++++++-- .../probes/e0308_partition_2026-08-22/summary_stamp.md | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/docs/probes/e0308_partition_2026-08-22.md b/docs/probes/e0308_partition_2026-08-22.md index b073e4d5fae..e738da1056f 100644 --- a/docs/probes/e0308_partition_2026-08-22.md +++ b/docs/probes/e0308_partition_2026-08-22.md @@ -113,7 +113,13 @@ in *The keying ruling* immediately after. Classified = 147 / 154 = **95.5%**; residue = **7 sites, 4.5%**. The stop rule is met on both arms. -R1's depth split is now **19 outer / 15 type-argument depth**. +R1's depth split is now **four delta values, published as four rather than rolled up into two**: +`rc_depth` 17 (outer), `generic_arg` 10 (type-argument depth), `generic_arg+container` 5 (element +depth), `rc_depth+container` 2. A two-bucket 19/15 rollup is arithmetically right and **erases the +element arm**, which is load-bearing: another lane's join over this table finds the three +element-depth carriers (`Finding`, `NarrowingReason`, `PortReading`) at element depth **and nowhere +else**, while `i64` crosses outer and type-argument — so element depth is a separate producer root, +and a reader given 19/15 cannot see that the distinction exists. ## The keying ruling — precedence declared, not emergent @@ -206,7 +212,7 @@ mechanical cause are safe to read as population change. | T2 | 34 | **0** | **Unjoinable — masked** | 32 of 34 were the same tokenize file, same masking. Independently corroborated as zero by the brief. | | RT-builtin | 20 | **0** | **Converted out of E0308** | `v1_rt::lookup` was made `ReceiverKey`-generic by gunbc#8792, and **no current E0308 site names `lookup`**. `v1_rt.rs` is still named by 2 E0308 blocks, but as a different callee — `append(list: Rc>, item: T)`, which lands in ELEM-COLL/residue — and by **17 `E0061`** (arity) blocks. So the mechanism left this error code; that is not the same as the call sites being correct. | | R5 duplicate type authority | 6 | **0** | **Removed** | `OccurrenceId`/`NodeOccurrenceId` appears in **zero** current sites (`grep Occurrence` over the TSV = 0) and in no other cluster, so it is not a reclassification. | -| R1 | 33 | 34 | StillLive | 16 of 20 prior files still carry R1; depth split 19 outer / 15 deep against the prior 22 / 11. | +| R1 | 33 | 34 | StillLive | 16 of 20 prior files still carry R1; depth split 17 outer / 10 type-argument / 5 element / 2 outer-of-container, against the prior 22 / 11. | | T3 | 25 | 14 | StillLive (smaller) | all 10 current files were prior files. | | D | 13 | 16 | StillLive (larger) | the 13 `v2_lens_coverage.rs` sites are unchanged count-for-count; the 3 added are the `Measure` type-parameter bindings the keying ruling moved here. | | ARG-ORDER | 11 | 11 | StillLive, identical | same single file `v2_compiler_eval.rs`, same five `eval_*_node` callees. | diff --git a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md index 44deac5f8b6..de68e9dc185 100644 --- a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md +++ b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md @@ -14,13 +14,13 @@ ## Clusters (site grain, this subject only) — every one a CANDIDATE root -Repartitioned 2026-08-22 after a keying defect found by review; precedence between delta-keyed, +Repartitioned 2026-08-22 after a keying defect found by review; R1's four delta values are published as four, because a two-bucket rollup erases the element arm and element depth is a separate producer root; precedence between delta-keyed, carrier-keyed and context-keyed arms is now declared in the classifier and in the receipt's *keying ruling*, not left to source order. | cluster | sites | % | |---|---:|---:| -| R1 bare↔`Rc` wrap (19 outer / 15 type-argument depth) | 34 | 22.1% | +| R1 bare↔`Rc` wrap (17 outer / 10 type-argument / 5 element / 2 outer-of-container) | 34 | 22.1% | | R2 Optional surface fork | 24 | 15.6% | | D alias arity / generic argument count | 16 | 10.4% | | T3 collection carrier fork | 14 | 9.1% | From 2f245d92a8c26050a8926297777eaece5cd6b872 Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 11:03:21 +0000 Subject: [PATCH 5/7] Carry the Measure alias-collapse as a carrier FLAG, not a fifteenth cluster MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit royal-dove-436 found that one documented emitter defect (std.measure billing_month_as_hour_count_representation_note, which already carries its own dissolve-on) generates rows in R1 and D at once, and suggested an arm keyed on the collapse signature checked BEFORE the Rc-erase rules. Taking the finding, not the handling. At std_cache_interface.rs:652/:667 the collapse is present on BOTH sides, so the delta there is purely the Rc and the erasure is invisible in the mismatch — no pair-keyed rule can recover it, only the declaration can. An arm keyed on a cause the classifier cannot see is a guess wearing a category's name, and checking it before the delta rules would invert the keying ruling landed in the previous commit. Instead the mechanical spelling properties become their own TSV column beside the root, joinable across clusters exactly as the callee note is. Six sites on that carrier, split R1 4 / D 2 / C 2, now pool by cause so nobody costs the defect twice or designs a repair for a class whose dissolve-on is already registered. No root moved: the partition is unchanged at 34/24/16/14/12/11/10/7/6/6/5/5/3/1. Not claimed: that the alias path CAUSES the collapse — the evidence is the in-corpus note plus a shape match, and no producer was traced. Co-Authored-By: Claude Opus 5 --- docs/probes/e0308_classify_sites.py | 40 ++- docs/probes/e0308_partition_2026-08-22.md | 38 ++- .../sites_classified.tsv | 310 +++++++++--------- .../summary_stamp.md | 8 + 4 files changed, 237 insertions(+), 159 deletions(-) diff --git a/docs/probes/e0308_classify_sites.py b/docs/probes/e0308_classify_sites.py index c0a4ed7023a..8d97630dc29 100755 --- a/docs/probes/e0308_classify_sites.py +++ b/docs/probes/e0308_classify_sites.py @@ -228,6 +228,35 @@ def innermost_difference(e, f): return e, f return innermost_difference(ea[diffs[0]], fa[diffs[0]]) + +# ---- carrier flags: evidence BESIDE the root, never a category -------------- +# A cluster is keyed on what the DIFFERENCE is. Some facts that matter for costing are properties +# of the emitted DECLARATION instead, so they are not decidable from the pair at all and must not +# become arms -- an arm keyed on a cause the classifier cannot see is a guess wearing a category's +# name. They are carried as their own column, joinable across clusters, exactly as the callee note +# is: a site can then be pooled by cause without the partition being re-keyed by it. +# +# The live instance (reported by royal-dove-436, 2026-08-22): `std.measure` +# `billing_month_as_hour_count_representation_note` records that stage0 alias emission collapses +# applied-generic Measure aliases to a concrete all-unit parameter list while fn/data return sites +# still reference the un-erased alias params. That collapse shows up in the SPELLING of both sides, +# so the flag is mechanical; which producer emitted the declaration is not visible here. +def carrier_flags(e, f): + """Mechanical properties of the SPELLINGS, keyed on generic-argument positions.""" + flags = [] + ea, fa = split_args(strip_rc(e)[0]), split_args(strip_rc(f)[0]) + if ea and fa and head(e) == head(f) and len(ea) == len(fa): + pos = list(zip(ea, fa)) + if any((a == "()") != (b == "()") for a, b in pos): + flags.append("generic_param_unit_on_one_side") + elif any(a == "()" and b == "()" for a, b in pos): + # Both sides collapsed: the erasure is real but INVISIBLE IN THE DELTA, so no arm + # could ever key on it. This is the flag's whole reason for existing. + flags.append("generic_params_unit_on_both_sides") + if any((a == "_") != (b == "_") for a, b in pos): + flags.append("generic_param_binding_differs") + return "+".join(flags) + # ---- discriminators (prior 15-root vocabulary) ------------------------------ def classify(s): e, f = s["expected"], s["found"] @@ -329,20 +358,27 @@ def main(path, out): root, reason = classify(s) s["root"], s["reason"] = root, reason s["delta"] = "" if s["nopair"] else delta_vector(s["expected"], s["found"]) + s["carrier_flags"] = "" if s["nopair"] else carrier_flags(s["expected"], s["found"]) sites.append(s) cols = ["file", "line", "col", "expected", "found", "delta", "root", "reason", - "callee", "callee_kind", "block_msg"] + "carrier_flags", "callee", "callee_kind", "block_msg"] with open(out, "w") as fh: fh.write("\t".join(cols) + "\n") for s in sites: fh.write("\t".join(str(s.get(c, "")) for c in ["file", "line", "col", "expected", "found", "delta", "root", "reason", - "callee", "callee_kind", "msg"]) + "\n") + "carrier_flags", "callee", "callee_kind", "msg"]) + "\n") print("raw E0308 blocks: %d" % len(blocks)) print("canonical sites : %d" % len(sites)) hist = collections.Counter(s["root"] for s in sites) for r, n in hist.most_common(): print(" %-12s %4d %5.1f%%" % (r, n, 100.0 * n / len(sites))) + flagged = collections.Counter(s["carrier_flags"] for s in sites if s.get("carrier_flags")) + if flagged: + print("\nCarrier flags (evidence beside the root, not a category):") + for fl, n in flagged.most_common(): + rs = collections.Counter(s["root"] for s in sites if s.get("carrier_flags") == fl) + print(" %-46s %3d across %s" % (fl, n, dict(rs))) print("\nRESIDUE detail:") for s in sites: if s["root"] == "RESIDUE": diff --git a/docs/probes/e0308_partition_2026-08-22.md b/docs/probes/e0308_partition_2026-08-22.md index e738da1056f..d2823f507fe 100644 --- a/docs/probes/e0308_partition_2026-08-22.md +++ b/docs/probes/e0308_partition_2026-08-22.md @@ -176,6 +176,40 @@ sat in R1 only because B3's arm requires one side in `NUMERIC_NATIVE` and `Nat` a later broadening of B3 would have silently deleted their control. Under ruling (1) those sites are R1 because the delta test is exact, whatever B3 later admits. +## Carrier flags — evidence beside the root, not a fifteenth category + +A cluster is keyed on **what the difference is**. Some facts that matter for *costing* are +properties of the emitted **declaration** instead, so they are not decidable from the pair at all — +and an arm keyed on a cause the classifier cannot see is a guess wearing a category's name. Those +facts are therefore carried in their own TSV column, joinable across clusters, exactly as the +callee note is. + +The live instance, reported by `royal-dove-436` (2026-08-22): `std.measure` +`billing_month_as_hour_count_representation_note` records that stage0 alias emission collapses +applied-generic `Measure` aliases to a concrete all-unit parameter list while `fn`/`data` return +sites still reference the un-erased alias params, and carries its own dissolve-on. Six sites in +this partition sit on that carrier, and they are split across two clusters: + +| flag | sites | clusters | +|---|---:|---| +| `generic_params_unit_on_both_sides` | 4 | R1 4 | +| `generic_param_unit_on_one_side` | 2 | C 2 | +| `generic_params_unit_on_both_sides+generic_param_binding_differs` | 1 | D 1 | +| `generic_param_binding_differs` | 1 | D 1 | + +**Why this is a flag and not an arm, stated precisely because the suggestion was to make it an +arm:** at `std_cache_interface.rs:652`/`:667` the collapse is present on **both sides** +(`Measure<(), (), i64>` vs `Measure<(), (), Rc>`), so the delta there is purely the `Rc` and +the erasure is *invisible in the mismatch*. No pair-keyed rule can recover it; only the declaration +can. Checking a collapse arm *before* the delta rules — the suggested handling — would also invert +the keying ruling above and re-split R1 by a property that is not its delta. The flag gets the +result the suggestion was after (the rows pool by cause, so nobody costs the defect twice or +designs a repair for a class whose dissolve-on is already registered) without minting a category +whose defining fact the classifier cannot see. + +**What is not claimed:** that the alias path *causes* the collapse. The evidence is the in-corpus +note plus a shape match on these rows; the producer of each declaration was not traced in this run. + ## Residue — printed in full, never absorbed | file | line | expected \| found | delta | callee note | @@ -285,8 +319,8 @@ the population is different. authored-decision count is offered. Per-site TSV: [`e0308_partition_2026-08-22/sites_classified.tsv`](e0308_partition_2026-08-22/sites_classified.tsv) -(columns: file, line, col, expected, found, **delta**, root, reason, **callee**, **callee_kind**, -block_msg). +(columns: file, line, col, expected, found, **delta**, root, reason, **carrier_flags**, **callee**, +**callee_kind**, block_msg). To repeat, without a rebuild: `python3 docs/probes/e0308_classify_sites.py docs/probes/e0308_partition_2026-08-22/03_ingest.cargo.log /tmp/sites.tsv`. diff --git a/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv b/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv index 27d1a6a37f4..4100f481890 100644 --- a/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv +++ b/docs/probes/e0308_partition_2026-08-22/sites_classified.tsv @@ -1,155 +1,155 @@ -file line col expected found delta root reason callee callee_kind block_msg -src/v2_extdeps_languages_fidelity.rs 27 79 Feature &Feature generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_extdeps_languages_fidelity.rs 27 79 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 125 116 Rc Edge rc_depth R1 rc_wrap_only src/v2_lens_complexity_accumulator_copy_analyze.rs:99:8 function defined here mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 275 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 284 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 298 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 309 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 485 80 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 479 72 Rc>> Rc> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types -src/v2_lens_complexity_accumulator_copy_analyze.rs 696 15 Rc> Rc>> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types -src/v2_lens_complexity_lowering.rs 48 13 Vector<()> Vector> generic_arg+container C carrier_collapses_to_unit mismatched types -src/v2_lens_complexity_lowering.rs 60 104 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types -src/v2_lens_complexity_lowering.rs 68 107 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types -src/v2_lens_coverage.rs 52 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 63 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 74 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 85 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 96 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 107 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 118 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 129 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 140 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 151 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 162 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 173 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 184 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_lens_coverage.rs 214 181 () Rc> rc_depth+nominal C carrier_collapses_to_unit /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/im-15.1.0/src/vector/mod.rs:1366:12 method defined here mismatched types -src/v2_lens_enforcement_standing_intent.rs 215 32 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types -src/v2_lens_enforcement_standing_intent.rs 246 32 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types -src/v2_std_artifact.rs 84 14 Rc>> Refined> rc_depth R1 rc_wrap_only mismatched types -src/v2_std_artifact.rs 84 14 Rc> Refined<_> rc_depth R1 rc_wrap_only mismatched types -src/v2_std_passing_candidate_fold.rs 34 83 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_passing_candidate_fold.rs 34 83 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/std_checked_arithmetic.rs 305 12 Rc i64 rc_depth R1 rc_wrap_only mismatched types -src/v2_std_algebra.rs 152 63 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_algebra.rs 152 63 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_logic.rs 53 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types -src/v2_std_logic.rs 54 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types -src/v2_std_logic.rs 57 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types -src/v2_std_logic.rs 58 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types -src/v2_std_logic.rs 61 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types -src/v2_std_logic.rs 62 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types -src/std_measure.rs 488 18 Rc i64 rc_depth R1 rc_wrap_only mismatched types -src/v2_std_staging.rs 31 53 B &B generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_staging.rs 31 53 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_text.rs 65 59 i64 Box nominal BOX-WRAP box_wrap_only mismatched types -src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg D alias_arity_generic_argument_count mismatched types -src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg D alias_arity_generic_argument_count mismatched types -src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_realization_schedule.rs 83 19 Rc> Rc>> generic_arg D alias_arity_generic_argument_count src/std_measure.rs:214:8 function defined here mismatched types -src/std_state_durability.rs 152 65 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types -src/std_state_durability.rs 163 70 Rc Rc>> nominal+container ELEM-COLL element_vs_its_own_collection src/v1_rt.rs:379:8 function defined here mismatched types -src/std_state_durability.rs 291 152 StateDefinitionCallerAssertion Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types -src/std_state_durability.rs 636 59 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types -src/std_state_durability.rs 878 59 Rc> Rc>>> nominal+container RESIDUE unclassified_pair: Rc> | Rc>>> src/v1_rt.rs:379:8 function defined here mismatched types -src/v2_std_collection.rs 93 13 HashMap Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_fold_assembly.rs 258 38 Rc>>>>>> Rc>>>> generic_arg ELEM-COLL element_vs_its_own_collection `match` arms have incompatible types -src/std_cache_interface.rs 638 12 Option None nominal+optionality R2 optional_surface_fork mismatched types -src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_cache_interface.rs 667 23 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:961:8 function defined here mismatched types -src/std_cache_interface.rs 667 23 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:961:8 function defined here mismatched types -src/std_cache_interface.rs 695 5 String Option nominal+optionality R2 optional_surface_fork mismatched types -src/std_cache_interface.rs 699 5 String Option nominal+optionality R2 optional_surface_fork mismatched types -src/std_cache_interface.rs 703 5 Rc Option> rc_depth+nominal+optionality R2 optional_surface_fork mismatched types -src/std_cache_interface.rs 703 5 Rc<_> Option> rc_depth+nominal+optionality R2 optional_surface_fork mismatched types -src/std_realization_measurement.rs 96 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_realization_measurement.rs 96 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types -src/std_realization_reconcile.rs 85 65 A &A generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/std_realization_reconcile.rs 85 65 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_model_core.rs 189 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_node_query.rs 150 104 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_node_query.rs 150 104 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types -src/v2_std_provenance.rs 79 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_std_provenance.rs 79 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_lens_determinism.rs 135 42 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_lens_determinism.rs:128:8 function defined here arguments to this function are incorrect -src/v2_lens_determinism.rs 161 64 Witness> Witness generic_arg R1 rc_wrap_at_type_argument_depth /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_cardinality.rs 581 42 Rc>> Rc nominal RESIDUE unclassified_pair: Rc>> | Rc src/v2_std_cardinality.rs:566:8 function defined here arguments to this function are incorrect -src/v2_std_compilers_lexing.rs 235 13 Vector> Rc>> rc_depth+container R1 rc_wrap_only /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_integer.rs 1359 26 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1362 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1365 34 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1368 38 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1371 42 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1374 46 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1377 50 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1380 54 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1383 58 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_std_integer.rs 1400 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types -src/v2_extdeps_runtimes_v2_effect_io_pure.rs 118 23 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_compilers_target_model.rs 2137 43 i64 String nominal RESIDUE unclassified_pair: i64 | String src/v2_std_compilers_target_model.rs:2126:8 function defined here mismatched types -src/v2_std_compilers_target_model.rs 2384 15 String i64 nominal RESIDUE unclassified_pair: String | i64 mismatched types -src/v2_std_compilers_target_model.rs 2647 62 HashMap<_, _> Rc> rc_depth+container R1 rc_wrap_only src/v2_std_algebra.rs:64:8 function defined here mismatched types -src/v2_std_compilers_target_model.rs 7002 90 TargetUseSiteOwnershipLookup TargetUseSiteOwnershipCatalogLookup nominal RESIDUE unclassified_pair: TargetUseSiteOwnershipLookup | TargetUseSiteOwnershipCatalogLookup /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_target_carriers.rs 105 64 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_diagnostic.rs:172:8 function defined here mismatched types -src/v2_compiler_target_carriers.rs 105 64 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_diagnostic.rs:172:8 function defined here mismatched types -src/v2_std_grammar.rs 1285 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types -src/v2_std_grammar.rs 1363 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types -src/v2_std_grammar.rs 1365 12 () Rc>> rc_depth+nominal+container C carrier_collapses_to_unit mismatched types -src/v2_std_grammar.rs 1364 21 Witness>>> Witness<()> generic_arg C carrier_collapses_to_unit /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_extdeps_languages_llvm_ir.rs 1099 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_extdeps_languages_llvm_ir.rs 1123 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_std_language_model.rs 44 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_extdeps_languages_dag.rs 3055 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types -src/v2_extdeps_languages_dag.rs 3055 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types -src/v2_extdeps_languages_dag.rs 3100 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types -src/v2_extdeps_languages_dag.rs 3100 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types -src/v2_extdeps_languages_dag.rs 3145 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types -src/v2_extdeps_languages_dag.rs 3145 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types -src/v2_lens_cost.rs 312 123 Rc Nat rc_depth R1 rc_wrap_only mismatched types -src/v2_lens_cost.rs 315 123 Rc Nat rc_depth R1 rc_wrap_only mismatched types -src/v2_compiler_parse.rs 414 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_parse.rs 414 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_parse.rs 571 27 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_parse.rs 1033 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_parse.rs 1095 53 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_extdeps_runtimes_v2_evaluator.rs 160 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_extdeps_runtimes_v2_evaluator.rs 332 5 Rc Edge rc_depth R1 rc_wrap_only mismatched types -src/v2_lens_machine_shape.rs 190 5 Rc MachineShapeWalkResult rc_depth R1 rc_wrap_only mismatched types -src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg+optionality R2 optional_surface_fork `match` arms have incompatible types -src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg+optionality R2 optional_surface_fork `match` arms have incompatible types -src/v2_compiler_resolve.rs 145 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_infer.rs 164 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_infer.rs 378 63 Witness> Witness generic_arg R1 rc_wrap_at_type_argument_depth /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_infer.rs 513 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_infer.rs 522 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_infer.rs 522 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_name_resolve.rs 493 5 Rc AdmitExportsFold rc_depth R1 rc_wrap_only mismatched types -src/v2_compiler_eval.rs 642 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_eval.rs 662 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_eval.rs 662 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_eval.rs 734 56 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_eval.rs 742 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_eval.rs 752 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_eval.rs 761 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types -src/v2_compiler_eval.rs 850 121 Option<_> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types -src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1192 83 Rc Rc>> nominal+container ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1192 83 Rc>> Rc nominal+container ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1193 87 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1105:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1194 84 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1147:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1195 82 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1151:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1196 82 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1169:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1197 83 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1184:8 function defined here arguments to this function are incorrect -src/v2_compiler_eval.rs 1444 67 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1151:8 function defined here arguments to this function are incorrect -src/v2_compiler_source_authority.rs 698 97 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types -src/v2_compiler_source_authority.rs 699 95 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types -src/v2_compiler_source_authority.rs 732 13 Rc SourceRefReadResult rc_depth R1 rc_wrap_only mismatched types -src/v2_compiler_source_authority.rs 751 50 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types -src/v2_compiler_source_authority.rs 1331 8 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_compiler_source_authority.rs:1311:8 function defined here arguments to this function are incorrect -src/v2_compiler_compile.rs 283 82 Witness> Witness>>>>> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +file line col expected found delta root reason carrier_flags callee callee_kind block_msg +src/v2_extdeps_languages_fidelity.rs 27 79 Feature &Feature generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_extdeps_languages_fidelity.rs 27 79 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 125 116 Rc Edge rc_depth R1 rc_wrap_only src/v2_lens_complexity_accumulator_copy_analyze.rs:99:8 function defined here mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 275 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 284 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 298 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 309 14 Rc LetBinding rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 485 80 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 479 72 Rc>> Rc> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_accumulator_copy_analyze.rs 696 15 Rc> Rc>> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_complexity_lowering.rs 48 13 Vector<()> Vector> generic_arg+container C carrier_collapses_to_unit generic_param_unit_on_one_side mismatched types +src/v2_lens_complexity_lowering.rs 60 104 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types +src/v2_lens_complexity_lowering.rs 68 107 Rc () rc_depth+nominal C carrier_collapses_to_unit src/v2_lens_complexity_lowering.rs:55:8 function defined here mismatched types +src/v2_lens_coverage.rs 52 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 63 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 74 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 85 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 96 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 107 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 118 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 129 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 140 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 151 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 162 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 173 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 184 21 Coverage> CoverageDefectAcceptanceKey nominal D alias_arity_generic_argument_count /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_lens_coverage.rs 214 181 () Rc> rc_depth+nominal C carrier_collapses_to_unit /root/workspace/.home/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/im-15.1.0/src/vector/mod.rs:1366:12 method defined here mismatched types +src/v2_lens_enforcement_standing_intent.rs 215 32 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_lens_enforcement_standing_intent.rs 246 32 Vector Vector> generic_arg+container R1 rc_wrap_at_type_argument_depth mismatched types +src/v2_std_artifact.rs 84 14 Rc>> Refined> rc_depth R1 rc_wrap_only mismatched types +src/v2_std_artifact.rs 84 14 Rc> Refined<_> rc_depth R1 rc_wrap_only mismatched types +src/v2_std_passing_candidate_fold.rs 34 83 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_passing_candidate_fold.rs 34 83 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/std_checked_arithmetic.rs 305 12 Rc i64 rc_depth R1 rc_wrap_only mismatched types +src/v2_std_algebra.rs 152 63 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_algebra.rs 152 63 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_logic.rs 53 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 54 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 57 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 58 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 61 5 Bool True nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/v2_std_logic.rs 62 5 Bool False nominal B2 bool_carrier_vs_native_or_variant mismatched types +src/std_measure.rs 488 18 Rc i64 rc_depth R1 rc_wrap_only mismatched types +src/v2_std_staging.rs 31 53 B &B generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_staging.rs 31 53 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_text.rs 65 59 i64 Box nominal BOX-WRAP box_wrap_only mismatched types +src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg D alias_arity_generic_argument_count generic_params_unit_on_both_sides+generic_param_binding_differs mismatched types +src/std_realization_schedule.rs 64 11 Rc>> Rc> generic_arg D alias_arity_generic_argument_count generic_param_binding_differs mismatched types +src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth generic_params_unit_on_both_sides mismatched types +src/std_realization_schedule.rs 74 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_schedule.rs 83 19 Rc> Rc>> generic_arg D alias_arity_generic_argument_count generic_param_unit_on_one_side+generic_param_binding_differs src/std_measure.rs:214:8 function defined here mismatched types +src/std_state_durability.rs 152 65 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types +src/std_state_durability.rs 163 70 Rc Rc>> nominal+container ELEM-COLL element_vs_its_own_collection src/v1_rt.rs:379:8 function defined here mismatched types +src/std_state_durability.rs 291 152 StateDefinitionCallerAssertion Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types +src/std_state_durability.rs 636 59 StateDurabilityBoundary Vector> nominal+container ELEM-COLL element_vs_its_own_collection mismatched types +src/std_state_durability.rs 878 59 Rc> Rc>>> nominal+container RESIDUE unclassified_pair: Rc> | Rc>>> src/v1_rt.rs:379:8 function defined here mismatched types +src/v2_std_collection.rs 93 13 HashMap Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_fold_assembly.rs 258 38 Rc>>>>>> Rc>>>> generic_arg ELEM-COLL element_vs_its_own_collection `match` arms have incompatible types +src/std_cache_interface.rs 638 12 Option None nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth generic_params_unit_on_both_sides mismatched types +src/std_cache_interface.rs 652 22 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_cache_interface.rs 667 23 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth generic_params_unit_on_both_sides src/std_measure.rs:961:8 function defined here mismatched types +src/std_cache_interface.rs 667 23 Rc> Rc>> generic_arg R1 rc_wrap_at_type_argument_depth src/std_measure.rs:961:8 function defined here mismatched types +src/std_cache_interface.rs 695 5 String Option nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 699 5 String Option nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 703 5 Rc Option> rc_depth+nominal+optionality R2 optional_surface_fork mismatched types +src/std_cache_interface.rs 703 5 Rc<_> Option> rc_depth+nominal+optionality R2 optional_surface_fork mismatched types +src/std_realization_measurement.rs 96 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth generic_params_unit_on_both_sides mismatched types +src/std_realization_measurement.rs 96 11 Rc>> Rc> generic_arg R1 rc_wrap_at_type_argument_depth mismatched types +src/std_realization_reconcile.rs 85 65 A &A generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/std_realization_reconcile.rs 85 65 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_model_core.rs 189 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_node_query.rs 150 104 T &T generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_node_query.rs 150 104 _ &_ generic_arg+borrowed A-clone generic_param_clone_bound_absent mismatched types +src/v2_std_provenance.rs 79 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_std_provenance.rs 79 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_lens_determinism.rs 135 42 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_lens_determinism.rs:128:8 function defined here arguments to this function are incorrect +src/v2_lens_determinism.rs 161 64 Witness> Witness generic_arg R1 rc_wrap_at_type_argument_depth /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_cardinality.rs 581 42 Rc>> Rc nominal RESIDUE unclassified_pair: Rc>> | Rc src/v2_std_cardinality.rs:566:8 function defined here arguments to this function are incorrect +src/v2_std_compilers_lexing.rs 235 13 Vector> Rc>> rc_depth+container R1 rc_wrap_only /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_integer.rs 1359 26 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1362 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1365 34 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1368 38 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1371 42 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1374 46 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1377 50 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1380 54 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1383 58 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_std_integer.rs 1400 30 Rc {integer} rc_depth+nominal B3 modeled_numeric_vs_native mismatched types +src/v2_extdeps_runtimes_v2_effect_io_pure.rs 118 23 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_compilers_target_model.rs 2137 43 i64 String nominal RESIDUE unclassified_pair: i64 | String src/v2_std_compilers_target_model.rs:2126:8 function defined here mismatched types +src/v2_std_compilers_target_model.rs 2384 15 String i64 nominal RESIDUE unclassified_pair: String | i64 mismatched types +src/v2_std_compilers_target_model.rs 2647 62 HashMap<_, _> Rc> rc_depth+container R1 rc_wrap_only src/v2_std_algebra.rs:64:8 function defined here mismatched types +src/v2_std_compilers_target_model.rs 7002 90 TargetUseSiteOwnershipLookup TargetUseSiteOwnershipCatalogLookup nominal RESIDUE unclassified_pair: TargetUseSiteOwnershipLookup | TargetUseSiteOwnershipCatalogLookup /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_target_carriers.rs 105 64 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_diagnostic.rs:172:8 function defined here mismatched types +src/v2_compiler_target_carriers.rs 105 64 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_diagnostic.rs:172:8 function defined here mismatched types +src/v2_std_grammar.rs 1285 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types +src/v2_std_grammar.rs 1363 29 Rc DeriveGrammarRelationTokensProgress rc_depth R1 rc_wrap_only mismatched types +src/v2_std_grammar.rs 1365 12 () Rc>> rc_depth+nominal+container C carrier_collapses_to_unit mismatched types +src/v2_std_grammar.rs 1364 21 Witness>>> Witness<()> generic_arg C carrier_collapses_to_unit generic_param_unit_on_one_side /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_languages_llvm_ir.rs 1099 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_languages_llvm_ir.rs 1123 13 HashMap> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_std_language_model.rs 44 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3055 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3055 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3100 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3100 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3145 56 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_extdeps_languages_dag.rs 3145 56 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_extdeps_languages_dag.rs:2964:8 function defined here mismatched types +src/v2_lens_cost.rs 312 123 Rc Nat rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_cost.rs 315 123 Rc Nat rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_parse.rs 414 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_parse.rs 414 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_parse.rs 571 27 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_parse.rs 1033 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_parse.rs 1095 53 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_runtimes_v2_evaluator.rs 160 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_extdeps_runtimes_v2_evaluator.rs 332 5 Rc Edge rc_depth R1 rc_wrap_only mismatched types +src/v2_lens_machine_shape.rs 190 5 Rc MachineShapeWalkResult rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg+optionality R2 optional_surface_fork `match` arms have incompatible types +src/v2_compiler_body_lowering_fold.rs 3176 13 Rc>>> Rc>> generic_arg+optionality R2 optional_surface_fork `match` arms have incompatible types +src/v2_compiler_resolve.rs 145 13 OrdSet Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 164 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 378 63 Witness> Witness generic_arg R1 rc_wrap_at_type_argument_depth /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 513 20 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_infer.rs 522 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_infer.rs 522 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_name_resolve.rs 493 5 Rc AdmitExportsFold rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_eval.rs 642 13 HashMap, Rc> Rc> rc_depth+nominal+container T3 collection_carrier_fork /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 662 27 Option> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_eval.rs 662 27 Option> Rc<_> rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_eval.rs 734 56 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 742 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 752 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 761 17 Witness> Witness> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types +src/v2_compiler_eval.rs 850 121 Option<_> Rc rc_depth+nominal+optionality R2 optional_surface_fork src/v2_std_witness.rs:26:8 function defined here mismatched types +src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc Rc>> nominal+container ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc Rc nominal ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1192 83 Rc>> Rc nominal+container ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1098:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1193 87 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1105:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1194 84 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1147:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1195 82 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1151:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1196 82 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1169:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1197 83 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1184:8 function defined here arguments to this function are incorrect +src/v2_compiler_eval.rs 1444 67 ARG-ORDER call_argument_order_diverges_from_declaration src/v2_compiler_eval.rs:1151:8 function defined here arguments to this function are incorrect +src/v2_compiler_source_authority.rs 698 97 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types +src/v2_compiler_source_authority.rs 699 95 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types +src/v2_compiler_source_authority.rs 732 13 Rc SourceRefReadResult rc_depth R1 rc_wrap_only mismatched types +src/v2_compiler_source_authority.rs 751 50 Rc Rc nominal DIAG diagnostic_carrier_fork src/v2_std_diagnostic.rs:179:8 function defined here mismatched types +src/v2_compiler_source_authority.rs 1331 8 Rc Rc nominal RESIDUE unclassified_pair: Rc | Rc src/v2_compiler_source_authority.rs:1311:8 function defined here arguments to this function are incorrect +src/v2_compiler_compile.rs 283 82 Witness> Witness>>>>> generic_arg W witness_type_argument /rustc/8bab26f4f68e0e26f0bb7960be334d5b520ea452/library/alloc/src/rc.rs:419:11 associated function defined here mismatched types diff --git a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md index de68e9dc185..6f7d7fc5a88 100644 --- a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md +++ b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md @@ -35,6 +35,14 @@ carrier-keyed and context-keyed arms is now declared in the classifier and in th | DIAG diagnostic carrier fork | 3 | 1.9% | | BOX-WRAP `Box` wrap decision (**NEW**) | 1 | 0.6% | +## Carrier flags (beside the root, not a category) + +Six sites sit on the `Measure` carrier whose stage0 alias-emission collapse is already documented +with a dissolve-on at `std.measure` `billing_month_as_hour_count_representation_note`, split R1 4 / +D 2 / C 2 by their deltas. They are joinable by the `carrier_flags` column rather than pooled into +an arm: at `std_cache_interface.rs:652`/`:667` the collapse is on BOTH sides, so it is invisible in +the mismatch and no pair-keyed rule can recover it. + ## Prior-root dispositions - **StillLive:** R1, R2, T3, D, A-clone, ARG-ORDER, B3, W, B2, C, DIAG (D, ARG-ORDER and B2 are From 36b56cf7fc89b04cf2ef2fe241b3d03642da6f70 Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 11:13:05 +0000 Subject: [PATCH 6/7] Record the eliminated competitor for the Measure collapse: the wrap verdict is confluent, so the alias reading is narrowed-to but still not established MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit royal-dove-436's trace (with a byte-identical traced/untraced control) shows Nat in shared_types at all 8 consulting producers and Int at none, so a forking wrap policy — the only live rival explanation for the opposite directions at cache_interface vs realization_* — is out. The cause row stays note-plus-shape-match: the trace answers the wrap predicate, not which emitter produced each declaration. Co-Authored-By: Claude Opus 5 --- docs/probes/e0308_partition_2026-08-22.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/probes/e0308_partition_2026-08-22.md b/docs/probes/e0308_partition_2026-08-22.md index d2823f507fe..c4be6038431 100644 --- a/docs/probes/e0308_partition_2026-08-22.md +++ b/docs/probes/e0308_partition_2026-08-22.md @@ -210,6 +210,16 @@ whose defining fact the classifier cannot see. **What is not claimed:** that the alias path *causes* the collapse. The evidence is the in-corpus note plus a shape match on these rows; the producer of each declaration was not traced in this run. +**One competitor eliminated, by `royal-dove-436`'s trace (2026-08-22), which narrows the field +without closing it.** The obvious rival explanation for the opposite-looking directions at +`cache_interface` versus `realization_*` was a *forking wrap policy* — producers disagreeing about +whether `Nat` is shared. It is not forking: `Nat` is in `shared_types` at all 8 producers that +consult it, in type and value position alike, and `Int` at none, with a behaviour-preservation +control (traced and untraced emission byte-identical). So the direction split must come from +upstream of the wrap decision, which is exactly where the documented alias-collapse path sits. That +trace answers the wrap predicate, **not** which emitter produced each declaration, so the cause row +above stands as note-plus-shape-match rather than being upgraded. + ## Residue — printed in full, never absorbed | file | line | expected \| found | delta | callee note | From 724bf8a488a98fe0b83faab8533c0ef5783e0825 Mon Sep 17 00:00:00 2001 From: Brian Searls Date: Sat, 22 Aug 2026 17:34:31 +0000 Subject: [PATCH 7/7] Carry the completeness standing on the stamp: a bare row count overstates what is known Adopts the reporting convention (VISIBLE CANARY + DIAGNOSTIC COVERAGE standing) on the artifact other lanes copy figures from, and states the two unit traps in place: do not add 68 canonical sites to a coded-row total, and a post-unmask RISE is diagnostic completion rather than regression. Co-Authored-By: Claude Opus 5 --- .../e0308_partition_2026-08-22/summary_stamp.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md index 6f7d7fc5a88..a0cb932eb16 100644 --- a/docs/probes/e0308_partition_2026-08-22/summary_stamp.md +++ b/docs/probes/e0308_partition_2026-08-22/summary_stamp.md @@ -1,5 +1,21 @@ # E0308 repartition on current main (mechanism grain, M=1) +## Completeness standing (reporting convention adopted 2026-08-22) + +``` +VISIBLE CANARY coded rustc rows: 316 | subject: 03_ingest closure (M=1) | ref: 967b5bc1b92 + canonical E0308 sites: 154 +DIAGNOSTIC COVERAGE standing: PARTIAL + known censor LexMatchThunk.apply / generic-instantiation failure (E0599 aborts before + inference reaches the expressions behind it) + historical masked ~68 canonical tokenize sites (2026-08-21 board, different ref) + current successor UNMEASURED until the censor is removed +``` + +A bare row count with no coverage standing overstates what is known. **Do not add 68 to any board +total** — different units (canonical sites vs coded rustc rows) and different tree states. When the +censor is removed the board will RISE, and that is diagnostic completion, not regression. + | field | value | |---|---| | git_sha | `967b5bc1b92ee66250e06a7870c132b48a16b80a` (requested `967b5bc1b92`; echoed from inside the remote dispatch and pinned by `PROBE_EXPECT_BASE_SHA`) |