[clang] [Clang][UBSan] Use EmitCheckedLValue for C++ trivial operator= operands (PR #203737)

Tony Varghese via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 18 08:29:29 PDT 2026


================
@@ -307,17 +312,22 @@ RValue CodeGenFunction::EmitCXXMemberOrOperatorMemberCallExpr(
   }
 
   if (TrivialForCodegen) {
-    if (isa<CXXDestructorDecl>(MD))
+    if (isa<CXXDestructorDecl>(MD)) {
+      (void)getLValueForThis(); // Emit LHS for side effects.
----------------
tonykuttai wrote:

I agree. Wouldn’t this leave us with IR that evaluates the LHS but doesn’t emit any UBSan checks?

https://github.com/llvm/llvm-project/pull/203737


More information about the cfe-commits mailing list