diff options
| author | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2024-04-03 17:23:08 +0300 |
|---|---|---|
| committer | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2024-04-03 17:33:34 +0300 |
| commit | 44b36024786a5e00d55111c1a43a0c8388caefcb (patch) | |
| tree | d258634c8cf94ed9885c2434f2079efb86b829bf /compiler/rustc_middle/src | |
| parent | 99c42d234064bede688a02d7076d369ecce1a513 (diff) | |
| download | rust-44b36024786a5e00d55111c1a43a0c8388caefcb.tar.gz rust-44b36024786a5e00d55111c1a43a0c8388caefcb.zip | |
hir: Drop owner's own item-local id (zero) from parenting tables
Diffstat (limited to 'compiler/rustc_middle/src')
| -rw-r--r-- | compiler/rustc_middle/src/hir/mod.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/compiler/rustc_middle/src/hir/mod.rs b/compiler/rustc_middle/src/hir/mod.rs index 28f7574f66f..42a06c968c7 100644 --- a/compiler/rustc_middle/src/hir/mod.rs +++ b/compiler/rustc_middle/src/hir/mod.rs @@ -174,8 +174,12 @@ pub fn provide(providers: &mut Providers) { let parent_owner_id = tcx.local_def_id_to_hir_id(parent_def_id).owner; HirId { owner: parent_owner_id, - local_id: tcx.hir_crate(()).owners[parent_owner_id.def_id].unwrap().parenting - [&owner_id.def_id], + local_id: tcx.hir_crate(()).owners[parent_owner_id.def_id] + .unwrap() + .parenting + .get(&owner_id.def_id) + .copied() + .unwrap_or(ItemLocalId::from_u32(0)), } }) }; |
