Landin the evidence registers discuss source

Evidence registers

Four tables that say what the compiler's evidence is, rather than what is left to do. They are source: check.py reads them, holds every row to the fixture corpus, the compiler's named-refusal tables and the target records, and generates constructs.matrix, prototypes.matrix and targets.matrix from them. Edit a row here and regenerate; never edit a matrix.

They were kept in ROADMAP.md while the first roadmap built the compiler, and moved here when it closed.

Construct inventory

One row for every [NNNN] either tour.md or spec.md defines. It is generated into constructs.matrix, where each row is joined with what the corpus claims per product target, read from fixture metadata together with darwin/parity.json, cortex-m/corpus.json and driver/fixture.json, and with every named refusal and the wording of its [1830] note.

  • State. executed: fixtures claim acceptance, emission and execution, and every applicable target outside the recorded gaps executes a claiming program. compiled: the observable behaviour is a compile-time verdict, acceptance with recorded IR or a refusal, that no run can observe more of; such a hosted row must also be in the hosted compile-time register below. deferred: the tour itself says DEFERRED and a live roadmap item owns the decision. transferred: the tour already assigns the construct to a named successor family. advisory: design, usage or process prose that adds no source behaviour a fixture could discriminate. A named refusal is not a state; it is part of a row.
  • Targets are all (Linux x86-64, arm64 and RV64, FreeBSD x86-64 and arm64, macOS arm64 and Cortex-M), hosted, cortex-m or none; cortex-m is the Cortex-M family, today cortex-m0 alone, and a scope rather than a target's spelling. synthetic-32 is a pre-Cortex model and applies to no construct. rv32, the RV32 firmware target, is no product target and has no column (D840): it runs the firmware corpus on two lanes, but [1270], [1400], [1570], [1610], [1730], [1830] and [1860] have their Cortex-M evidence only from records that are Cortex-M's alone, the derived driver, the firmware machine probe and fixtures that select cortex-m0, so accounting every construct on it would open gaps no item owns. A fixture that names it is still held to a run there: a compile-time one selects --target=rv32, and a runtime or ABI one has a firmware corpus row an RV32 lane executes. Gaps are applicable targets without the state's evidence, and every gap needs an owning item.
  • Owners are live roadmap items or successor families. A finished owner, an unknown owner or an owner the disposition does not mention is refused. A disposition of "matrix evidence" means the generated row's evidence is the whole explanation.

check.py holds all of it on every full run, and scripts/tests/test_construct_inventory.py shows each refusal fires.

