Skip to content

Commit 5432635

Browse files
committed
Add warn(unreachable_pub) to rustc_trait_selection.
1 parent c983d3d commit 5432635

File tree

6 files changed

+17
-16
lines changed

6 files changed

+17
-16
lines changed

compiler/rustc_trait_selection/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
#![feature(unwrap_infallible)]
3333
#![feature(yeet_expr)]
3434
#![recursion_limit = "512"] // For rustdoc
35+
#![warn(unreachable_pub)] // For rustdoc
3536
// tidy-alphabetical-end
3637

3738
#[macro_use]

compiler/rustc_trait_selection/src/traits/coherence.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ pub fn add_placeholder_note<G: EmissionGuarantee>(err: &mut Diag<'_, G>) {
5353
);
5454
}
5555

56-
pub fn suggest_increasing_recursion_limit<'tcx, G: EmissionGuarantee>(
56+
pub(crate) fn suggest_increasing_recursion_limit<'tcx, G: EmissionGuarantee>(
5757
tcx: TyCtxt<'tcx>,
5858
err: &mut Diag<'_, G>,
5959
overflowing_predicates: &[ty::Predicate<'tcx>],

compiler/rustc_trait_selection/src/traits/object_safety.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ use smallvec::SmallVec;
2828
use super::elaborate;
2929
use crate::infer::TyCtxtInferExt;
3030
use crate::traits::query::evaluate_obligation::InferCtxtExt;
31-
use crate::traits::{util, Obligation, ObligationCause};
32-
pub use crate::traits::{MethodViolationCode, ObjectSafetyViolation};
31+
pub use crate::traits::ObjectSafetyViolation;
32+
use crate::traits::{util, MethodViolationCode, Obligation, ObligationCause};
3333

3434
/// Returns the object safety violations that affect HIR ty lowering.
3535
///
@@ -513,7 +513,7 @@ fn virtual_call_violations_for_method<'tcx>(
513513
///
514514
/// This check is outlined from the object safety check to avoid cycles with
515515
/// layout computation, which relies on knowing whether methods are object safe.
516-
pub fn check_receiver_correct<'tcx>(tcx: TyCtxt<'tcx>, trait_def_id: DefId, method: ty::AssocItem) {
516+
fn check_receiver_correct<'tcx>(tcx: TyCtxt<'tcx>, trait_def_id: DefId, method: ty::AssocItem) {
517517
if !is_vtable_safe_method(tcx, trait_def_id, method) {
518518
return;
519519
}
@@ -907,7 +907,7 @@ impl<'tcx> TypeFolder<TyCtxt<'tcx>> for EraseEscapingBoundRegions<'tcx> {
907907
}
908908
}
909909

910-
pub fn contains_illegal_impl_trait_in_trait<'tcx>(
910+
fn contains_illegal_impl_trait_in_trait<'tcx>(
911911
tcx: TyCtxt<'tcx>,
912912
fn_def_id: DefId,
913913
ty: ty::Binder<'tcx, Ty<'tcx>>,
@@ -931,7 +931,7 @@ pub fn contains_illegal_impl_trait_in_trait<'tcx>(
931931
})
932932
}
933933

