error[E0428]: the name `my_macro` is defined multiple times --> $DIR/macro-namespace-reserved.rs:25:1 | LL | pub fn my_macro(input: TokenStream) -> TokenStream { | -------------------------------------------------- previous definition of the macro `my_macro` here ... LL | macro my_macro() {} | ^^^^^^^^^^^^^^^^ `my_macro` redefined here | = note: `my_macro` must be defined only once in the macro namespace of this module error[E0428]: the name `my_macro_attr` is defined multiple times --> $DIR/macro-namespace-reserved.rs:26:1 | LL | pub fn my_macro_attr(input: TokenStream, _: TokenStream) -> TokenStream { | ----------------------------------------------------------------------- previous definition of the macro `my_macro_attr` here ... LL | macro my_macro_attr() {} | ^^^^^^^^^^^^^^^^^^^^^ `my_macro_attr` redefined here | = note: `my_macro_attr` must be defined only once in the macro namespace of this module error[E0428]: the name `MyTrait` is defined multiple times --> $DIR/macro-namespace-reserved.rs:27:1 | LL | #[proc_macro_derive(MyTrait)] | ------- previous definition of the macro `MyTrait` here ... LL | macro MyTrait() {} | ^^^^^^^^^^^^^^^ `MyTrait` redefined here | = note: `MyTrait` must be defined only once in the macro namespace of this module error[E0428]: the name `SameName` is defined multiple times --> $DIR/macro-namespace-reserved.rs:35:1 | LL | #[proc_macro_derive(SameName)] | -------- previous definition of the macro `SameName` here ... LL | pub fn SameName(input: TokenStream) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SameName` redefined here | = note: `SameName` must be defined only once in the macro namespace of this module error: aborting due to 4 previous errors For more information about this error, try `rustc --explain E0428`.