about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Goulet <michael@errs.io>2024-01-14 19:59:10 +0000
committerMichael Goulet <michael@errs.io>2024-01-14 19:59:10 +0000
commitc5cb87cf0cf9f798869c098288304e132b0e53a1 (patch)
tree048b749febdb1aefef2c72cced4d873524011621
parent5876c8cdfd3df742c334d6447d44d760c77103b6 (diff)
downloadrust-c5cb87cf0cf9f798869c098288304e132b0e53a1.tar.gz
rust-c5cb87cf0cf9f798869c098288304e132b0e53a1.zip
Closure body was being built incorrectly on error...
-rw-r--r--compiler/rustc_mir_build/src/build/mod.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/rustc_mir_build/src/build/mod.rs b/compiler/rustc_mir_build/src/build/mod.rs
index b8d08319422..7b987288f80 100644
--- a/compiler/rustc_mir_build/src/build/mod.rs
+++ b/compiler/rustc_mir_build/src/build/mod.rs
@@ -1,5 +1,6 @@
 use crate::build::expr::as_place::PlaceBuilder;
 use crate::build::scope::DropKind;
+use itertools::Itertools;
 use rustc_apfloat::ieee::{Double, Single};
 use rustc_apfloat::Float;
 use rustc_ast::attr;
@@ -654,7 +655,7 @@ fn construct_error(tcx: TyCtxt<'_>, def_id: LocalDefId, guar: ErrorGuaranteed) -
                         ty::ClosureKind::FnOnce => closure_ty,
                     };
                     (
-                        [self_ty].into_iter().chain(sig.inputs().to_vec()).collect(),
+                        [self_ty].into_iter().chain(sig.inputs()[0].tuple_fields()).collect(),
                         sig.output(),
                         None,
                     )