diff options
Diffstat (limited to 'crates/ra_hir_ty')
-rw-r--r-- | crates/ra_hir_ty/src/infer.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/crates/ra_hir_ty/src/infer.rs b/crates/ra_hir_ty/src/infer.rs index 08c220cfe..e40df65e3 100644 --- a/crates/ra_hir_ty/src/infer.rs +++ b/crates/ra_hir_ty/src/infer.rs | |||
@@ -379,7 +379,11 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> { | |||
379 | ) -> Ty { | 379 | ) -> Ty { |
380 | match assoc_ty { | 380 | match assoc_ty { |
381 | Some(res_assoc_ty) => { | 381 | Some(res_assoc_ty) => { |
382 | // Fast path: Check if inner_ty is is `impl Trait` and contained input TypeAlias id | 382 | // FIXME: |
383 | // Check if inner_ty is is `impl Trait` and contained input TypeAlias id | ||
384 | // this is a workaround while Chalk assoc type projection doesn't always work yet, | ||
385 | // but once that is fixed I don't think we should keep this | ||
386 | // (we'll probably change how associated types are resolved anyway) | ||
383 | if let Ty::Opaque(ref predicates) = inner_ty { | 387 | if let Ty::Opaque(ref predicates) = inner_ty { |
384 | for p in predicates.iter() { | 388 | for p in predicates.iter() { |
385 | if let GenericPredicate::Projection(projection) = p { | 389 | if let GenericPredicate::Projection(projection) = p { |