[clang] [clang][Interp] Cleaning up `FIXME`s added during `ArrayInitLoopExpr` implementation. (PR #70053)
Timm Baeder via cfe-commits
cfe-commits at lists.llvm.org
Wed Jan 24 02:43:36 PST 2024
================
@@ -389,10 +391,28 @@ template <class Emitter> class LocalScope : public VariableScope<Emitter> {
if (!Local.Desc->isPrimitive() && !Local.Desc->isPrimitiveArray()) {
this->Ctx->emitGetPtrLocal(Local.Offset, SourceInfo{});
this->Ctx->emitRecordDestruction(Local.Desc);
+ removeIfStoredOpaqueValue(Local);
}
}
}
+ void removeStoredOpaqueValues() {
+ if (!Idx)
+ return;
+
+ for (Scope::Local &Local : this->Ctx->Descriptors[*Idx]) {
----------------
tbaederr wrote:
```suggestion
for (const Scope::Local &Local : this->Ctx->Descriptors[*Idx]) {
```
https://github.com/llvm/llvm-project/pull/70053
More information about the cfe-commits
mailing list