[clang] [Clang][Sema] Fix crash in __builtin_dump_struct with immediate callables (PR #192880)
Vladislav Semykin via cfe-commits
cfe-commits at lists.llvm.org
Sun May 3 09:37:30 PDT 2026
================
@@ -18469,6 +18463,15 @@ static void RemoveNestedImmediateInvocation(
// Lambdas have already been processed inside their eval contexts.
return E;
}
+
+ // Default TransformOpaqueValueExpr asserts on OVEs that have a SourceExpr.
+ // __builtin_dump_struct binds the record pointer in an OpaqueValueExpr
+ // inside a PseudoObjectExpr; ComplexRemove can root inside the PSE's
+ // semantic form and reach that OVE without the binding setup the assert
+ // expects. The PSE owns the binding; nothing under ComplexRemove needs to
+ // rebuild the OVE's source here.
+ ExprResult TransformOpaqueValueExpr(OpaqueValueExpr *E) { return E; }
+
----------------
ViNN280801 wrote:
Done, thank you, and I apologize for my first noise
https://github.com/llvm/llvm-project/pull/192880
More information about the cfe-commits
mailing list