From f9fd7f76f2e41c92b66b0f2b51f4053419d5b3bb Mon Sep 17 00:00:00 2001 From: Nicholas Nethercote Date: Thu, 14 May 2026 10:21:38 +1000 Subject: [PATCH] Rename `DeadItem::level` The name is misleading because the field contains a `Level` *and* an `Option`. This commit renames it `level_plus` which better communicates that it's more than just a level. --- compiler/rustc_passes/src/dead.rs | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/compiler/rustc_passes/src/dead.rs b/compiler/rustc_passes/src/dead.rs index 426608af0cc9..265ddeb88e5f 100644 --- a/compiler/rustc_passes/src/dead.rs +++ b/compiler/rustc_passes/src/dead.rs @@ -1035,7 +1035,7 @@ fn mark_live_symbols_and_ignored_derived_traits( struct DeadItem { def_id: LocalDefId, name: Symbol, - level: (lint::Level, Option), + level_plus: (lint::Level, Option), } struct DeadVisitor<'tcx> { @@ -1082,7 +1082,7 @@ fn should_warn_about_field(&mut self, field: &ty::FieldDef) -> ShouldWarnAboutFi ShouldWarnAboutField::Yes } - fn def_lint_level(&self, id: LocalDefId) -> (lint::Level, Option) { + fn def_lint_level_plus(&self, id: LocalDefId) -> (lint::Level, Option) { let hir_id = self.tcx.local_def_id_to_hir_id(id); let level_spec = self.tcx.lint_level_spec_at_node(self.target_lint, hir_id); (level_spec.level, level_spec.lint_id) @@ -1108,8 +1108,8 @@ fn lint_at_single_level( let Some(&first_item) = dead_codes.first() else { return }; let tcx = self.tcx; - let first_lint_level = first_item.level; - assert!(dead_codes.iter().skip(1).all(|item| item.level == first_lint_level)); + let first_lint_level_plus = first_item.level_plus; + assert!(dead_codes.iter().skip(1).all(|item| item.level_plus == first_lint_level_plus)); let names: Vec<_> = dead_codes.iter().map(|item| item.name).collect(); let spans: Vec<_> = dead_codes @@ -1266,9 +1266,10 @@ fn warn_multiple( if dead_codes.is_empty() { return; } - // FIXME: `dead_codes` should probably be morally equivalent to `IndexMap<(Level, LintExpectationId), (DefId, Symbol)>` - dead_codes.sort_by_key(|v| v.level.0); - for group in dead_codes.chunk_by(|a, b| a.level == b.level) { + // FIXME: `dead_codes` should probably be morally equivalent to + // `IndexMap<(Level, LintExpectationId), (DefId, Symbol)>` + dead_codes.sort_by_key(|v| v.level_plus.0); + for group in dead_codes.chunk_by(|a, b| a.level_plus == b.level_plus) { self.lint_at_single_level(&group, participle, Some(def_id), report_on); } } @@ -1277,7 +1278,7 @@ fn warn_dead_code(&mut self, id: LocalDefId, participle: &str) { let item = DeadItem { def_id: id, name: self.tcx.item_name(id.to_def_id()), - level: self.def_lint_level(id), + level_plus: self.def_lint_level_plus(id), }; self.lint_at_single_level(&[&item], participle, None, ReportOn::NamedField); } @@ -1381,8 +1382,8 @@ fn lint_dead_codes<'tcx>( && !visitor.is_live_code(local_def_id) { let name = tcx.item_name(def_id); - let level = visitor.def_lint_level(local_def_id); - dead_codes.push(DeadItem { def_id: local_def_id, name, level }); + let level_plus = visitor.def_lint_level_plus(local_def_id); + dead_codes.push(DeadItem { def_id: local_def_id, name, level_plus }); } } } @@ -1408,8 +1409,8 @@ fn lint_dead_codes<'tcx>( let def_id = variant.def_id.expect_local(); if !live_symbols.contains(&def_id) { // Record to group diagnostics. - let level = visitor.def_lint_level(def_id); - dead_variants.push(DeadItem { def_id, name: variant.name, level }); + let level_plus = visitor.def_lint_level_plus(def_id); + dead_variants.push(DeadItem { def_id, name: variant.name, level_plus }); continue; } @@ -1424,8 +1425,8 @@ fn lint_dead_codes<'tcx>( .filter_map(|field| { let def_id = field.did.expect_local(); if let ShouldWarnAboutField::Yes = visitor.should_warn_about_field(field) { - let level = visitor.def_lint_level(def_id); - Some(DeadItem { def_id, name: field.name, level }) + let level_plus = visitor.def_lint_level_plus(def_id); + Some(DeadItem { def_id, name: field.name, level_plus }) } else { None }