diff options
Diffstat (limited to 'crates/ra_hir_ty/src/lower.rs')
-rw-r--r-- | crates/ra_hir_ty/src/lower.rs | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/crates/ra_hir_ty/src/lower.rs b/crates/ra_hir_ty/src/lower.rs index 3dc154e92..3af8d55a1 100644 --- a/crates/ra_hir_ty/src/lower.rs +++ b/crates/ra_hir_ty/src/lower.rs | |||
@@ -720,8 +720,7 @@ fn assoc_type_bindings_from_type_bound<'a>( | |||
720 | None => return SmallVec::<[GenericPredicate; 1]>::new(), | 720 | None => return SmallVec::<[GenericPredicate; 1]>::new(), |
721 | Some(t) => t, | 721 | Some(t) => t, |
722 | }; | 722 | }; |
723 | let projection_ty = | 723 | let projection_ty = ProjectionTy { associated_ty, parameters: super_trait_ref.substs }; |
724 | ProjectionTy { associated_ty, parameters: super_trait_ref.substs.clone() }; | ||
725 | let mut preds = SmallVec::with_capacity( | 724 | let mut preds = SmallVec::with_capacity( |
726 | binding.type_ref.as_ref().map_or(0, |_| 1) + binding.bounds.len(), | 725 | binding.type_ref.as_ref().map_or(0, |_| 1) + binding.bounds.len(), |
727 | ); | 726 | ); |
@@ -1216,7 +1215,7 @@ pub(crate) fn impl_trait_query(db: &dyn HirDatabase, impl_id: ImplId) -> Option< | |||
1216 | } | 1215 | } |
1217 | 1216 | ||
1218 | pub(crate) fn return_type_impl_traits( | 1217 | pub(crate) fn return_type_impl_traits( |
1219 | db: &impl HirDatabase, | 1218 | db: &dyn HirDatabase, |
1220 | def: hir_def::FunctionId, | 1219 | def: hir_def::FunctionId, |
1221 | ) -> Option<Arc<Binders<ReturnTypeImplTraits>>> { | 1220 | ) -> Option<Arc<Binders<ReturnTypeImplTraits>>> { |
1222 | // FIXME unify with fn_sig_for_fn instead of doing lowering twice, maybe | 1221 | // FIXME unify with fn_sig_for_fn instead of doing lowering twice, maybe |