about summary refs log tree commit diff
path: root/compiler
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2024-01-22 20:51:19 +0000
committerEsteban Küber <esteban@kuber.com.ar>2024-01-22 20:51:19 +0000
commit390ef9ba0297ae5ba5aacdf0be0d0c47be8d166a (patch)
tree4a73955c5894219361a49b73fe21e8fd13d1e4af /compiler
parent88189a71e4e4376eea82ac61db6a539612eb200a (diff)
downloadrust-390ef9ba0297ae5ba5aacdf0be0d0c47be8d166a.tar.gz
rust-390ef9ba0297ae5ba5aacdf0be0d0c47be8d166a.zip
Fix incorrect suggestion for boxing tail expression in blocks
Diffstat (limited to 'compiler')
-rw-r--r--compiler/rustc_hir_typeck/src/demand.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/rustc_hir_typeck/src/demand.rs b/compiler/rustc_hir_typeck/src/demand.rs
index 9850892bd36..b6dfc34d3ac 100644
--- a/compiler/rustc_hir_typeck/src/demand.rs
+++ b/compiler/rustc_hir_typeck/src/demand.rs
@@ -44,7 +44,13 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
             || self.suggest_non_zero_new_unwrap(err, expr, expected, expr_ty)
             || self.suggest_calling_boxed_future_when_appropriate(err, expr, expected, expr_ty)
             || self.suggest_no_capture_closure(err, expected, expr_ty)
-            || self.suggest_boxing_when_appropriate(err, expr.span, expr.hir_id, expected, expr_ty)
+            || self.suggest_boxing_when_appropriate(
+                err,
+                expr.peel_blocks().span,
+                expr.hir_id,
+                expected,
+                expr_ty,
+            )
             || self.suggest_block_to_brackets_peeling_refs(err, expr, expr_ty, expected)
             || self.suggest_copied_cloned_or_as_ref(err, expr, expr_ty, expected)
             || self.suggest_clone_for_ref(err, expr, expr_ty, expected)