rsmith added inline comments.
================
Comment at: include/clang/Basic/Builtins.h:216-219
@@ -215,3 +215,6 @@
/// \brief This names the __make_integer_seq BuiltinTemplateDecl.
BTK__make_integer_seq
+
+ /// \brief This names the __nth_element BuiltinTemplateDecl.
+ , BTK__nth_element
};
----------------
Please put the comma after `BTK__make_integer_seq`, not on this line.
================
Comment at: lib/AST/DeclTemplate.cpp:1243
@@ +1242,3 @@
+static TemplateParameterList *
+createNthElement(const ASTContext &C, DeclContext *DC) {
+ // typename IndexType
----------------
Rename this `createNthElementParameterList`.
================
Comment at: lib/AST/DeclTemplate.cpp:1244-1248
@@ +1243,7 @@
+createNthElement(const ASTContext &C, DeclContext *DC) {
+ // typename IndexType
+ auto *IndexType = TemplateTypeParmDecl::Create(
+ C, DC, SourceLocation(), SourceLocation(), /*Depth=*/0, /*Position=*/0,
+ /*Id=*/nullptr, /*Typename=*/true, /*ParameterPack=*/false);
+ IndexType->setImplicit(true);
+
----------------
Use `NonTypeTemplateParmDecl::Create`. You can get `size_t` from
`ASTContext::getSizeType`.
================
Comment at: lib/Sema/SemaTemplate.cpp:2102-2103
@@ +2101,4 @@
+ // We simply return the type at index `Index`.
+ // TODO:
+ // What are the implications of calling .getExtValue() on an APSInt?
+ assert(Index.getExtValue() == Index &&
----------------
`getExtValue` is OK here, as we don't support `size_t` being larger than 64
bits.
http://reviews.llvm.org/D15421
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits