Nice work once again, just to let you know about the little bit of
duplication I think the name resolver needs a little bit of thought to
handle forward declared items within a block like this:
https://github.com/Rust-GCC/gccrs/issues/531. It might be as simple as
calling ResolveToplevelItems when
Odd things happen if structs or unions have duplicate field names.
Emit an error when lowering an struct/union item or declaration
statement and a duplicate field name is detected. A new testcase
'dup_fields.rs' checks an error is actually produced.
---
https://code.wildebeest.org/git/user/mjw/gc