Construct State Targets Gaps Owner Disposition
[0010] executed all none none matrix evidence
[0020] executed all none none matrix evidence
[0030] executed all none none matrix evidence
[0040] executed all none none matrix evidence
[0050] executed all none none matrix evidence
[0060] executed all none none matrix evidence
[0070] executed all none none matrix evidence
[0080] executed all none none matrix evidence
[0090] executed all none none matrix evidence
[0100] executed all none none Atom name lists and D233's shared binding, field, parameter and return names are matrix evidence on all three targets. The inferred a, b := e shape and the declarations that keep one name are D233's recorded boundary, which the refusal note names.
[0110] executed all none none matrix evidence
[0120] executed all none none matrix evidence; a named refusal records the type source-form boundary
[0130] executed all none none matrix evidence
[0140] executed all none none matrix evidence
[0150] executed all none Language evolution The enabled widths are matrix evidence. D237 transfers u128 and i128 to Language evolution, triggered by a program that needs 128-bit arithmetic, and the checker's named refusal says so. Arbitrary packed widths are D228's, admitted only in packed fields [0730].
[0160] executed all none none matrix evidence
[0170] executed all none Language evolution f32 and f64 are matrix evidence. D237 transfers f16 to Language evolution, triggered by a program that needs binary16 values, and the checker's named refusal says so.
[0180] executed all none none matrix evidence
[0190] executed all none none matrix evidence
[0200] executed all none none matrix evidence
[0210] executed all none none matrix evidence
[0220] executed all none none matrix evidence
[0230] executed all none none matrix evidence
[0240] executed all none none matrix evidence
[0250] executed all none none matrix evidence
[0260] executed all none none matrix evidence
[0270] executed all none none matrix evidence
[0280] executed all none none matrix evidence
[0290] executed all none none matrix evidence
[0300] executed all none none matrix evidence
[0310] executed all none none matrix evidence
[0320] executed all none none matrix evidence
[0330] executed all none none matrix evidence
[0340] executed all none none matrix evidence
[0350] executed all none none matrix evidence
[0360] executed all none none matrix evidence
[0370] executed all none none matrix evidence
[0380] executed all none none matrix evidence
[0390] executed all none none matrix evidence
[0400] executed all none none matrix evidence
[0410] executed all none none matrix evidence
[0420] executed all none none matrix evidence
[0430] executed all none none matrix evidence
[0440] executed all none none matrix evidence
[0450] executed all none none matrix evidence
[0460] executed all none none matrix evidence
[0470] executed all none none matrix evidence
[0480] executed all none none The one-atom optional pointer (D189) and D235's several-atom union, the atom's code beside the pointer, are matrix evidence on all three targets, with GDB and LLDB presentation of both cases.
[0490] advisory none none none Usage guidance: pointers serve hardware, the C boundary and library internals, while everyday code uses slices, handles and indices. It states no rule the compiler enforces or a fixture could discriminate; the operations it points to are [0430]-[0480]'s rows.
[0500] executed all none none D196 records offset and base_of as unneeded; D151 rejects slice_from; ordinary address conversion remains the implementation
[0510] executed all none none matrix evidence
[0520] executed all none none Array values, bounds and copies are matrix evidence; D241 adds whole-array discards and inferred literals of any element shape. Its checker refusals of the remaining forms are D241's recorded boundaries, which the note names, genuine type errors among them are L0301, and misused whole arrays are L0334.
[0530] executed all none none matrix evidence
[0540] executed all none none Zero images are matrix evidence. The local-array zeroed refusal is a guard no source reaches; D241 keeps it as a recorded boundary, and zeroed as an operand, which has no destination to take its type from, is L0328.
[0550] executed all none none matrix evidence
[0560] executed all none none Typed, counted and mixed repetition are matrix evidence, and a named refusal records the repetition source-form boundary. D241 records the count-less inferred initializer, non-scalar counted inference and zero lengths as the paragraph's boundary.
[0570] executed all none none matrix evidence; a named refusal records the indexing source-form boundary, which requires a named place
[0580] executed all none none matrix evidence
[0590] executed all none none D209 and matrix evidence
[0600] executed all none none matrix evidence
[0610] executed all none none matrix evidence
[0620] transferred none none Language evolution The tour keeps structure-of-arrays as a DEFERRED design record and now says Language evolution holds it, where the register in ROADMAP.md keeps its trigger, because none of the four derived programs is a simulation that needs one field contiguous. Nothing enables soa, which meets an ordinary parse error, and no named refusal is owed to a form the tour places outside the language.
[0630] executed all none none matrix evidence
[0640] executed all none none matrix evidence
[0650] executed all none none named refusal
[0660] executed all none none Scalar range subtypes are matrix evidence under D188. D236 records the struct-field, array-element, reference-target, addr and generic-argument positions as the paragraph's permanent boundary, and their named refusals say so.
[0670] executed all none none Both struct forms are matrix evidence, and a named refusal records the inline-struct source-form boundary. D241 adds whole-struct discards and inferred struct copies, makes misused struct values L0334 errors, and records the untyped literal and module-image forms as boundaries the note names.
[0680] executed all none none Variant declaration, storage, construction and matching are matrix evidence, and D241 gives payload arrays every ordinary array-field expression. A variant part as a value, a case outside its part and a copied part are D241's recorded boundaries, which the note names.
[0690] executed all none none matrix evidence
[0700] executed all none none matrix evidence
[0710] executed all none none matrix evidence
[0720] executed all none none matrix evidence; a named refusal records the all-of literal source-form boundary
[0730] executed all none Companion tool and ecosystem D228 packed images, encoded unions and named-boolean set fields are matrix evidence on all three targets, the derived driver on Cortex-M. D238 withdraws the set(X) former, whose unresolved application meets [1350]'s ordinary refusal. General SVD generation stays with Companion tool and ecosystem, as the paragraph says.
[0740] executed all none none D228 access modes and register operations are matrix evidence, including the generated RP2040 consumers and the derived driver. D238 withdraws the register(t, read:, write:, reset:) wrapper, which remains an ordinary parse error.
[0750] executed all none none Source order, optimal and C layout are matrix evidence. D239 withdraws per-field byte order; negative/r720-field-byte-order-withdrawn pins that big u16 is an ordinary field error.
[0760] executed all none none The enabled attributes are matrix evidence, including Cortex-M placement. D238 withdraws volatile with its pointer type and D239 withdraws big, little, weak, inline and noinline; negative/r720-machine-attribute-words-withdrawn pins link(weak).
[0770] executed all none none matrix evidence
[0780] executed all none none matrix evidence
[0790] executed all none none matrix evidence
[0800] executed all none none matrix evidence
[0810] executed all none none D196 states [0470]'s actual derivation cut; the pointer.integer-origin evidence pins its non-guarantee
[0820] executed all none none D212 withdraws the lexical block and builtin parameter type, and both keep a named withdrawal diagnostic; explicit ordinary allocator authority, capacity and cleanup replace the unsupported transitive escape promise
[0830] executed all none none matrix evidence
[0840] executed all none none matrix evidence
[0850] executed all none none D227 volatile scalar access is matrix evidence on all three targets. D238 withdraws the volatile ptr type; its named L0010 says the form is withdrawn and names the explicit volatile and register operations.
[0860] executed all none none matrix evidence
[0870] executed all none none matrix evidence
[0880] executed all none none matrix evidence
[0890] executed all none none none and noreturn have matrix evidence, and a noreturn body that can return is refused
[0900] executed all none none matrix evidence
[0910] executed all none none matrix evidence
[0920] executed all none none matrix evidence
[0930] executed all none none matrix evidence
[0940] executed all none none matrix evidence
[0950] executed all none none matrix evidence
[0960] executed all none none matrix evidence
[0970] executed all none none matrix evidence
[0980] executed all none none matrix evidence
[0990] executed all none none matrix evidence
[1000] executed all none none matrix evidence
[1010] executed all none none matrix evidence
[1020] executed all none none matrix evidence
[1030] executed all none none matrix evidence
[1040] executed all none none D192 and matrix evidence
[1050] executed all none none matrix evidence
[1060] executed all none none matrix evidence
[1070] executed all none none D185 and matrix evidence
[1080] executed all none none matrix evidence
[1090] executed all none none Unlabelled begin/end blocks and D234's labelled bare blocks, left by a break naming them with their cleanups run, are matrix evidence on all three targets.
[1100] executed all none none matrix evidence
[1110] executed all none none matrix evidence
[1120] executed all none none D187 and matrix evidence; the division, shift, bool, float and text edges it never removes are named there rather than refused
[1130] executed all none none matrix evidence
[1140] executed all none none matrix evidence
[1150] executed all none none matrix evidence
[1160] executed all none none matrix evidence
[1170] executed all none none matrix evidence
[1180] executed all none none Loop labels and D234's bare-block labels are matrix evidence on all three targets; continue naming a block and break with targeting one are refused. No derived program or core uses a label, break with or complete, so whether they earn their place is a Language evolution watch in the register; the construct stays implemented.
[1190] executed all none none matrix evidence
[1200] executed all none none matrix evidence
[1210] executed all none none matrix evidence
[1220] executed all none none matrix evidence
[1230] executed all none none matrix evidence
[1240] executed all none none matrix evidence
[1250] executed all none none matrix evidence
[1260] executed all none none matrix evidence
[1270] compiled all none none Hosted compile-time rule: conformance keys include their input tuples. The Cortex-M verdict is a run rather than an argument that the rule is target-neutral: negative/r740-cortex-conformance-input-keys compiles the colliding program for cortex-m0 and records the same L0317 report, byte for byte, as the two hosted targets make.
[1280] executed all none none matrix evidence
[1290] executed all none none matrix evidence; a named refusal records the type-parameter source-form boundary
[1300] executed all none none matrix evidence
[1310] executed all none none Evidence tables and D211's proved specialization and build report are matrix evidence; no delayed part remains.
[1320] executed all none none matrix evidence
[1330] executed all none none matrix evidence
[1340] executed all none none matrix evidence
[1350] executed all none none Parameterized declarations are matrix evidence. Malformed applications are D135's recorded boundary, and the named refusal says so, which negative/r740-parameterized-application-boundary pins byte for byte. set(X), which D238 withdrew, meets this refusal as an unresolved application.
[1360] executed all none none matrix evidence
[1370] executed all none none matrix evidence
[1380] executed all none none matrix evidence
[1390] executed all none none matrix evidence
[1400] compiled all none none Hosted compile-time rule: heterogeneous implicit boxing is refused. The Cortex-M verdict: negative/r740-cortex-inferred-element-mismatch records the same L0301 report there, byte for byte, as the two hosted targets make.
[1410] executed all none none matrix evidence
[1420] executed all none none matrix evidence
[1430] executed all none none D201 aliases retain file-local namespace lookup
[1440] executed all none none D201 selected imports retain original public declaration identities
[1450] executed all none none matrix evidence
[1460] executed all none none matrix evidence
[1470] transferred none none Companion tool and ecosystem Versions, origins, owner/package naming and the version-conflict error belong to Companion tool and ecosystem, which [1480] says arranges the roots so only one version is reachable, and the register in ROADMAP.md carries the transfer. The compiler's share is [1420]'s first-root rule, covered by the driver and resolution suites rather than a fixture claim.
[1480] executed all none Companion tool and ecosystem Explicit ordered roots are matrix evidence. Root defaults for the project, user home and system, fetching, version solving, locks and naming authority are Companion tool and ecosystem's, as the paragraph says.
[1490] executed all none none matrix evidence
[1500] executed all none none matrix evidence
[1510] executed all none none D202 and fixed assertion fixtures
[1520] executed all none none matrix evidence
[1530] executed all none none D202 and deterministic typed option cases
[1540] executed all none none matrix evidence
[1550] advisory none none none Toolchain policy: Landin keeps its own native backends, not LLVM or C. No fixture can discriminate it, and the claims once attached to it were D211, D229 and D230 evidence and were removed. Its concrete obligations are other rows' and lanes': the [1570] and [1650] conventions, [1990] firmware, the quality determinism rebuild and the native debugger frame checks.
[1560] executed all none none Compiler facts and assertions, linker.library, atomics, volatile and register operations and Cortex-M assembly and placement are matrix evidence; other tool operations meet named refusals. D240 withdraws the compiler vector intrinsics in favour of [0590]'s element-wise operators, pinned by negative/r720-vector-intrinsic-withdrawn.
[1570] executed all none none extern(c), extern(interrupt) and extern(naked) are matrix evidence; the derived driver's interrupt handlers execute on Cortex-M. aapcs, sysv, win64, Fortran and Swift are named as room for later conventions, not described constructs.
[1580] executed hosted none none The hosted C boundary is matrix evidence under D203--D205. The checker once had a [1580] refusal entry that nothing reached; the categories the paragraph lists are refused where they are written, as the C boundary's own L0346 naming [1580] and listing them, which negative/r740-c-category-boundary pins byte for byte. Cortex-M C signatures are not enabled, a restriction the register in ROADMAP.md keeps open.
[1590] executed hosted none none Hosted library linkage as the driver's -lNAME, with linker.directory and -L: runtime/c-library-directories on every hosted lane, Darwin's in the gate, with the refusals' end-to-end and negative fixtures; Cortex-M refuses the general C surface.
[1600] executed hosted none none Hosted C definitions are matrix evidence; Cortex-M C signatures are restricted.
[1610] executed all none none Native and C link names are matrix evidence on both hosts. The Cortex-M evidence executes outside the fixture corpus: the firmware-machine probe gives a module datum and a native function their link names, and its QEMU session resolves both written symbols in the linked image, recorded in compiler/tests/cortex-m/probes.json. The extern(c) half stays disabled there, a restriction the register in ROADMAP.md keeps open.
[1615] executed all none none Taught by [1996]'s fixtures: runtime/thread-storage-holds-its-instance on every target and abi/thread-storage-per-thread's four C threads on every hosted one.
[1620] executed all none none D227 scalar atomics, orderings and barriers are matrix evidence on all three targets. D240 transferred the wrapper type to Broader standard library, and core/atomic gives it: D500, D510 and D511, with runtime/library-shared-atomic on every target.
[1630] executed all none none The runtime assembly-* fixtures execute D248's operands on every target, Cortex-M0 under QEMU, and every hosted lane must execute assembly-operands's integer operands; the verifier refuses a register no arm64 block may name under both arm64 descriptions, and the lane's assembler refuses an instruction above the build's level and assembles it at that level (D255); platform/cortex_m and the freestanding CPU probe run them in the firmware lanes, and the GDB, LLDB and Cortex GDB sessions stop on a block's line. D630's float operands execute on every hosted lane and the M7's mps2-an500 lane through assembly-float-square-root and assembly-saved-float-registers, and a profile with no float registers, the reference and the AN505's among them, refuses one as its recorded boundary.
[1640] executed cortex-m none none Cortex-M placement, vectors and keep under D229 execute in the derived driver; hosted targets refuse placement by design.
[1650] executed all none none matrix evidence
[1660] executed hosted none none matrix evidence; the freestanding root is [0460]'s address literal
[1670] executed all none none matrix evidence
[1675] executed all none none Groups over fibre.whole and a round of turns, the first failure kept for join and a task's own overflow trapped are matrix evidence. The blocking host as a scheduler and a round that answers b first are hosted, and Cortex-M0's group over the round runs in the corpus and the lane's capacity control. turns_over refused for a scheduler alone is negative/fibre-turns-over-scheduler-only.
[1680] executed hosted none none Matrix evidence covers passing entry-minted capabilities and substituting the in-memory I/O provider. runtime/derived-hosted-memory also has an ordinary parameterless long_lines helper that calls heap.new(): D258 and capabilities.host-root-exclusion record that a parameter list cannot exclude an independent host root. The freestanding root is [0460]'s address literal. The language-evolution record remains open for a trusted-code need for checkable host exclusion or unaudited provider substitution, as well as for untrusted code; no such static boundary is claimed by these fixtures.
[1690] executed all none none matrix evidence
[1700] executed all none none matrix evidence
[1710] advisory none none none The admission test for a new language feature, a design-process rule. It adds no source behavior; the parked and watched items it governs are records in the register in ROADMAP.md.
[1720] executed all none none matrix and guarantee evidence; its stated non-guarantees execute
[1730] compiled all none none positive/range-subtypes' recorded IR shows a range-subtype value carrying its proof with no check under D188, a hosted compile-time rule in the audited register below; two claims that could not observe elision were dropped. The Cortex-M verdict is on that same fixture, which now also records an accepted cortex-m0 compilation of its own program. That verdict is acceptance and not a second recorded IR because the elision is a property of the target-neutral IR, which no target selects, and a duplicate program would have added a duplicate IR record for nothing.
[1740] executed all none none matrix evidence
[1750] executed all none none matrix evidence
[1760] executed all none none matrix evidence
[1770] executed all none none matrix evidence
[1780] executed all none none matrix evidence
[1790] executed all none none matrix evidence
[1795] executed all none none matrix evidence
[1800] executed all none none matrix evidence
[1810] executed all none none matrix evidence
[1820] executed all none none matrix evidence
[1830] compiled all none none Hosted compile-time rule: a refusal by name is a diagnostic and nothing executes it. negative/cortex-refused-type-named records the same L0304 report for cortex-m0, byte for byte, as the two hosted targets make.
[1840] executed all none none matrix evidence
[1850] executed all none none matrix evidence
[1860] compiled all none none Hosted compile-time rule. The Cortex-M verdict: negative/r740-cortex-name-declared-nowhere records the same L0201 report for cortex-m0, byte for byte, as the two hosted targets make.
[1870] executed all none none matrix evidence
[1880] executed all none none matrix evidence
[1890] executed all none none matrix evidence
[1900] executed all none none matrix evidence
[1910] executed all none none matrix evidence
[1920] executed all none none matrix evidence
[1930] executed all none none matrix evidence
[1940] executed all none none matrix evidence
[1950] executed all none none matrix evidence
[1960] executed all none none matrix evidence
[1970] executed hosted none none matrix evidence; the hosted entry shape
[1975] executed hosted none none matrix evidence; Cortex-M C boundaries are restricted
[1980] executed all none none matrix evidence
[1990] executed cortex-m none none D229 and D230 firmware and machine directives execute through compiler-owned firmware and the derived driver; hosted targets select them away.
[1995] executed all none none The stack builtins' round trip, a frame past its limit and a selected handler entered from a prologue execute on every target, Cortex-M0 included; a prepare too small is hosted; their refusals are negative/stack-builtins-argument-contract and negative/stack-builtins-target-synthetic-32.
[1996] executed all none none link(thread) instances execute on every target, ordinary module storage on Cortex-M0, laid by platform/linux's start in a static Linux program and by the C library otherwise; four C threads each reach their own on every hosted target, and a system.new() handle shared by two records into each one's cell; its refusals are the negative/thread-storage-* fixtures.
[2000] advisory none none none A doc comment gives a program no meaning, so no fixture can discriminate it; D254 records the attachment a tool shows, and the server suite's doc-comment case and hover session pin it.

