[clang] [clang-tools-extra] [clang] Make `InitListExpr::isExplicit()` work (PR #195175)

via cfe-commits cfe-commits at lists.llvm.org
Mon May 4 09:28:26 PDT 2026


================
@@ -3550,21 +3552,22 @@ InitListChecker::getStructuredSubobjectInit(InitListExpr *IList, unsigned Index,
       ExpectedNumInits = IList->getNumInits() - Index;
   }
 
-  InitListExpr *Result =
-      createInitListExpr(CurrentObjectType, InitRange, ExpectedNumInits);
+  InitListExpr *Result = createInitListExpr(
+      CurrentObjectType, InitRange, ExpectedNumInits, /*IsExplicit=*/false);
 
   // Link this new initializer list into the structured initializer
   // lists.
   StructuredList->updateInit(SemaRef.Context, StructuredIndex, Result);
   return Result;
 }
 
-InitListExpr *
-InitListChecker::createInitListExpr(QualType CurrentObjectType,
-                                    SourceRange InitRange,
-                                    unsigned ExpectedNumInits) {
-  InitListExpr *Result = new (SemaRef.Context) InitListExpr(
-      SemaRef.Context, InitRange.getBegin(), {}, InitRange.getEnd());
+InitListExpr *InitListChecker::createInitListExpr(QualType CurrentObjectType,
+                                                  SourceRange InitRange,
+                                                  unsigned ExpectedNumInits,
+                                                  bool IsExplicit) {
+  InitListExpr *Result = new (SemaRef.Context)
+      InitListExpr(SemaRef.Context, InitRange.getBegin(), {},
+                   InitRange.getEnd(), /*isExplicit=*/IsExplicit);
----------------
Sirraide wrote:

```suggestion
                   InitRange.getEnd(), IsExplicit);
```

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


More information about the cfe-commits mailing list