From 60d4e20ff07ac4546f47f09094c7c04b577f0966 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Thu, 5 Dec 2019 16:26:21 -0800 Subject: compiletest: add aux-crate directive --- src/test/run-make-fulldeps/extern-flag-noprelude/Makefile | 11 ----------- src/test/run-make-fulldeps/extern-flag-noprelude/dep.rs | 3 --- src/test/run-make-fulldeps/extern-flag-noprelude/foo.rs | 3 --- src/test/rustdoc/issue-66159.rs | 3 +-- src/test/ui/extern-flag/auxiliary/somedep.rs | 3 +++ src/test/ui/extern-flag/noprelude-resolves.rs | 11 +++++++++++ src/test/ui/extern-flag/noprelude.rs | 7 +++++++ src/test/ui/extern-flag/noprelude.stderr | 9 +++++++++ src/test/ui/privacy/pub-priv-dep/pub-priv1.rs | 5 ++--- src/test/ui/privacy/pub-priv-dep/pub-priv1.stderr | 8 ++++---- 10 files changed, 37 insertions(+), 26 deletions(-) delete mode 100644 src/test/run-make-fulldeps/extern-flag-noprelude/Makefile delete mode 100644 src/test/run-make-fulldeps/extern-flag-noprelude/dep.rs delete mode 100644 src/test/run-make-fulldeps/extern-flag-noprelude/foo.rs create mode 100644 src/test/ui/extern-flag/auxiliary/somedep.rs create mode 100644 src/test/ui/extern-flag/noprelude-resolves.rs create mode 100644 src/test/ui/extern-flag/noprelude.rs create mode 100644 src/test/ui/extern-flag/noprelude.stderr (limited to 'src/test') diff --git a/src/test/run-make-fulldeps/extern-flag-noprelude/Makefile b/src/test/run-make-fulldeps/extern-flag-noprelude/Makefile deleted file mode 100644 index 18f9d8bab60..00000000000 --- a/src/test/run-make-fulldeps/extern-flag-noprelude/Makefile +++ /dev/null @@ -1,11 +0,0 @@ --include ../tools.mk - -# Test --extern noprelude - -all: - $(RUSTC) dep.rs --crate-name=dep --crate-type=rlib - $(RUSTC) foo.rs --edition=2018 -Zunstable-options \ - --extern noprelude:dep=$(TMPDIR)/libdep.rlib 2>&1 | \ - $(CGREP) -e 'failed to resolve.*`dep`' - $(RUSTC) foo.rs --edition=2018 -Zunstable-options \ - --extern dep=$(TMPDIR)/libdep.rlib diff --git a/src/test/run-make-fulldeps/extern-flag-noprelude/dep.rs b/src/test/run-make-fulldeps/extern-flag-noprelude/dep.rs deleted file mode 100644 index dd2f373f849..00000000000 --- a/src/test/run-make-fulldeps/extern-flag-noprelude/dep.rs +++ /dev/null @@ -1,3 +0,0 @@ -pub fn somefun() {} - -pub struct S; diff --git a/src/test/run-make-fulldeps/extern-flag-noprelude/foo.rs b/src/test/run-make-fulldeps/extern-flag-noprelude/foo.rs deleted file mode 100644 index 9bb1b78409f..00000000000 --- a/src/test/run-make-fulldeps/extern-flag-noprelude/foo.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - dep::somefun(); -} diff --git a/src/test/rustdoc/issue-66159.rs b/src/test/rustdoc/issue-66159.rs index a69ba61a283..003d079a470 100644 --- a/src/test/rustdoc/issue-66159.rs +++ b/src/test/rustdoc/issue-66159.rs @@ -1,6 +1,5 @@ -// aux-build:issue-66159-1.rs +// aux-crate:priv:issue_66159_1=issue-66159-1.rs // compile-flags:-Z unstable-options -// extern-private:issue_66159_1 // The issue was an ICE which meant that we never actually generated the docs // so if we have generated the docs, we're okay. diff --git a/src/test/ui/extern-flag/auxiliary/somedep.rs b/src/test/ui/extern-flag/auxiliary/somedep.rs new file mode 100644 index 00000000000..dd2f373f849 --- /dev/null +++ b/src/test/ui/extern-flag/auxiliary/somedep.rs @@ -0,0 +1,3 @@ +pub fn somefun() {} + +pub struct S; diff --git a/src/test/ui/extern-flag/noprelude-resolves.rs b/src/test/ui/extern-flag/noprelude-resolves.rs new file mode 100644 index 00000000000..f69f552b69d --- /dev/null +++ b/src/test/ui/extern-flag/noprelude-resolves.rs @@ -0,0 +1,11 @@ +// check-pass +// aux-crate:noprelude:somedep=somedep.rs +// compile-flags: -Zunstable-options +// edition:2018 + +// `extern crate` can be used to add to prelude. +extern crate somedep; + +fn main() { + somedep::somefun(); +} diff --git a/src/test/ui/extern-flag/noprelude.rs b/src/test/ui/extern-flag/noprelude.rs new file mode 100644 index 00000000000..cdbf3409100 --- /dev/null +++ b/src/test/ui/extern-flag/noprelude.rs @@ -0,0 +1,7 @@ +// aux-crate:noprelude:somedep=somedep.rs +// compile-flags: -Zunstable-options +// edition:2018 + +fn main() { + somedep::somefun(); //~ ERROR failed to resolve +} diff --git a/src/test/ui/extern-flag/noprelude.stderr b/src/test/ui/extern-flag/noprelude.stderr new file mode 100644 index 00000000000..beb9200ddda --- /dev/null +++ b/src/test/ui/extern-flag/noprelude.stderr @@ -0,0 +1,9 @@ +error[E0433]: failed to resolve: use of undeclared type or module `somedep` + --> $DIR/noprelude.rs:6:5 + | +LL | somedep::somefun(); + | ^^^^^^^ use of undeclared type or module `somedep` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0433`. diff --git a/src/test/ui/privacy/pub-priv-dep/pub-priv1.rs b/src/test/ui/privacy/pub-priv-dep/pub-priv1.rs index 784615354a9..feab72b3efa 100644 --- a/src/test/ui/privacy/pub-priv-dep/pub-priv1.rs +++ b/src/test/ui/privacy/pub-priv-dep/pub-priv1.rs @@ -1,11 +1,10 @@ - // aux-build:priv_dep.rs + // aux-crate:priv:priv_dep=priv_dep.rs // aux-build:pub_dep.rs - // extern-private:priv_dep #![deny(exported_private_dependencies)] // This crate is a private dependency extern crate priv_dep; -// This crate is a public dependenct +// This crate is a public dependency extern crate pub_dep; use priv_dep::{OtherType, OtherTrait}; diff --git a/src/test/ui/privacy/pub-priv-dep/pub-priv1.stderr b/src/test/ui/privacy/pub-priv-dep/pub-priv1.stderr index b31efdbd781..f21b11f5b32 100644 --- a/src/test/ui/privacy/pub-priv-dep/pub-priv1.stderr +++ b/src/test/ui/privacy/pub-priv-dep/pub-priv1.stderr @@ -1,23 +1,23 @@ error: type `priv_dep::OtherType` from private dependency 'priv_dep' in public interface - --> $DIR/pub-priv1.rs:21:5 + --> $DIR/pub-priv1.rs:20:5 | LL | pub field: OtherType, | ^^^^^^^^^^^^^^^^^^^^ | note: lint level defined here - --> $DIR/pub-priv1.rs:4:9 + --> $DIR/pub-priv1.rs:3:9 | LL | #![deny(exported_private_dependencies)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: type `priv_dep::OtherType` from private dependency 'priv_dep' in public interface - --> $DIR/pub-priv1.rs:28:5 + --> $DIR/pub-priv1.rs:27:5 | LL | pub fn pub_fn(param: OtherType) {} | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: trait `priv_dep::OtherTrait` from private dependency 'priv_dep' in public interface - --> $DIR/pub-priv1.rs:34:1 + --> $DIR/pub-priv1.rs:33:1 | LL | / pub trait MyPubTrait { LL | | type Foo: OtherTrait; -- cgit 1.4.1-3-g733a5