Hosted compile-time evidence

These rules are observed while compiling. Every other hosted row in the inventory requires a Linux runtime or ABI fixture with a program and an attributed construct; a compiled hosted row must appear here instead, with the fixtures that accept and refuse it. The metadata is an auditable claim, not proof of the source oracle's adequacy. This table does not withdraw any construct.

Construct Accepted Refused Rationale
[1270] positive/r490-conformance-input-keys negative/conformance-collision, negative/r490-conformance-input-alias-collision Whole-program conformance keys include normalized input tuples; unequal keys coexist and equal keys collide before runtime.
[1400] none negative/local-array-literal-inferred-element-mismatch Heterogeneous implicit boxing is deliberately absent; mismatched element types are rejected. Ordinary explicit any dispatch has separate executed rows.
[1730] positive/range-subtypes none A range-subtype value carries its proof between constrained positions; the recorded IR has no second check. A run cannot observe an elided check, so the row is here rather than among the advisory rows.
[1830] none negative/float-type-not-enabled, negative/indexing-not-enabled A construct the tour describes and the kernel has not enabled is refused with a diagnostic that names it and says what it is; the observable behaviour is that diagnostic.
[1860] none negative/name-declared-nowhere, negative/condition-declaration-out-of-scope Every name must resolve in its scope; the observable failure is a compiler diagnostic.

