]> granicus.if.org Git - clang/commit
Initial implementation of function parameter packs. This implementation allows:
authorDouglas Gregor <dgregor@apple.com>
Wed, 5 Jan 2011 23:12:31 +0000 (23:12 +0000)
committerDouglas Gregor <dgregor@apple.com>
Wed, 5 Jan 2011 23:12:31 +0000 (23:12 +0000)
commit603cfb4da2f7ba08a1c3452c2fbf70585b8e7621
tree5d4d53e48f48770f5b9d1a429ded000d32823925
parent8678d44d973989a7af70311572626036219307e2
Initial implementation of function parameter packs. This implementation allows:

  1) Declaration of function parameter packs
  2) Instantiation of function parameter packs within function types.
  3) Template argument deduction of function parameter packs when
  matching two function types.

We're missing all of the important template-instantiation logic for
function template definitions, along with template argument deduction
from the argument list of a function call, so don't even think of
trying to use these for real yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122926 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Basic/DiagnosticSemaKinds.td
include/clang/Sema/Sema.h
lib/Sema/SemaDecl.cpp
lib/Sema/SemaTemplateDeduction.cpp
lib/Sema/SemaTemplateInstantiate.cpp
lib/Sema/TreeTransform.h
test/CXX/dcl.decl/dcl.meaning/dcl.fct/p13.cpp
test/CXX/dcl.decl/dcl.meaning/dcl.fct/p14.cpp
test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp