[clang] [clang][CFG] Sequence RHS before LHS for overloaded assignment operators in CFG to match C++17 rules (PR #181113)

Baranov Victor via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 12 06:51:41 PST 2026


================
@@ -23,11 +23,11 @@ class B {
 // CHECK-NEXT:    2: B i;
 // CHECK-NEXT:    3: operator=
 // CHECK-NEXT:    4: [B1.3] (ImplicitCastExpr, FunctionToPointerDecay, B &(*)(B &&) noexcept)
-// CHECK-NEXT:    5: i
-// CHECK-NEXT:    6: {} (CXXConstructExpr, [B1.7], [B1.8], B)
-// CHECK-NEXT:    7: [B1.6] (BindTemporary)
-// CHECK-NEXT:    8: [B1.7]
-// CHECK-NEXT:    9: [B1.5] = [B1.8] (OperatorCall)
+// CHECK-NEXT:    5: {} (CXXConstructExpr, [B1.6], [B1.7], B)
+// CHECK-NEXT:    6: [B1.5] (BindTemporary)
+// CHECK-NEXT:    7: [B1.6]
+// CHECK-NEXT:    8: i
+// CHECK-NEXT:    9: [B1.8] = [B1.7] (OperatorCall)
----------------
vbvictor wrote:

This file is `-std=c++14` so I'd expect no changes in CFG before C++17 if we target only C++17 and onwards 

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


More information about the cfe-commits mailing list