diff --git a/src/test/run-make/missing-items/Makefile b/src/test/run-make/missing-items/Makefile deleted file mode 100644 index bcc9cdf2d6527..0000000000000 --- a/src/test/run-make/missing-items/Makefile +++ /dev/null @@ -1,10 +0,0 @@ --include ../tools.mk - -all: - $(RUSTC) m1.rs -C prefer-dynamic - $(RUSTC) m2.rs 2>&1 | grep "error\[E0046\]: not all trait items implemented, missing: .*" - $(RUSTC) m2.rs 2>&1 | grep " --> m2.rs:18:1" - $(RUSTC) m2.rs 2>&1 | grep " | ^ missing .CONSTANT., .Type., .method. in implementation" - $(RUSTC) m2.rs 2>&1 | grep " = note: .CONSTANT. from trait: .const CONSTANT: u32;." - $(RUSTC) m2.rs 2>&1 | grep " = note: .Type. from trait: .type Type;." - $(RUSTC) m2.rs 2>&1 | grep " = note: .method. from trait: .fn(&Self, std::string::String) -> ::Type." diff --git a/src/test/run-make/missing-items/m1.rs b/src/test/ui/missing-items/auxiliary/m1.rs similarity index 82% rename from src/test/run-make/missing-items/m1.rs rename to src/test/ui/missing-items/auxiliary/m1.rs index 060c7a9571b7b..f8389692267e1 100644 --- a/src/test/run-make/missing-items/m1.rs +++ b/src/test/ui/missing-items/auxiliary/m1.rs @@ -9,9 +9,9 @@ // except according to those terms. #![feature(associated_consts)] -#![crate_type = "dylib"] + pub trait X { - const CONSTANT: u32; - type Type; - fn method(&self, s: String) -> Self::Type; + const CONSTANT: u32; + type Type; + fn method(&self, s: String) -> Self::Type; } diff --git a/src/test/run-make/missing-items/m2.rs b/src/test/ui/missing-items/m2.rs similarity index 95% rename from src/test/run-make/missing-items/m2.rs rename to src/test/ui/missing-items/m2.rs index 7055673acc9a9..fc09039640b99 100644 --- a/src/test/run-make/missing-items/m2.rs +++ b/src/test/ui/missing-items/m2.rs @@ -8,8 +8,10 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +// aux-build:m1.rs + #![feature(associated_consts)] -#![crate_type = "dylib"] + extern crate m1; struct X { diff --git a/src/test/ui/missing-items/m2.stderr b/src/test/ui/missing-items/m2.stderr new file mode 100644 index 0000000000000..caeb9ff415cd3 --- /dev/null +++ b/src/test/ui/missing-items/m2.stderr @@ -0,0 +1,14 @@ +error: main function not found + +error[E0046]: not all trait items implemented, missing: `CONSTANT`, `Type`, `method` + --> $DIR/m2.rs:20:1 + | +20 | impl m1::X for X { + | ^ missing `CONSTANT`, `Type`, `method` in implementation + | + = note: `CONSTANT` from trait: `const CONSTANT: u32;` + = note: `Type` from trait: `type Type;` + = note: `method` from trait: `fn(&Self, std::string::String) -> ::Type` + +error: aborting due to previous error +