macro_rules! m { ($p: path) => (pub(in $p) struct Z;) } struct S(T); m!{ S } //~ ERROR unexpected generic arguments in path //~| ERROR failed to resolve: `S` is a struct, not a module [E0433] mod m { m!{ m<> } //~ ERROR unexpected generic arguments in path } fn main() {}