[llvm-branch-commits] [clang] [Clang] [C++26] Expansion Statements (Part 6: Destructuring Expansion Statements) (PR #169685)
Corentin Jabot via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Jun 1 04:58:39 PDT 2026
================
@@ -274,6 +274,51 @@ static IterableExpansionStmtData TryBuildIterableExpansionStmtInitializer(
return Data;
}
+static StmtResult BuildDestructuringDecompositionDecl(
+ Sema &S, Expr *ExpansionInitializer, SourceLocation ColonLoc,
+ bool VarIsConstexpr,
+ ArrayRef<MaterializeTemporaryExpr *> LifetimeExtendTemps) {
+ auto Ctx = Sema::ExpressionEvaluationContext::PotentiallyEvaluated;
+ if (VarIsConstexpr)
+ Ctx = Sema::ExpressionEvaluationContext::ImmediateFunctionContext;
----------------
cor3ntin wrote:
We could have a `Sema::ExpressionEvaluationContextEvaluatedOrImmediate(bool constexpr)`.
However in this context shouldn't the context always be immediate?
https://github.com/llvm/llvm-project/pull/169685
More information about the llvm-branch-commits
mailing list