[clang] a465ac2 - [clang][NFC] Use llvm::ListSeparator in APValue::printPretty (#226125)

via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 25 02:16:01 PDT 2026


Author: Timm Baeder
Date: 2026-09-25T11:15:53+02:00
New Revision: a465ac2be931ec1f21c9807434d59cb3b92d4b06

URL: https://github.com/llvm/llvm-project/commit/a465ac2be931ec1f21c9807434d59cb3b92d4b06
DIFF: https://github.com/llvm/llvm-project/commit/a465ac2be931ec1f21c9807434d59cb3b92d4b06.diff

LOG: [clang][NFC] Use llvm::ListSeparator in APValue::printPretty (#226125)

Instead of the manual `First` flag tracking.

Added: 
    

Modified: 
    clang/lib/AST/APValue.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/AST/APValue.cpp b/clang/lib/AST/APValue.cpp
index 5cf5a4aa6431b..3e61281fabd3f 100644
--- a/clang/lib/AST/APValue.cpp
+++ b/clang/lib/AST/APValue.cpp
@@ -926,37 +926,31 @@ void APValue::printPretty(raw_ostream &Out, const PrintingPolicy &Policy,
   }
   case APValue::Struct: {
     Out << '{';
-    bool First = true;
+    llvm::ListSeparator Comma;
     const auto *RD = Ty->castAsRecordDecl();
     if (unsigned N = getStructNumBases()) {
       const CXXRecordDecl *CD = cast<CXXRecordDecl>(RD);
       CXXRecordDecl::base_class_const_iterator BI = CD->bases_begin();
       for (unsigned I = 0; I != N; ++I, ++BI) {
         assert(BI != CD->bases_end());
-        if (!First)
-          Out << ", ";
+        Out << Comma;
         getStructBase(I).printPretty(Out, Policy, BI->getType(), Ctx);
-        First = false;
       }
     }
     for (const auto *FI : RD->fields()) {
-      if (!First)
-        Out << ", ";
+      Out << Comma;
       if (FI->isUnnamedBitField())
         continue;
-      getStructField(FI->getFieldIndex()).
-        printPretty(Out, Policy, FI->getType(), Ctx);
-      First = false;
+      getStructField(FI->getFieldIndex())
+          .printPretty(Out, Policy, FI->getType(), Ctx);
     }
     if (unsigned N = getStructNumVirtualBases()) {
       const CXXRecordDecl *CD = cast<CXXRecordDecl>(RD);
       CXXRecordDecl::base_class_const_iterator BI = CD->vbases_begin();
       for (unsigned I = 0; I != N; ++I, ++BI) {
         assert(BI != CD->vbases_end());
-        if (!First)
-          Out << ", ";
+        Out << Comma;
         getStructVirtualBase(I).printPretty(Out, Policy, BI->getType(), Ctx);
-        First = false;
       }
     }
     Out << '}';


        


More information about the cfe-commits mailing list