f9025512e7
cc #79813 This PR adds an allow-by-default future-compatibility lint `SEMICOLON_IN_EXPRESSIONS_FROM_MACROS`. It fires when a trailing semicolon in a macro body is ignored due to the macro being used in expression position: ```rust macro_rules! foo { () => { true; // WARN } } fn main() { let val = match true { true => false, _ => foo!() }; } ``` The lint takes its level from the macro call site, and can be allowed for a particular macro by adding `#[allow(semicolon_in_expressions_from_macros)]`. The lint is set to warn for all internal rustc crates (when being built by a stage1 compiler). After the next beta bump, we can enable the lint for the bootstrap compiler as well. |
||
---|---|---|
.. | ||
mbe | ||
mut_visit | ||
parse | ||
tokenstream | ||
base.rs | ||
build.rs | ||
config.rs | ||
expand.rs | ||
lib.rs | ||
mbe.rs | ||
module.rs | ||
placeholders.rs | ||
proc_macro_server.rs | ||
proc_macro.rs | ||
tests.rs |