]> git.lizzy.rs Git - rust.git/blobdiff - compiler/rustc_hir_typeck/src/demand.rs
Rollup merge of #106533 - TaKO8Ki:use-smaller-span-for-missing-lifetime/generic-args...
[rust.git] / compiler / rustc_hir_typeck / src / demand.rs
index 6cf515cbb0adc2d15cb34e12cefef55970133c08..cf070eb962f09bf46d0def52c36913a839a8116c 100644 (file)
@@ -226,12 +226,11 @@ pub fn point_at_expr_source_of_inferred_type(
         let [hir::PathSegment { ident, args: None, .. }] = p.segments else { return false; };
         let hir::def::Res::Local(hir_id) = p.res else { return false; };
         let Some(hir::Node::Pat(pat)) = map.find(hir_id) else { return false; };
-        let parent = map.get_parent_node(pat.hir_id);
         let Some(hir::Node::Local(hir::Local {
             ty: None,
             init: Some(init),
             ..
-        })) = map.find(parent) else { return false; };
+        })) = map.find_parent(pat.hir_id) else { return false; };
         let Some(ty) = self.node_ty_opt(init.hir_id) else { return false; };
         if ty.is_closure() || init.span.overlaps(expr.span) || pat.span.from_expansion() {
             return false;
@@ -285,12 +284,11 @@ fn visit_expr(&mut self, ex: &'v hir::Expr<'v>) {
             // In every expression where the binding is referenced, we will look at that
             // expression's type and see if it is where the incorrect found type was fully
             // "materialized" and point at it. We will also try to provide a suggestion there.
-            let parent = map.get_parent_node(binding.hir_id);
-            if let Some(hir::Node::Expr(expr))
-            | Some(hir::Node::Stmt(hir::Stmt {
+            if let Some(hir::Node::Expr(expr)
+            | hir::Node::Stmt(hir::Stmt {
                 kind: hir::StmtKind::Expr(expr) | hir::StmtKind::Semi(expr),
                 ..
-            })) = &map.find(parent)
+            })) = &map.find_parent(binding.hir_id)
                 && let hir::ExprKind::MethodCall(segment, rcvr, args, _span) = expr.kind
                 && rcvr.hir_id == binding.hir_id
                 && let Some(def_id) = self.typeck_results.borrow().type_dependent_def_id(expr.hir_id)