error[E0428]: the name `D` is defined multiple times --> $DIR/dollar-crate.rs:26:13 | LL | struct D($crate::S); | ^^^^^^^^^^^^^^^^^^^^ | | | `D` redefined here | previous definition of the type `D` here ... LL | local!(); | --------- in this macro invocation | = note: `D` must be defined only once in the type namespace of this module = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) error[E0428]: the name `D` is defined multiple times --> $DIR/dollar-crate.rs:36:5 | LL | dollar_crate_external::external!(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | `D` redefined here | previous definition of the type `D` here | = note: `D` must be defined only once in the type namespace of this module = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0428`.