Owen Avery
Owen Avery
I tried this code: ```rust struct S(); pub fn main() { match S() { S() => {} } } ``` I expected to see this happen: no error Instead, this...
This adds an extra compiler pass called ```SizedChecker``` which handles the new checks
This also involves some changes to ```get_location``` and ```get_node_id``` method implementation, but I'll probably split those off into separate pull requests. Fixes #2667
It would be nice if we optimized the layout of enums like [rustc](https://doc.rust-lang.org/std/num/struct.NonZeroU8.html) does
Macro expansion seems to destruct instances of MacroRulesDefinition in modules. This patch should prevent a use-after-free by cloning and then leaking MacroRulesDefinition instances.
https://github.com/Rust-GCC/gccrs/blob/cfc51d46fcdb70bde84f030557c96866f3b18e23/gcc/rust/rust-gcc.cc#L1491-L1493
these errors would still be nice as hints, but that's outside the scope of this PR. but something aggregating all macro arm misses and displaying them to the user could...
I noticed that ```libgrust/libformat_parser/target``` was seemingly generated outside the build directory on my machine. This should detect similar issues, and confirm/deny the aforementioned issue.
These were leftover from an earlier refactor