================
@@ -482,6 +526,57 @@ class DeducedTemplateStorage : public
UncommonTemplateNameStorage,
TemplateName Underlying, const DefaultArguments
&DefArgs);
};
+/// A structure for storing a pack-index-template-name ([temp.names]).
+///
+/// C++29 [temp.names]p1:
+/// pack-index-template-name:
+/// simple-template-name ... [ constant-expression ]
+class PackIndexingTemplateStorage final
+ : public UncommonTemplateNameStorage,
+ public llvm::FoldingSetNode,
+ private llvm::TrailingObjects<PackIndexingTemplateStorage, TemplateName>
{
+ friend class ASTContext;
+ friend TrailingObjects;
+
+ TemplateName Pattern;
+ llvm::PointerIntPair<Expr *, 1> IndexAndIsFullySubstitited;
----------------
erichkeane wrote:
```suggestion
llvm::PointerIntPair<Expr *, 1> IndexAndIsFullySubstituted;
```
https://github.com/llvm/llvm-project/pull/218738
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits