1
Fork 0

Mention unnameable_types in unreachable_pub documentation.

This link makes sense because someone who wishes to avoid unusable `pub`
is likely, but not guaranteed, to be interested in avoiding unnameable
types.

Also fixed some grammar problems I noticed in the area.

Fixes #116604.
This commit is contained in:
Kevin Reid 2025-01-05 17:06:47 -08:00
parent b3b368a183
commit 2a96478dd8
2 changed files with 6 additions and 4 deletions

View file

@ -1244,8 +1244,8 @@ impl<'tcx> LateLintPass<'tcx> for UngatedAsyncFnTrackCaller {
declare_lint! { declare_lint! {
/// The `unreachable_pub` lint triggers for `pub` items not reachable from other crates - that /// The `unreachable_pub` lint triggers for `pub` items not reachable from other crates - that
/// means neither directly accessible, nor reexported, nor leaked through things like return /// means neither directly accessible, nor reexported (with `pub use`), nor leaked through
/// types. /// things like return types (which the [`unnameable_types`] lint can detect if desired).
/// ///
/// ### Example /// ### Example
/// ///
@ -1272,8 +1272,10 @@ declare_lint! {
/// intent that the item is only visible within its own crate. /// intent that the item is only visible within its own crate.
/// ///
/// This lint is "allow" by default because it will trigger for a large /// This lint is "allow" by default because it will trigger for a large
/// amount existing Rust code, and has some false-positives. Eventually it /// amount of existing Rust code, and has some false-positives. Eventually it
/// is desired for this to become warn-by-default. /// is desired for this to become warn-by-default.
///
/// [`unnameable_types`]: #unnameable-types
pub UNREACHABLE_PUB, pub UNREACHABLE_PUB,
Allow, Allow,
"`pub` items not reachable from crate root" "`pub` items not reachable from crate root"

View file

@ -4362,7 +4362,7 @@ declare_lint! {
/// ### Explanation /// ### Explanation
/// ///
/// It is often expected that if you can obtain an object of type `T`, then /// It is often expected that if you can obtain an object of type `T`, then
/// you can name the type `T` as well, this lint attempts to enforce this rule. /// you can name the type `T` as well; this lint attempts to enforce this rule.
/// The recommended action is to either reexport the type properly to make it nameable, /// The recommended action is to either reexport the type properly to make it nameable,
/// or document that users are not supposed to be able to name it for one reason or another. /// or document that users are not supposed to be able to name it for one reason or another.
/// ///