934-
pub fn provide(providers: &mut Providers) {
934+
pub(crate) fn provide(providers: &mut Providers) {
935935
*providers = Providers {
936936
object_safety_violations,
937937
is_object_safe,

compiler/rustc_trait_selection/src/traits/select/_match.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ use tracing::instrument;
2121
/// Like subtyping, matching is really a binary relation, so the only
2222
/// important thing about the result is Ok/Err. Also, matching never
2323
/// affects any type variables or unification state.
24-
pub struct MatchAgainstFreshVars<'tcx> {
24+
pub(crate) struct MatchAgainstFreshVars<'tcx> {
2525
tcx: TyCtxt<'tcx>,
2626
}
2727

2828
impl<'tcx> MatchAgainstFreshVars<'tcx> {
29-
pub fn new(tcx: TyCtxt<'tcx>) -> MatchAgainstFreshVars<'tcx> {
29+
pub(crate) fn new(tcx: TyCtxt<'tcx>) -> MatchAgainstFreshVars<'tcx> {
3030
MatchAgainstFreshVars { tcx }
3131
}
3232
}

compiler/rustc_trait_selection/src/traits/select/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3126,7 +3126,7 @@ impl<'o, 'tcx> fmt::Debug for TraitObligationStack<'o, 'tcx> {
31263126
}
31273127
}
31283128

3129-
pub enum ProjectionMatchesProjection {
3129+
pub(crate) enum ProjectionMatchesProjection {
31303130
Yes,
31313131
Ambiguous,
31323132
No,

compiler/rustc_trait_selection/src/traits/util.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ impl<'tcx> Iterator for TraitAliasExpander<'tcx> {
168168
/// Instantiate all bound parameters of the impl subject with the given args,
169169
/// returning the resulting subject and all obligations that arise.
170170
/// The obligations are closed under normalization.
171-
pub fn impl_subject_and_oblig<'a, 'tcx>(
171+
pub(crate) fn impl_subject_and_oblig<'a, 'tcx>(
172172
selcx: &SelectionContext<'a, 'tcx>,
173173
param_env: ty::ParamEnv<'tcx>,
174174
impl_def_id: DefId,
@@ -208,7 +208,7 @@ pub fn upcast_choices<'tcx>(
208208
supertraits(tcx, source_trait_ref).filter(|r| r.def_id() == target_trait_def_id).collect()
209209
}
210210

211-
pub fn closure_trait_ref_and_return_type<'tcx>(
211+
pub(crate) fn closure_trait_ref_and_return_type<'tcx>(
212212
tcx: TyCtxt<'tcx>,
213213
fn_trait_def_id: DefId,
214214
self_ty: Ty<'tcx>,
@@ -237,7 +237,7 @@ pub fn closure_trait_ref_and_return_type<'tcx>(
237237
sig.map_bound(|sig| (trait_ref, sig.output()))
238238
}
239239

240-
pub fn coroutine_trait_ref_and_outputs<'tcx>(
240+
pub(crate) fn coroutine_trait_ref_and_outputs<'tcx>(
241241
tcx: TyCtxt<'tcx>,
242242
fn_trait_def_id: DefId,
243243
self_ty: Ty<'tcx>,
@@ -248,7 +248,7 @@ pub fn coroutine_trait_ref_and_outputs<'tcx>(
248248
(trait_ref, sig.yield_ty, sig.return_ty)
249249
}
250250

251-
pub fn future_trait_ref_and_outputs<'tcx>(
251+
pub(crate) fn future_trait_ref_and_outputs<'tcx>(
252252
tcx: TyCtxt<'tcx>,
253253
fn_trait_def_id: DefId,
254254
self_ty: Ty<'tcx>,
@@ -259,7 +259,7 @@ pub fn future_trait_ref_and_outputs<'tcx>(
259259
(trait_ref, sig.return_ty)
260260
}
261261

262-
pub fn iterator_trait_ref_and_outputs<'tcx>(
262+
pub(crate) fn iterator_trait_ref_and_outputs<'tcx>(
263263
tcx: TyCtxt<'tcx>,
264264
iterator_def_id: DefId,
265265
self_ty: Ty<'tcx>,
@@ -270,7 +270,7 @@ pub fn iterator_trait_ref_and_outputs<'tcx>(
270270
(trait_ref, sig.yield_ty)
271271
}
272272

273-
pub fn async_iterator_trait_ref_and_outputs<'tcx>(
273+
pub(crate) fn async_iterator_trait_ref_and_outputs<'tcx>(
274274
tcx: TyCtxt<'tcx>,
275275
async_iterator_def_id: DefId,
276276
self_ty: Ty<'tcx>,
@@ -286,7 +286,7 @@ pub fn impl_item_is_final(tcx: TyCtxt<'_>, assoc_item: &ty::AssocItem) -> bool {
286286
&& tcx.defaultness(assoc_item.container_id(tcx)).is_final()
287287
}
288288

289-
pub enum TupleArgumentsFlag {
289+
pub(crate) enum TupleArgumentsFlag {
290290
Yes,
291291
No,
292292
}

0 commit comments

Comments
 (0)