error[E0428]: the name `D` is defined multiple times --> $DIR/dollar-crate.rs:27: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 error[E0428]: the name `D` is defined multiple times --> $DIR/dollar-crate.rs:37: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 outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0428`.