Repository navigation
Conversation
) A local `[16][16]u8` kept its inner `[16]` in the element type and reached C as `[16]u8 m[16]`. Every inner fixed dimension now moves to the declarator, `uint8_t m[16][16]`, as a module-level array and a struct field already do. A slice or sentinel dimension stops the peel. The test in backend_behaviour.rs compiles and runs a 2-D, a 3-D with a named size, and an initialized local. Part of #5980. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…l matrix declarator Only gen_hash_c moves: the local declarators become `T m[A][B]`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rray # Conflicts: # bootstrap/stage0/FROZEN_HASH # bootstrap/tests/backend_behaviour.rs
gHashTag
enabled auto-merge (squash)
October 7, 2026 11:43
Owner
Author
|
Lab run on the merged head dad468e: https://t27c-lab-production.up.railway.app/runs/dad468e0574f23b35cc39537dca5bf7b51cd7a14.json. frozen-hash, build, suite (RATCHET CLEAN), seal-currency, seal-coverage (1489 seals, 6 stale, the same as master), specs-generate and misread are green. The one red, the lean gate ( |
This was referenced Oct 7, 2026
Open
corpus: judge 26 new type conflicts from the port batches; types ledger 84 -> 110 (Refs #5906)
#7482
Merged
Merged
Closed
Merged
Contributor
This was referenced Oct 7, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #7441
Part of #5980
What was wrong
gen-c declared a local nested fixed array with a t27 type left inside the C text:
var m: [16][16]u8became[16]u8 m[16], which no C compiler accepts.specs/depin/prove.t27andspecs/vsa/similarity_search.t27hit it, and the self-host needs it.The fix
bootstrap/src/compiler.rs(+24/-2): every inner fixed dimension moves from the element type to the declarator, the same way a struct field (c_array_field) and a module-level array are already declared:uint8_t m[16][16]. A slice, sentinel or inferred inner dimension stops the peel and keeps the old path.Regression test
c_declares_a_local_nested_array_as_a_matrixinbootstrap/tests/backend_behaviour.rscompiles three functions with cc and runs them: a[16][16]u8, a[2][K][4]i64with a named constant dimension, and an initialized[2][2]u8. It expects4 8 32.Run on the lab both ways:
Reseals
Only
gen_hash_cmoves:.trinity/seals/prove.jsonanddepin_depin.prove.json: 1fe0bdf2 -> 832862c5.trinity/seals/SimilaritySearch.json,VSASimilaritySearch.jsonandvsa_VSASimilaritySearch.json: fa36bdca -> 9b62b16eLab runs
Foreign-line budget (#7371)
Master's
check_budget()passes on this diff: compiler.rs +24/-2, backend_behaviour.rs +16. FROZEN_HASH and the seals do not count.🤖 Generated with Claude Code