]> granicus.if.org Git - clang/commit
Implicitly expand argument packs when performing template argument
authorDouglas Gregor <dgregor@apple.com>
Wed, 22 Dec 2010 18:17:10 +0000 (18:17 +0000)
committerDouglas Gregor <dgregor@apple.com>
Wed, 22 Dec 2010 18:17:10 +0000 (18:17 +0000)
commit20a55e2515ce89ddf9993941f9b5d0f3a6c91b4f
treec382dc9292a4bb89e52fff62b7ed2b0b4f5ebd23
parent250704bc525361e8612ea01f245a41a1193c13f0
Implicitly expand argument packs when performing template argument
deduction. Unify all of the looping over template arguments for
deduction purposes into a single place, where argument pack expansion
occurs; this is also the hook for deducing from pack expansions, which
itself is not yet implemented.

For now, at least we can handle a basic "count" metafunction written
with variadics. See the new test for the formulation that works.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122418 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Basic/DiagnosticSemaKinds.td
lib/Sema/SemaTemplateDeduction.cpp
test/CXX/temp/temp.decls/temp.variadic/count.cpp [new file with mode: 0644]