Skip to content

fix(gen-verilog): TB regs for untyped/nested let bindings and tuple elements - #1949

Merged
gHashTag merged 1 commit into
masterfrom
fix/tb-stmtlocal-regs
Aug 8, 2026
Merged

fix(gen-verilog): TB regs for untyped/nested let bindings and tuple elements#1949
gHashTag merged 1 commit into
masterfrom
fix/tb-stmtlocal-regs

Conversation

@gHashTag

@gHashTag gHashTag commented Aug 8, 2026

Copy link
Copy Markdown
Owner

Refs #1948

The testbench declared regs for StmtAssign bindings (#1894) and top-level TYPED locals only — untyped let score = f(...), nested locals and tuple-destructure elements were unbound ("Unable to bind wire/reg"), the biggest icarus compile-error class on the tri-net corpus.

One declaration pass now walks the whole block: assign targets, tuple elements (64-bit), and any StmtLocal the typed top-level loop doesn't cover (width from init expr).

tri-net corpus: icarus compile errors 31 → 21; the 10 unblocked specs surface runtime divergences (early-return fn lowering suspected) — next tail. Existing 59-spec gate unchanged and green. Only unit red is pre-existing bitnet_layer. FROZEN_HASH resealed; NOW.md entries added.

🤖 Generated with Claude Code

…lements

Refs #1948

The testbench declared regs for StmtAssign bindings (#1894) and
top-level TYPED locals only. Untyped `let score = f(...)` bindings,
nested locals and tuple-destructure elements stayed undeclared --
iverilog could not bind them, the biggest icarus compile-error class on
the tri-net corpus (hit every spec whose executable tests use let).

One declaration pass now walks the whole block: plain assign targets
(#1894 behavior), tuple elements (64-bit regs), and any StmtLocal the
typed top-level loop does not cover, width-inferred from the init
expression.

tri-net corpus: icarus compile errors 31 -> 21; the 10 unblocked specs
now surface RUNTIME divergences (early-return fn lowering suspected),
which are the next tail. Gate set unchanged (59/59 still green).
FROZEN_HASH resealed; only unit red is the pre-existing bitnet_layer.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gHashTag
gHashTag enabled auto-merge (squash) August 8, 2026 16:54
@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-08-08 16:55:05 UTC

Summary

Status Count
Total Open PRs 14
PRs with Failing Checks 1
PRs with All Checks Green 13
READY 5
FAILING 1
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=273cc82be130 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

This notebook contains session context, decisions, and artifacts for this work.

@gHashTag
gHashTag merged commit 13618b8 into master Aug 8, 2026
22 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant