================
@@ -726,15 +739,19 @@ class CXXExpansionStmtPattern final
     COUNT_Iterating,
   };
 
-  CXXExpansionStmtPattern(ExpansionStmtKind PatternKind, EmptyShell Empty);
+  CXXExpansionStmtPattern(ExpansionStmtKind PatternKind, bool HasExpansionSize,
+                          EmptyShell Empty);
   CXXExpansionStmtPattern(ExpansionStmtKind PatternKind,
                           CXXExpansionStmtDecl *ESD, Stmt *Init,
                           DeclStmt *ExpansionVar, SourceLocation LParenLoc,
-                          SourceLocation ColonLoc, SourceLocation RParenLoc);
+                          SourceLocation ColonLoc, SourceLocation RParenLoc,
+                          ExpansionSize Size);
 
 public:
-  static CXXExpansionStmtPattern *
-  CreateEmpty(ASTContext &Context, EmptyShell Empty, ExpansionStmtKind Kind);
+  static CXXExpansionStmtPattern *CreateEmpty(ASTContext &Context,
+                                              EmptyShell Empty,
+                                              ExpansionStmtKind Kind,
+                                              bool HasExpansionSize);
----------------
ojhunt wrote:

Can `HasExpansionSize` be a `std::optional<unsigned>` as the expansion (as per 
usual I don't have anything like the understanding of template logic that you 
and others have).

https://github.com/llvm/llvm-project/pull/212319
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to