From e3ea5972419b64edfe661f301c78a6dec31822aa Mon Sep 17 00:00:00 2001 From: Pavel Yaskevich Date: Mon, 6 Feb 2023 10:43:21 -0800 Subject: [PATCH] [CSSyntacticElement] Correctly determine whether body is a "single expression" Result builder transformed bodies are always multi-statement. Resolves: https://github.com/apple/swift/issues/63264 --- lib/Sema/CSSyntacticElement.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/Sema/CSSyntacticElement.cpp b/lib/Sema/CSSyntacticElement.cpp index 55948351def78..59a78df6ca33d 100644 --- a/lib/Sema/CSSyntacticElement.cpp +++ b/lib/Sema/CSSyntacticElement.cpp @@ -2396,7 +2396,10 @@ bool ConstraintSystem::applySolutionToBody(Solution &solution, if (!body || application.hadError) return true; - fn.setTypecheckedBody(cast(body), fn.hasSingleExpressionBody()); + fn.setTypecheckedBody(cast(body), + solution.getAppliedBuilderTransform(fn) + ? false + : fn.hasSingleExpressionBody()); return false; }