Commit 175c5fd
* test(codegen): match the alloca TYPE, not its whole def text
An `align` suffix would have emptied `temp_root_slots` and made every
`assert_no_temp_rooting` vacuous again — the exact failure this PR removes.
Matched through one shared `root_slots::alloca_type` in all three places that
compared whole def text, with a regression test each that fails against the old
compare. Also routes the accumulator write-back check through `slot_holding` so
it tolerates the same boxing step its neighbours do, and drops a redundant
load-specific pass in `zero_seeded_slots` that re-inserted what the generic
`, ptr %s` scan already caught. Raised by review on #7675.
Claude-Session: https://claude.ai/code/session_01Y1QZ5wUP9gRSwpiweT4Wix
* docs: changelog fragment for the alloca-type prefix match
Claude-Session: https://claude.ai/code/session_01Y1QZ5wUP9gRSwpiweT4Wix
* chore: bump version to 0.5.1386
Claude-Session: https://claude.ini/code/session_01Y1QZ5wUP9gRSwpiweT4Wix
---------
Co-authored-by: Ralph Küpper <ralph@skelpo.com>
1 parent 6cdcd79 commit 175c5fd
7 files changed
Lines changed: 193 additions & 104 deletions
File tree
- changelog.d
- crates/perry-codegen/src
- temp_root_coverage
- testing
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| |||
0 commit comments