]> git.lizzy.rs Git - rust.git/commitdiff
Check if parameters is empty
authorEdwin Cheng <edwin0cheng@gmail.com>
Tue, 24 Dec 2019 15:39:44 +0000 (23:39 +0800)
committerEdwin Cheng <edwin0cheng@gmail.com>
Tue, 24 Dec 2019 16:12:29 +0000 (00:12 +0800)
crates/ra_hir_ty/src/infer.rs

index e40df65e31d3b5d548c0ce5c87a5915ba09fba87..32c0d07a59747380d90a7e53686ee45182f60e2d 100644 (file)
@@ -387,10 +387,12 @@ fn resolve_associated_type_with_params(
                 if let Ty::Opaque(ref predicates) = inner_ty {
                     for p in predicates.iter() {
                         if let GenericPredicate::Projection(projection) = p {
-                            if projection.projection_ty.associated_ty == res_assoc_ty
-                                && projection.ty != Ty::Unknown
-                            {
-                                return projection.ty.clone();
+                            if projection.projection_ty.associated_ty == res_assoc_ty {
+                                if let ty_app!(_, params) = &projection.ty {
+                                    if params.len() == 0 {
+                                        return projection.ty.clone();
+                                    }
+                                }
                             }
                         }
                     }