09ce24922672951e47c0f3af27f57c828dfe0eb3
wwstage's taggedvariantindex returned -1 (caller maps to 0) for N_IDENT returns of an aliased mixed-variant union. Cstage returned the correct variant index. Cross-stage divergence — root cause of worker-fmtparser's "reads bool-true as false" symptom in the #18 repro chain. Worker-18 dodged it by dropping 707's asm byte-id loop; #20 re-enables it. Unwrap at entry: resolvetagged peels N_TNAME alias chains down to the underlying N_TTAGGED before the variant-index walk. Direct- tagged callers are unchanged (resolvetype is a no-op on non-N_TNAME). Mirrors nodeisstr's shape — same class of wwstage-no-typed-AST gap tracked by #11. Test 707 grows from 6 → 9 rows; new rows pin tag=0/1/2 (i64/str/ bool) explicitly so a future variant-reorder can't hide behind a coincidentally-correct tag=0. Asm byte-identity loop re-enabled (disabled by #18); now exercises both #18 (ABI words) and #20 (variant-index) fixes — rows 2/3/6 also probe str/bool divergence. 995_self_rebuild green confirms wwstage source itself has no latent aliased-tagged-return that would have surfaced as a self- divergence.
Description
No description provided
Languages
C
89.4%
Python
7.2%
Makefile
2.3%
Shell
0.8%
Assembly
0.3%