Implement LWG Paper n3887: Consistent Metafunction Aliases. This adds std::tuple_element_t<> as an alias for tuple_element<>::type. Clean up the synopsis for tuple_element in <utility> as well.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@202673 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -28,7 +28,14 @@ void test()
|
||||
static_assert((std::is_same<typename std::tuple_element<N, const T>::type, const U>::value), "");
|
||||
static_assert((std::is_same<typename std::tuple_element<N, volatile T>::type, volatile U>::value), "");
|
||||
static_assert((std::is_same<typename std::tuple_element<N, const volatile T>::type, const volatile U>::value), "");
|
||||
#if _LIBCPP_STD_VER > 11
|
||||
static_assert((std::is_same<typename std::tuple_element_t<N, T>, U>::value), "");
|
||||
static_assert((std::is_same<typename std::tuple_element_t<N, const T>, const U>::value), "");
|
||||
static_assert((std::is_same<typename std::tuple_element_t<N, volatile T>, volatile U>::value), "");
|
||||
static_assert((std::is_same<typename std::tuple_element_t<N, const volatile T>, const volatile U>::value), "");
|
||||
#endif
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test<std::tuple<int>, 0, int>();
|
||||
|
Reference in New Issue
Block a user