0%

Evaluator + LLVM parity via the desugar

Goal

Both executors consume the desugared match + existing ? propagation machinery; no backend grows new runtime surface. Prove observable-behavior identity on the let? corpus in debug AND release, with zero leaks on the affected paths.

Implementation Sketch

Scope contract: the approved proposal (compiler_repo/docs/ori_lang/proposals/approved/fallible-let-binding-proposal.md) - Design + Semantics + Spec & Grammar Impact sections govern this section verbatim; no scope invention. TDD: the failing test matrix for this section’s shapes lands before implementation; debug AND release verified at close.

Spec References

  • compiler_repo/docs/ori_lang/proposals/approved/fallible-let-binding-proposal.md
  • compiler_repo/docs/ori_lang/v2026/spec/16-control-flow.md (16.0.3, 16.5, 16.6, 16.7)
  • compiler_repo/docs/ori_lang/v2026/spec/15-patterns.md; 13-variables.md; grammar.ebnf

Work Items

  • Evaluator runs the let? spec corpus green (debug + release)
  • LLVM/AOT runs the same corpus green (debug + release); dual-execution outputs identical
  • Leak verification on let? paths (ORI_CHECK_LEAKS on the affected spec tests)