$DIR/auxiliary/macro_name_span_helper.rs: LL| |// edition: 2021 LL| | LL| |#[macro_export] LL| |macro_rules! macro_that_defines_a_function { LL| | (fn $name:ident () $body:tt) => { LL| 1| fn $name () -> () $body LL| | } LL| |} LL| | LL| |// Non-executable comment. $DIR/macro_name_span.rs: LL| |// edition: 2021 LL| | LL| |// Regression test for . LL| |// Under some circumstances, the heuristics that detect macro name spans can LL| |// get confused and produce incorrect spans beyond the bounds of the span LL| |// being processed. LL| | LL| |// aux-build: macro_name_span_helper.rs LL| |extern crate macro_name_span_helper; LL| | LL| 1|fn main() { LL| 1| affected_function(); LL| 1|} LL| | LL| |macro_rules! macro_with_an_unreasonably_and_egregiously_long_name { LL| | () => { LL| | println!("hello"); LL| | }; LL| |} LL| | LL| |macro_name_span_helper::macro_that_defines_a_function! { LL| | fn affected_function() { LL| | macro_with_an_unreasonably_and_egregiously_long_name!(); LL| | } LL| |}