error[E0308]: mismatched types --> $DIR/suggest-ref-macro.rs:8:1 | LL | #[hello] | ^^^^^^^^ | | | expected `&mut i32`, found integer | arguments to this function are incorrect | note: function defined here --> $DIR/suggest-ref-macro.rs:8:1 | LL | #[hello] | _-^^^^^^^ LL | | fn abc() {} LL | | LL | | fn x(_: &mut i32) {} LL | | LL | | macro_rules! bla { | |_____________- = note: this error originates in the attribute macro `hello` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0308]: mismatched types --> $DIR/suggest-ref-macro.rs:15:11 | LL | x(123); | - ^^^ | | | | | expected `&mut i32`, found integer | | help: consider mutably borrowing here: `&mut 123` | arguments to this function are incorrect ... LL | bla!(); | ------ in this macro invocation | note: function defined here --> $DIR/suggest-ref-macro.rs:11:4 | LL | fn x(_: &mut i32) {} | ^ ----------- = note: this error originates in the macro `bla` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0308]: mismatched types --> $DIR/suggest-ref-macro.rs:26:10 | LL | x($v) | - arguments to this function are incorrect ... LL | bla!(456); | ^^^ | | | expected `&mut i32`, found integer | help: consider mutably borrowing here: `&mut 456` | note: function defined here --> $DIR/suggest-ref-macro.rs:11:4 | LL | fn x(_: &mut i32) {} | ^ ----------- error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0308`.