resolve: Feed the def_kind
query immediately on DefId
creation
This commit is contained in:
parent
46a24ed2f4
commit
f0dc906319
15 changed files with 162 additions and 173 deletions
|
@ -254,13 +254,12 @@ fn associated_type_for_impl_trait_in_trait(
|
|||
assert_eq!(tcx.def_kind(trait_def_id), DefKind::Trait);
|
||||
|
||||
let span = tcx.def_span(opaque_ty_def_id);
|
||||
let trait_assoc_ty = tcx.at(span).create_def(trait_def_id, DefPathData::ImplTraitAssocTy);
|
||||
let trait_assoc_ty =
|
||||
tcx.at(span).create_def(trait_def_id, DefPathData::ImplTraitAssocTy, DefKind::AssocTy);
|
||||
|
||||
let local_def_id = trait_assoc_ty.def_id();
|
||||
let def_id = local_def_id.to_def_id();
|
||||
|
||||
trait_assoc_ty.def_kind(DefKind::AssocTy);
|
||||
|
||||
// There's no HIR associated with this new synthesized `def_id`, so feed
|
||||
// `opt_local_def_id_to_hir_id` with `None`.
|
||||
trait_assoc_ty.opt_local_def_id_to_hir_id(None);
|
||||
|
@ -357,13 +356,12 @@ fn associated_type_for_impl_trait_in_impl(
|
|||
hir::FnRetTy::DefaultReturn(_) => tcx.def_span(impl_fn_def_id),
|
||||
hir::FnRetTy::Return(ty) => ty.span,
|
||||
};
|
||||
let impl_assoc_ty = tcx.at(span).create_def(impl_local_def_id, DefPathData::ImplTraitAssocTy);
|
||||
let impl_assoc_ty =
|
||||
tcx.at(span).create_def(impl_local_def_id, DefPathData::ImplTraitAssocTy, DefKind::AssocTy);
|
||||
|
||||
let local_def_id = impl_assoc_ty.def_id();
|
||||
let def_id = local_def_id.to_def_id();
|
||||
|
||||
impl_assoc_ty.def_kind(DefKind::AssocTy);
|
||||
|
||||
// There's no HIR associated with this new synthesized `def_id`, so feed
|
||||
// `opt_local_def_id_to_hir_id` with `None`.
|
||||
impl_assoc_ty.opt_local_def_id_to_hir_id(None);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue