US 98, US 99

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111542 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant
2010-08-19 18:59:38 +00:00
parent e92c3d74ce
commit 3c1ffbabc1
3 changed files with 81 additions and 21 deletions

View File

@@ -72,6 +72,7 @@ public:
const unspecified ignore;
template <class... T> tuple<V...> make_tuple(T&&...);
template <class... T> tuple<ATypes...> forward_as_tuple(T&&...);
template <class... T> tuple<T&...> tie(T&...);
template <class... T, class... U> tuple<T..., U...> tuple_cat(const tuple<T...>&, const tuple<U...>&);
template <class... T, class... U> tuple<T..., U...> tuple_cat(tuple<T...>&&, const tuple<U...>&);
@@ -621,6 +622,14 @@ make_tuple(_Tp&&... __t)
return tuple<typename __make_tuple_return<_Tp>::type...>(_STD::forward<_Tp>(__t)...);
}
template <class... _Tp>
inline
tuple<_Tp&&...>
forward_as_tuple(_Tp&&... __t)
{
return tuple<_Tp&&...>(_STD::forward<_Tp>(__t)...);
}
template <size_t _I>
struct __tuple_equal
{