rust/tests/ui/resolve/extern-prelude.rs

32 lines
653 B
Rust

//@ build-pass (FIXME(62277): could be check-pass?)
//@ compile-flags:--extern extern_prelude --extern Vec
//@ aux-build:extern-prelude.rs
//@ aux-build:extern-prelude-vec.rs
fn basic() {
// It works
let s = extern_prelude::S;
s.external();
}
fn shadow_mod() {
// Local module shadows `extern_prelude` from extern prelude
mod extern_prelude {
pub struct S;
impl S {
pub fn internal(&self) {}
}
}
let s = extern_prelude::S;
s.internal(); // OK
}
fn shadow_prelude() {
// Extern prelude shadows standard library prelude
let x: () = Vec::new(0f32, ()); // OK
}
fn main() {}