about summary refs log tree commit diff
path: root/compiler/rustc_save_analysis
diff options
context:
space:
mode:
authorMichael Goulet <michael@errs.io>2022-08-31 03:04:44 +0000
committerMichael Goulet <michael@errs.io>2022-09-09 01:31:44 +0000
commit78b962a4f348c0b901d2eae9e5852cb3675b1233 (patch)
tree9a784e27f5f2ce042271085a12cf33e9324c8aeb /compiler/rustc_save_analysis
parentc6861df8368a35ef3814e0c379754bb4c7013401 (diff)
downloadrust-78b962a4f348c0b901d2eae9e5852cb3675b1233.tar.gz
rust-78b962a4f348c0b901d2eae9e5852cb3675b1233.zip
RPITIT placeholder items
Diffstat (limited to 'compiler/rustc_save_analysis')
-rw-r--r--compiler/rustc_save_analysis/src/lib.rs1
-rw-r--r--compiler/rustc_save_analysis/src/sig.rs5
2 files changed, 6 insertions, 0 deletions
diff --git a/compiler/rustc_save_analysis/src/lib.rs b/compiler/rustc_save_analysis/src/lib.rs
index 89bca39512f..ebe44a56449 100644
--- a/compiler/rustc_save_analysis/src/lib.rs
+++ b/compiler/rustc_save_analysis/src/lib.rs
@@ -685,6 +685,7 @@ impl<'tcx> SaveContext<'tcx> {
                 | HirDefKind::AssocTy
                 | HirDefKind::Trait
                 | HirDefKind::OpaqueTy
+                | HirDefKind::ImplTraitPlaceholder
                 | HirDefKind::TyParam,
                 def_id,
             ) => Some(Ref { kind: RefKind::Type, span, ref_id: id_from_def_id(def_id) }),
diff --git a/compiler/rustc_save_analysis/src/sig.rs b/compiler/rustc_save_analysis/src/sig.rs
index d1286c9b8b0..ea9c82b3597 100644
--- a/compiler/rustc_save_analysis/src/sig.rs
+++ b/compiler/rustc_save_analysis/src/sig.rs
@@ -320,6 +320,10 @@ impl<'hir> Sig for hir::Ty<'hir> {
                 let item = scx.tcx.hir().item(item_id);
                 item.make(offset, Some(item_id.hir_id()), scx)
             }
+            hir::TyKind::ImplTraitInTrait(item_id) => {
+                let item = scx.tcx.hir().item(item_id);
+                item.make(offset, Some(item_id.hir_id()), scx)
+            }
             hir::TyKind::Typeof(_) | hir::TyKind::Infer | hir::TyKind::Err => Err("Ty"),
         }
     }
@@ -562,6 +566,7 @@ impl<'hir> Sig for hir::Item<'hir> {
             hir::ItemKind::GlobalAsm(_) => Err("global asm"),
             hir::ItemKind::ExternCrate(_) => Err("extern crate"),
             hir::ItemKind::OpaqueTy(..) => Err("opaque type"),
+            hir::ItemKind::ImplTraitPlaceholder(..) => Err("opaque type in trait"),
             // FIXME should implement this (e.g., pub use).
             hir::ItemKind::Use(..) => Err("import"),
         }