Tracking issue for future-incompatibility lint pub_use_of_private_extern_crate
#127909
Open
Description
The pub_use_of_private_extern_crate
lint detects a specific situation of re-exporting a private extern crate
:
extern crate core;
pub use core as reexported_core;
A public use
declaration should not be used to publicly re-export a private extern crate
. pub extern crate
should be used instead.This was historically allowed, but is not the intended behavior according to the visibility rules.
This used to be tracked as part of #34537, but is only tangentially related so it got a new dedicated tracking issue.
Related PRs
- make pub_use_of_private_extern_crate show up in cargo's future breakage reports #127656 tried to make this a hard error, but there were too many regressions, mostly because several ancient versions of
bitflags
are still in use.
Metadata
Assignees
Labels
Area: Crates and their interactions (like crate loading)Area: Lints (warnings about flaws in source code) such as unused_mut.Area: Name/path resolution done by `rustc_resolve` specificallyArea: Visibility / privacyCategory: Future-incompatibility lintsCategory: An issue tracking the progress of sth. like the implementation of an RFCRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the language team, which will review and decide on the PR/issue.