9382eedbbb530c03367ff07fb7733b518dcd5eb6
wwstage cgen re-derived fn-ness by NAME: cgident's fn arm gated on fnretlookup, whose cross-module leaf fallback matches a foreign same-leaf fn — inside aa.getv the bare `v` (aa's i32 global, stamped by the #55 prefer fix) took the fn-address arm for main's `fn v` and emitted LEAQ aa.v(SB) with no deref; the ww_ww-built 794 program exited 0 instead of 7. cstage reads the checker-stamped type (cgen.c:4315). Convert the three value-position sites to the stamp (same predicate-to-stamp conversion as the #14 F7-c7 `&fn` arm): cgident (now TY_FN -> def -> let, cstage's order — the def-first order also mis-read a foreign scalar def shadowed by a curmod fn), the cgdot module-qualified value arm, and the `&ident` #180 arm. Call-position fnretlookup consumers are unchanged. The 794 two-file program is now cs==ww byte-identical and both drivers run exit 7; the carrier retires in the follow-up.
Description
No description provided
Languages
C
89.4%
Python
7.2%
Makefile
2.3%
Shell
0.8%
Assembly
0.3%