Prototype derivation coverage

A row means the fixture is a completed executable or negative derivation of the named pressure, not merely that it uses a construct the prototype also used. Source line numbers in the generated prototypes.matrix are recovered from the finding labels, so moving prose cannot stale a hand-copied location, and each row's inputs, outputs and per-target results are derived from the fixture's own record rather than asserted here.

Fixture Prototype Findings Pressure
firmware/derived-driver P1 X1, X2, X3, X4, X5, X6, X7, X8, X9 complete driver/application and explicit declaration/finding adaptations in compiler/tests/driver/DERIVATION.md; compiler-owned QEMU reset and independent synthetic device protocol execution
negative/r630-frame-dma P1 X6, X8 tracked frame buffer cannot escape through a DMA descriptor
abi/r630-dma-slice P1 X6, X8 escaping ordinary slice, serialized external byte writes, completion boundary and ordinary reads/copy
runtime/diagnostic-loggers-dispatch P2 Y1 recoverable diagnostics use a bounded or streaming capability without becoming parser failure
runtime/derived-parser P2 Y1, Y4, Y5, Y6, Y7 a complete recursive parser builds an arena AST, logs and recovers from syntax faults, and propagates allocation or diagnostic-delivery failure through shared erased evidence
runtime/derived-containers P3 Z1, Z2, Z3, Z4, Z5, Z6, Z7, Z8, Z9, Z10, Z11, Z12, Z13, Z14, Z15, Z16, Z17, Z18, Z19 the complete client composes initialized containers, explicit and failing providers, sorting, tree and heterogeneous evidence; its derivation manifest distinguishes executable resolutions from preserved no-gap or superseded sketches
negative/r470-container-entry-live-map P3 Z5, Z16 a pointer-bearing enumerated entry keeps its map live across insertion and release
negative/r470-container-entry-wrong-from P3 Z5 entry extraction retains the exact map origin
negative/r470-container-missing-order-evidence P3 Z2 a constrained generic application call requires its concrete ordering conformance
runtime/parameterized-struct-values P3 Z2 type and fixed parameters on nominal values
runtime/r250-references P3 Z3, Z18 pointer/slice carriers and implicit conventions
negative/borrowed-source-inout P3 Z5, Z16 a derived view prevents moving its source
runtime/variant-match-payload-bindings-update-storage P3 Z7, Z14 pattern conventions and payload-free cases
runtime/generic-declared-errors P3 Z9 concept entries retain concrete declared errors
runtime/generic-composed-evidence P3 Z11 explicit direct and parent conformances compose
negative/sink-through-dereference P3 Z12, Z13 inout/sink place and permission boundary
runtime/struct-literal-order-and-fill P3 Z17 contextual anonymous aggregate construction
runtime/undo-cleanups-follow-failure-edges P3 Z19 failure cleanup moves its arguments at execution
runtime/generic-parameterized-evidence P3 Z1, Z4 parameterized providers receive target-derived evidence
runtime/allocator-vec-pressure P3 Z6 an escaping generic value parameter is vacuous for a scalar item and exact for a pointer item
negative/parameterized-conformance-entry-signature-mismatch P3 Z1, Z4 substituted provider signatures must agree
runtime/derived-hosted-memory P4 W1, W2, W3, W4, W5, W6, W7 the complete log-filter application selects filters and destinations from retained arguments, reads whole lines across arbitrary chunks, buffers messages with explicit retry, and closes handles through the supplied world
runtime/r480-arena-independent-results P4 W7 simultaneous ordinary allocations and helper-returned pointers, aggregates, slices, any and callback state remain independent; a helper-retained pointer survives the provider frame without passing a returned-value boundary
runtime/r480-arena-nested-exhaustion P4 W3, W7 explicitly backed nested providers exhaust independently and ordinary defer runs across normal, failure, return, break and continue exits
negative/r480-callback-frame-escape P4 W6, W7 ordinary callback-state aggregates retain the tracked frame escape refusal
negative/r480-helper-frame-retention P4 W7 a helper still cannot retain a tracked nonescaping frame reference in module storage
runtime/constant-return-exits-with-its-code P4 W2 hosted entry uses the ordinary no-argument shape
runtime/generic-composed-evidence P4 W4 a narrow concept composes rather than widening
runtime/any-heterogeneous-dispatch P4 W6 erased state retains mutable permission and dispatch identity
negative/any-frame-origin-escape P4 W6 erased state retains pointee origin
runtime/derived-server-two-process P5 V1, V4, V7 the complete derived server in a process of its own, started through io.programs and asked two requests by a client in another; the same source over the blocking provider answers one at a time and SIGTERM's default disposition ends it, and over the event provider answers the second first and its signal waiter stops it cleanly
runtime/derived-server-fake-turns P5 V1, V2, V3, V4, V5, V6, V7, V8, V9, V14, V15 the complete derived server's stopping routine and the prototype's client in one process over the fake network and signals on a round of turns: two requests in flight, the second answered first, and SIGTERM read as an event stopping the server cleanly

Target applicability coverage

These are applicability assignments, not backend claims. A target is spelled as --target spells it. Fixture metadata makes the finer assignment and targets.matrix lists every fixture; a missing targets: is a gate failure. synthetic-32 is the executable target model used before the Cortex-M backend existed.

Scope Targets
prototype-1 cortex-m0, rv32
prototype-2 linux-x86-64, linux-arm64, linux-rv64, darwin-arm64, freebsd-x86-64, freebsd-arm64
prototype-3 linux-x86-64, linux-arm64, linux-rv64, darwin-arm64, freebsd-x86-64, freebsd-arm64, cortex-m0, rv32, synthetic-32
prototype-4 linux-x86-64, linux-arm64, linux-rv64, darwin-arm64, freebsd-x86-64, freebsd-arm64