@Vadim Petrochenkov any idea as to why the ICE happens in the repro I made? not sure why
NonMacroAttr(Builtin) even occurs...
the ICE also seems quite specific to
rustc_mir; changing to other crates doesn't seem to repro
#[rustc_mir] is actually a built-in attribute.
I haven't yet looked why it gets into a
@Vadim Petrochenkov ah; iirc the origin is https://github.com/rust-lang/rust/blob/master/src/librustc_interface/util.rs#L15 which is then used in https://github.com/rust-lang/rust/blob/master/src/librustc_interface/util.rs#L52 -- maybe there's a conflict between the attribute and the crate?
So changing things to e.g.
use warn; or
use ignore; will also repro; more generally any attribute in https://github.com/rust-lang/rust/blob/master/src/libsyntax/feature_gate.rs#L828 seems to do it (aside from
If everything works correctly, then
rustc_mir::DIAGNOSTICS should only be resolved in type namespace and the resolution in macro namespace should never end up in
Even if the name exists in multiple namespaces.