[clang] [clang][bytecode] Use InterpState::InConstantContext directly (PR #157224)
Timm Baeder via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 5 21:57:23 PDT 2025
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/157224
Instead of referring to the EvalInfo's flag.
>From f2cb50e0ef663cc2b414cf08397d3b0d22a2407a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timm=20B=C3=A4der?= <tbaeder at redhat.com>
Date: Sat, 6 Sep 2025 06:56:37 +0200
Subject: [PATCH] [clang][bytecode] Use InterpState::InConstantContext directly
Instead of referring to the EvalInfo's flag.
---
clang/lib/AST/ByteCode/InterpState.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/clang/lib/AST/ByteCode/InterpState.cpp b/clang/lib/AST/ByteCode/InterpState.cpp
index 6b0e72095dc55..2328cdbddd806 100644
--- a/clang/lib/AST/ByteCode/InterpState.cpp
+++ b/clang/lib/AST/ByteCode/InterpState.cpp
@@ -21,6 +21,7 @@ InterpState::InterpState(State &Parent, Program &P, InterpStack &Stk,
Context &Ctx, SourceMapper *M)
: Parent(Parent), M(M), P(P), Stk(Stk), Ctx(Ctx), BottomFrame(*this),
Current(&BottomFrame) {
+ InConstantContext = Parent.InConstantContext;
CheckingPotentialConstantExpression =
Parent.CheckingPotentialConstantExpression;
CheckingForUndefinedBehavior = Parent.CheckingForUndefinedBehavior;
@@ -31,6 +32,7 @@ InterpState::InterpState(State &Parent, Program &P, InterpStack &Stk,
: Parent(Parent), M(nullptr), P(P), Stk(Stk), Ctx(Ctx),
BottomFrame(*this, Func, nullptr, CodePtr(), Func->getArgSize()),
Current(&BottomFrame) {
+ InConstantContext = Parent.InConstantContext;
CheckingPotentialConstantExpression =
Parent.CheckingPotentialConstantExpression;
CheckingForUndefinedBehavior = Parent.CheckingForUndefinedBehavior;
@@ -40,7 +42,7 @@ bool InterpState::inConstantContext() const {
if (ConstantContextOverride)
return *ConstantContextOverride;
- return Parent.InConstantContext;
+ return InConstantContext;
}
InterpState::~InterpState() {
More information about the cfe-commits
mailing list