This is fantastic work Mar. This brings us closer to the AST structures of rustc and does simplify a lot of the analysis within the compiler. https://doc.rust-lang.org/nightly/reference/expressions/struct-expr.html

I agree the HIR cleanup will also help reduce a lot of duplication of code and visitors. It might mean we get alot of enum stuff for free potentially.

Thanks

--Phil


On Wed, 1 Sept 2021 at 01:16, Mark Wielaard <mark@klomp.org> wrote:
Hi,

There are various Structure Expressions that don't actually "exist"
because they are syntactically equivalent to other constructs. So we
never really construct or use these classes. But they are still listed
in various visitors, which is somewhat confusing. Removing the AST and
HIR variants of these classes really cleans up the code IMHO.

The following 3 patches can also be found on
https://code.wildebeest.org/git/user/mjw/gccrs/log/?h=structexpr

[PATCH 1/3] StructExprTuple doesn't really exist
[PATCH 2/3] StructExprUnit doesn't really exist
[PATCH 3/3] Remove Enumaration Expression, EnumExpr, classes

Cheers,

Mark
--
Gcc-rust mailing list
Gcc-rust@gcc.gnu.org
https://gcc.gnu.org/mailman/listinfo/gcc-rust