From: Philipp Hansch Date: Sun, 26 Apr 2020 11:45:47 +0000 (+0200) Subject: Fix cargo crash X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=eda73fe707ed680c89e5a080318f6fa7b555616e;p=rust.git Fix cargo crash --- diff --git a/clippy_lints/src/types.rs b/clippy_lints/src/types.rs index d8d6dcc3777..6d49f50d550 100644 --- a/clippy_lints/src/types.rs +++ b/clippy_lints/src/types.rs @@ -2460,14 +2460,13 @@ fn visit_expr(&mut self, e: &'tcx Expr<'_>) { if_chain! { if let ExprKind::Call(ref fun, ref args) = e.kind; if let ExprKind::Path(QPath::TypeRelative(ref ty, ref method)) = fun.kind; + if let TyKind::Path(QPath::Resolved(None, ty_path)) = ty.kind; then { if !same_tys(self.cx, self.target.ty(), self.body.expr_ty(e)) { return; } - let ty = hir_ty_to_ty(self.cx.tcx, ty); - - if is_type_diagnostic_item(self.cx, ty, sym!(hashmap_type)) { + if match_path(ty_path, &paths::HASHMAP) { if method.ident.name == sym!(new) { self.suggestions .insert(e.span, "HashMap::default()".to_string()); @@ -2480,7 +2479,7 @@ fn visit_expr(&mut self, e: &'tcx Expr<'_>) { ), ); } - } else if is_type_diagnostic_item(self.cx, ty, sym!(hashset_type)) { + } else if match_path(ty_path, &paths::HASHSET) { if method.ident.name == sym!(new) { self.suggestions .insert(e.span, "HashSet::default()".to_string());