Skip to content

Commit

Permalink
Move one test from run-make-fulldeps to ui
Browse files Browse the repository at this point in the history
  • Loading branch information
petrochenkov committed Mar 21, 2019
1 parent 89573b3 commit 6389478
Show file tree
Hide file tree
Showing 10 changed files with 57 additions and 50 deletions.
11 changes: 0 additions & 11 deletions src/test/run-make-fulldeps/extern-prelude/Makefile

This file was deleted.

6 changes: 0 additions & 6 deletions src/test/run-make-fulldeps/extern-prelude/basic.rs

This file was deleted.

9 changes: 0 additions & 9 deletions src/test/run-make-fulldeps/extern-prelude/relative-only.rs

This file was deleted.

14 changes: 0 additions & 14 deletions src/test/run-make-fulldeps/extern-prelude/shadow-mod.rs

This file was deleted.

7 changes: 0 additions & 7 deletions src/test/run-make-fulldeps/extern-prelude/shadow-prelude.rs

This file was deleted.

@@ -1,3 +1,3 @@
#![crate_type = "rlib"]
#![crate_name = "Vec"]

pub fn new(arg1: f32, arg2: ()) {}
@@ -1,5 +1,3 @@
#![crate_type = "rlib"]

pub struct S;

impl S {
Expand Down
9 changes: 9 additions & 0 deletions src/test/ui/extern-prelude-fail.rs
@@ -0,0 +1,9 @@
// compile-flags:--extern extern_prelude
// aux-build:extern-prelude.rs

// Extern prelude names are not available by absolute paths

fn main() {
use extern_prelude::S; //~ ERROR unresolved import `extern_prelude`
let s = ::extern_prelude::S; //~ ERROR failed to resolve
}
16 changes: 16 additions & 0 deletions src/test/ui/extern-prelude-fail.stderr
@@ -0,0 +1,16 @@
error[E0432]: unresolved import `extern_prelude`
--> $DIR/extern-prelude-fail.rs:7:9
|
LL | use extern_prelude::S;
| ^^^^^^^^^^^^^^ maybe a missing `extern crate extern_prelude;`?

error[E0433]: failed to resolve: maybe a missing `extern crate extern_prelude;`?
--> $DIR/extern-prelude-fail.rs:8:15
|
LL | let s = ::extern_prelude::S;
| ^^^^^^^^^^^^^^ maybe a missing `extern crate extern_prelude;`?

error: aborting due to 2 previous errors

Some errors occurred: E0432, E0433.
For more information about an error, try `rustc --explain E0432`.
31 changes: 31 additions & 0 deletions src/test/ui/extern-prelude.rs
@@ -0,0 +1,31 @@
// compile-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() {}

0 comments on commit 6389478

Please sign in to comment.