summaryrefslogtreecommitdiffstats
path: root/tests/ui/rust-2018/extern-crate-submod.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:03 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:03 +0000
commit64d98f8ee037282c35007b64c2649055c56af1db (patch)
tree5492bcf97fce41ee1c0b1cc2add283f3e66cdab0 /tests/ui/rust-2018/extern-crate-submod.rs
parentAdding debian version 1.67.1+dfsg1-1. (diff)
downloadrustc-64d98f8ee037282c35007b64c2649055c56af1db.tar.xz
rustc-64d98f8ee037282c35007b64c2649055c56af1db.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/rust-2018/extern-crate-submod.rs')
-rw-r--r--tests/ui/rust-2018/extern-crate-submod.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/ui/rust-2018/extern-crate-submod.rs b/tests/ui/rust-2018/extern-crate-submod.rs
new file mode 100644
index 000000000..dfce9128c
--- /dev/null
+++ b/tests/ui/rust-2018/extern-crate-submod.rs
@@ -0,0 +1,25 @@
+// aux-build:edition-lint-paths.rs
+// run-rustfix
+
+// Oddball: extern crate appears in a submodule, making it harder for
+// us to rewrite paths. We don't (and we leave the `extern crate` in
+// place).
+
+#![feature(rust_2018_preview)]
+#![deny(absolute_paths_not_starting_with_crate)]
+
+mod m {
+ // Because this extern crate does not appear at the root, we
+ // ignore it altogether.
+ pub extern crate edition_lint_paths;
+}
+
+// And we don't being smart about paths like this, even though you
+// *could* rewrite it to `use edition_lint_paths::foo`
+use m::edition_lint_paths::foo;
+//~^ ERROR absolute paths must start
+//~| WARNING this is accepted in the current edition
+
+fn main() {
+ foo();
+}