// issue 0105 case 1 — same-name struct, DIFFERENT fields. Two flat-imported // modules each declare a top-level `Box` with a different field set. Each // module's function builds and returns ITS OWN `Box`; `main` (which authors no // `Box`) prints both. Each value resolves against its declaring module's type, // so the formatter shows A's `{x}` and B's `{p, q}` — proving the two `Box` // types are distinct nominal identities, not a single last-wins collapse. #import "modules/std.sx"; #import "0752-modules-same-name-struct-distinct-fields/a.sx"; #import "0752-modules-same-name-struct-distinct-fields/b.sx"; main :: () -> s32 { print("a={} b={}\n", a_box(), b_box()); 0 }