blob: 51e7bed6580b35b369281f9a7b4399d33089d3e1 [file] [log] [blame]
// Make sure that attribute used when injecting the prelude are resolved
// hygienically.
// check-pass
// aux-build:not-libstd.rs
//revisions: rust2015 rust2018
//[rust2018] edition:2018
// The prelude import shouldn't see these as candidates for when it's trying to
// use the built-in macros.
extern crate core;
use core::prelude::v1::test as prelude_import;
use core::prelude::v1::test as macro_use;
// Should not be used for the prelude import - not a concern in the 2015 edition
// because `std` is already declared in the crate root.
#[cfg(rust2018)]
extern crate not_libstd as std;
#[cfg(rust2018)]
mod x {
// The extern crate item should override `std` in the extern prelude.
fn f() {
std::not_in_lib_std();
}
}
fn main() {}