error: can't qualify macro invocation with `pub` --> $DIR/pub-item-macro.rs:8:5 | LL | pub priv_x!(); | ^^^ ... LL | pub_x!(); | --------- in this macro invocation | = help: try adjusting the macro to put `pub` inside the invocation error[E0603]: static `x` is private --> $DIR/pub-item-macro.rs:17:23 | LL | let y: u32 = foo::x; | ^ error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0603`.