]> git.lizzy.rs Git - rust.git/commit - src/tools/miri
Auto merge of #97903 - est31:unused_macro_rules_compile_error, r=petrochenkov
authorbors <bors@rust-lang.org>
Sat, 11 Jun 2022 08:46:21 +0000 (08:46 +0000)
committerbors <bors@rust-lang.org>
Sat, 11 Jun 2022 08:46:21 +0000 (08:46 +0000)
commitfa68e73e9947be8ffc5b3b46d899e4953a44e7e9
treedb2e51830b65497d144628e16f86e76893791f64
parent7092d42c04a56378d2e748f98169b728b1f1d5d1
parent787e24cdfd5bef5136540287dd918e48b8a645db
Auto merge of #97903 - est31:unused_macro_rules_compile_error, r=petrochenkov

Never regard macro rules with compile_error! invocations as unused

The very point of compile_error! is to never be reached, and one of
the use cases of the macro, currently also listed as examples in the
documentation of compile_error, is to create nicer errors for wrong
macro invocations. Thus, we should never warn about unused macro arms
that contain invocations of compile_error.

See also https://github.com/rust-lang/rust/pull/96150#issuecomment-1126599107 and the discussion after that.

Furthermore, the PR also contains two commits to silence `unused_macro_rules` when a macro has an invalid rule, and to add a test that `unused_macros` does not behave badly in the same situation.

r? `@petrochenkov` as I've talked to them about this