// A flat-imported module authoring its OWN `Box { a }`, a DISTINCT nominal from
// main's `Box { m }`. The `?Box` / `[N]Box` / `[]Box` element wrappers in `main`
// must each bind main's own `Box`; disjoint field sets make a wrong binding fail.
Box :: struct { a: i32; }

dep_box :: () -> i32 {
    b : Box = ---;
    b.a = 99;
    return b.a;
}
