History log of /external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
762bb9d0ad20320b9f97a841dce57ba5e8e48b07 14-Oct-2011 Richard Smith <richard-llvm@metafoo.co.uk> Update all tests other than Driver/std.cpp to use -std=c++11 rather than
-std=c++0x. Patch by Ahmed Charles!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
a03478231363c67ea0e1f4bc1bc708e064040e56 13-Jan-2011 Douglas Gregor <dgregor@apple.com> Implement C++0x [temp.arg.template]p3, which allows slightly fuzzy
matching of variadic template template parameters to template
arguments. This paragraph was the subject of ISO C++ committee
document N2555: Extending Variadic Template Template Parameters.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
603cfb4da2f7ba08a1c3452c2fbf70585b8e7621 06-Jan-2011 Douglas Gregor <dgregor@apple.com> 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
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
d53e16abd1dcaa2942d5183f48e7f63d0e75b35a 05-Jan-2011 Douglas Gregor <dgregor@apple.com> When we're converting deduced template arguments to the type of the
corresponding template parameter, make sure that prior converted
template arguments are available for substitution.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
a7fc901a2e39bfe55bfcff5934b2d9fdf9656491 05-Jan-2011 Douglas Gregor <dgregor@apple.com> Replace the representation of template template argument pack
expansions with something that is easier to use correctly: a new
template argment kind, rather than a bit on an existing kind. Update
all of the switch statements that deal with template arguments, fixing
a few latent bugs in the process. I"m happy with this representation,
now.

And, oh look! Template instantiation and deduction work for template
template argument pack expansions.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
61c4d28e36cd3f1be392cb77f07436d1fa6b0f9f 05-Jan-2011 Douglas Gregor <dgregor@apple.com> Implement support for template template parameter packs, e.g.,

template<template<class> class ...Metafunctions>
struct apply_to_each;



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122874 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
b95cc97b2023d00cd3fbae8455bc9d728eab5e5d 04-Jan-2011 Douglas Gregor <dgregor@apple.com> When creating the injected-class-name for a class template involving a
non-type template parameter pack, make sure to create a pack expansion
for the corresponding template argument.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
69e5aed635946419d85a6be8639260e2eb476cb1 03-Jan-2011 Douglas Gregor <dgregor@apple.com> Add a test that is currently failing

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122780 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
dee196ef31073b40c48d60d9fa626ee1d8daaaee 03-Jan-2011 Douglas Gregor <dgregor@apple.com> Another variadic template metafunction test case: summing values.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
be230c36e32142cbdcdbe9c97511d097beeecbab 03-Jan-2011 Douglas Gregor <dgregor@apple.com> Implement support for pack expansions whose pattern is a non-type
template argument (described by an expression, of course). For
example:

template<int...> struct int_tuple { };

template<int ...Values>
struct square {
typedef int_tuple<(Values*Values)...> type;
};

It also lays the foundation for pack expansions in an initializer-list.




git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122751 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
81063a237722ae010bca325021b92436f8c56e05 03-Jan-2011 Douglas Gregor <dgregor@apple.com> Consolidate template metafunction tests for variadic templates into a single file

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/CXX/temp/temp.decls/temp.variadic/metafunctions.cpp