1
Fork 0

Add unreachable_pub to RUSTC_LINT_FLAGS for compiler/ crates.

And fix the new errors in the handful of crates that didn't have a
`#![warn(unreachable_pub)]`.
This commit is contained in:
Nicholas Nethercote 2025-03-11 11:51:07 +11:00
parent c9c8387955
commit 55505ab1d3
9 changed files with 16 additions and 14 deletions

View file

@ -5,7 +5,7 @@ use rustc_pattern_analysis::usefulness::{PlaceValidity, UsefulnessReport};
use rustc_pattern_analysis::{MatchArm, PatCx, PrivateUninhabitedField};
/// Sets up `tracing` for easier debugging. Tries to look like the `rustc` setup.
pub fn init_tracing() {
fn init_tracing() {
use tracing_subscriber::Layer;
use tracing_subscriber::layer::SubscriberExt;
use tracing_subscriber::util::SubscriberInitExt;
@ -24,7 +24,7 @@ pub fn init_tracing() {
/// A simple set of types.
#[allow(dead_code)]
#[derive(Debug, Copy, Clone, PartialEq, Eq)]
pub enum Ty {
pub(super) enum Ty {
/// Booleans
Bool,
/// 8-bit unsigned integers
@ -41,7 +41,7 @@ pub enum Ty {
/// The important logic.
impl Ty {
pub fn sub_tys(&self, ctor: &Constructor<Cx>) -> Vec<Self> {
pub(super) fn sub_tys(&self, ctor: &Constructor<Cx>) -> Vec<Self> {
use Constructor::*;
match (ctor, *self) {
(Struct, Ty::Tuple(tys)) => tys.iter().copied().collect(),
@ -63,7 +63,7 @@ impl Ty {
}
}
pub fn ctor_set(&self) -> ConstructorSet<Cx> {
fn ctor_set(&self) -> ConstructorSet<Cx> {
match *self {
Ty::Bool => ConstructorSet::Bool,
Ty::U8 => ConstructorSet::Integers {
@ -104,7 +104,7 @@ impl Ty {
}
}
pub fn write_variant_name(
fn write_variant_name(
&self,
f: &mut std::fmt::Formatter<'_>,
ctor: &Constructor<Cx>,
@ -120,7 +120,7 @@ impl Ty {
}
/// Compute usefulness in our simple context (and set up tracing for easier debugging).
pub fn compute_match_usefulness<'p>(
pub(super) fn compute_match_usefulness<'p>(
arms: &[MatchArm<'p, Cx>],
ty: Ty,
scrut_validity: PlaceValidity,
@ -137,7 +137,7 @@ pub fn compute_match_usefulness<'p>(
}
#[derive(Debug)]
pub struct Cx;
pub(super) struct Cx;
/// The context for pattern analysis. Forwards anything interesting to `Ty` methods.
impl PatCx for Cx {