diff options
Diffstat (limited to 'crates/hir_ty/src/infer')
-rw-r--r-- | crates/hir_ty/src/infer/expr.rs | 4 | ||||
-rw-r--r-- | crates/hir_ty/src/infer/unify.rs | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/crates/hir_ty/src/infer/expr.rs b/crates/hir_ty/src/infer/expr.rs index eee3e6ec5..b7870e771 100644 --- a/crates/hir_ty/src/infer/expr.rs +++ b/crates/hir_ty/src/infer/expr.rs | |||
@@ -99,8 +99,8 @@ impl<'a> InferenceContext<'a> { | |||
99 | if self.db.trait_solve(krate, goal.value).is_some() { | 99 | if self.db.trait_solve(krate, goal.value).is_some() { |
100 | self.obligations.push(implements_fn_trait); | 100 | self.obligations.push(implements_fn_trait); |
101 | let output_proj_ty = crate::ProjectionTy { | 101 | let output_proj_ty = crate::ProjectionTy { |
102 | associated_ty: to_assoc_type_id(output_assoc_type), | 102 | associated_ty_id: to_assoc_type_id(output_assoc_type), |
103 | parameters: substs, | 103 | substitution: substs, |
104 | }; | 104 | }; |
105 | let return_ty = self.normalize_projection_ty(output_proj_ty); | 105 | let return_ty = self.normalize_projection_ty(output_proj_ty); |
106 | Some((arg_tys, return_ty)) | 106 | Some((arg_tys, return_ty)) |
diff --git a/crates/hir_ty/src/infer/unify.rs b/crates/hir_ty/src/infer/unify.rs index 16d89ed1b..ebc612ca9 100644 --- a/crates/hir_ty/src/infer/unify.rs +++ b/crates/hir_ty/src/infer/unify.rs | |||
@@ -381,11 +381,11 @@ impl InferenceTable { | |||
381 | self.unify_substs(&tr1.substs, &tr2.substs, depth + 1) | 381 | self.unify_substs(&tr1.substs, &tr2.substs, depth + 1) |
382 | } | 382 | } |
383 | (GenericPredicate::Projection(proj1), GenericPredicate::Projection(proj2)) | 383 | (GenericPredicate::Projection(proj1), GenericPredicate::Projection(proj2)) |
384 | if proj1.projection_ty.associated_ty == proj2.projection_ty.associated_ty => | 384 | if proj1.projection_ty.associated_ty_id == proj2.projection_ty.associated_ty_id => |
385 | { | 385 | { |
386 | self.unify_substs( | 386 | self.unify_substs( |
387 | &proj1.projection_ty.parameters, | 387 | &proj1.projection_ty.substitution, |
388 | &proj2.projection_ty.parameters, | 388 | &proj2.projection_ty.substitution, |
389 | depth + 1, | 389 | depth + 1, |
390 | ) && self.unify_inner(&proj1.ty, &proj2.ty, depth + 1) | 390 | ) && self.unify_inner(&proj1.ty, &proj2.ty, depth + 1) |
391 | } | 391 | } |