diff options
| author | Oli Scherer <github333195615777966@oli-obk.de> | 2025-03-19 14:18:15 +0000 |
|---|---|---|
| committer | Oli Scherer <github333195615777966@oli-obk.de> | 2025-03-20 16:20:41 +0000 |
| commit | 485c14f373c4bd2365283375ceba5fa105451dbe (patch) | |
| tree | eea2acdd6094b3022ea3fe1420b00c2f23bd5f4b | |
| parent | 87e60a7d285f8ea560189024f85f2b194d1f168f (diff) | |
| download | rust-485c14f373c4bd2365283375ceba5fa105451dbe.tar.gz rust-485c14f373c4bd2365283375ceba5fa105451dbe.zip | |
Make `crate_hash` not iterate over `hir_crate` owners anymore
| -rw-r--r-- | compiler/rustc_middle/src/hir/map.rs | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/compiler/rustc_middle/src/hir/map.rs b/compiler/rustc_middle/src/hir/map.rs index 2e589150d3e..236183d6b2f 100644 --- a/compiler/rustc_middle/src/hir/map.rs +++ b/compiler/rustc_middle/src/hir/map.rs @@ -1176,15 +1176,14 @@ pub(super) fn crate_hash(tcx: TyCtxt<'_>, _: LocalCrate) -> Svh { debugger_visualizers.hash_stable(&mut hcx, &mut stable_hasher); if tcx.sess.opts.incremental.is_some() { let definitions = tcx.untracked().definitions.freeze(); - let mut owner_spans: Vec<_> = krate - .owners - .iter_enumerated() - .filter_map(|(def_id, info)| { - let _ = info.as_owner()?; + let mut owner_spans: Vec<_> = tcx + .hir_crate_items(()) + .definitions() + .map(|def_id| { let def_path_hash = definitions.def_path_hash(def_id); let span = tcx.source_span(def_id); debug_assert_eq!(span.parent(), None); - Some((def_path_hash, span)) + (def_path_hash, span) }) .collect(); owner_spans.sort_unstable_by_key(|bn| bn.0); |
