rust/tests/ui/imports/extern-crate-used.rs

33 lines
957 B
Rust

// Extern crate items are marked as used if they are used
// through extern prelude entries introduced by them.
//@ edition:2018
#![deny(unused_extern_crates)]
// Shouldn't suggest changing to `use`, as new name
// would no longer be added to the prelude which could cause
// compilation errors for imports that use the new name in
// other modules. See #57672.
extern crate core as iso1;
extern crate core as iso2;
extern crate core as iso3;
extern crate core as iso4;
// Doesn't introduce its extern prelude entry, so it's still considered unused.
extern crate core; //~ ERROR unused extern crate
mod m {
use iso1::any as are_you_okay1;
use ::iso2::any as are_you_okay2;
type AreYouOkay1 = dyn iso3::any::Any;
type AreYouOkay2 = dyn (::iso4::any::Any);
use core::any as are_you_okay3;
use ::core::any as are_you_okay4;
type AreYouOkay3 = dyn core::any::Any;
type AreYouOkay4 = dyn (::core::any::Any);
}
fn main() {}