This commit adds a test that causes a suggestion to replace `extern
crate` with `use` when doing so would cause a compliation error, as the
new name of the import would not be added to the prelude if a `use` was
used.
--- /dev/null
+// aux-build:foo.rs
+// compile-flags:--extern foo
+// edition:2018
+
+#![deny(unused_extern_crates)]
+
+extern crate foo as foo_renamed;
+//~^ ERROR `extern crate` is not idiomatic in the new edition
+
+pub mod m {
+ pub use foo_renamed::Foo;
+}
+
+fn main() {}
--- /dev/null
+error: `extern crate` is not idiomatic in the new edition
+ --> $DIR/issue-57672.rs:7:1
+ |
+LL | extern crate foo as foo_renamed;
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert it to a `use`
+ |
+note: lint level defined here
+ --> $DIR/issue-57672.rs:5:9
+ |
+LL | #![deny(unused_extern_crates)]
+ | ^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to previous error
+