diff options
author | Marshall Clow <mclow.lists@gmail.com> | 2015-11-30 05:20:00 +0000 |
---|---|---|
committer | Marshall Clow <mclow.lists@gmail.com> | 2015-11-30 05:20:00 +0000 |
commit | 12dff9e66aa0886a02eb511c0ee35332e15428ac (patch) | |
tree | 7618ea5c091b8595b1b723fa0093924f67c6d27a | |
parent | 00b6b01592cb5432cc3824ae1d1a9307f4400320 (diff) | |
download | bcm5719-llvm-12dff9e66aa0886a02eb511c0ee35332e15428ac.tar.gz bcm5719-llvm-12dff9e66aa0886a02eb511c0ee35332e15428ac.zip |
Fix bugs in alignment_of_v, etc. Re-enable the newly added tests
llvm-svn: 254289
4 files changed, 19 insertions, 19 deletions
diff --git a/libcxx/include/type_traits b/libcxx/include/type_traits index 5b74418665c..0bd4fd3a96e 100644 --- a/libcxx/include/type_traits +++ b/libcxx/include/type_traits @@ -1080,7 +1080,7 @@ template <class _Tp, size_t _Np> struct _LIBCPP_TYPE_VIS_ONLY rank<_Tp[_Np]> : public integral_constant<size_t, rank<_Tp>::value + 1> {}; #if _LIBCPP_STD_VER > 14 && !defined(_LIBCPP_HAS_NO_VARIABLE_TEMPLATES) -template <class _Tp> _LIBCPP_CONSTEXPR bool rank_v +template <class _Tp> _LIBCPP_CONSTEXPR size_t rank_v = rank<_Tp>::value; #endif @@ -1098,7 +1098,7 @@ template <class _Tp, size_t _Np, unsigned _Ip> struct _LIBCPP_TYPE_VIS_ONLY exte : public integral_constant<size_t, extent<_Tp, _Ip-1>::value> {}; #if _LIBCPP_STD_VER > 14 && !defined(_LIBCPP_HAS_NO_VARIABLE_TEMPLATES) -template <class _Tp, unsigned _Ip = 0> _LIBCPP_CONSTEXPR bool extent_v +template <class _Tp, unsigned _Ip = 0> _LIBCPP_CONSTEXPR size_t extent_v = extent<_Tp, _Ip>::value; #endif @@ -1451,7 +1451,7 @@ template <class _Tp> struct _LIBCPP_TYPE_VIS_ONLY alignment_of : public integral_constant<size_t, __alignof__(_Tp)> {}; #if _LIBCPP_STD_VER > 14 && !defined(_LIBCPP_HAS_NO_VARIABLE_TEMPLATES) -template <class _Tp> _LIBCPP_CONSTEXPR bool alignment_of_v +template <class _Tp> _LIBCPP_CONSTEXPR size_t alignment_of_v = alignment_of<_Tp>::value; #endif diff --git a/libcxx/test/std/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp index 4929a2d3eb3..0f55db64719 100644 --- a/libcxx/test/std/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp +++ b/libcxx/test/std/utilities/meta/meta.unary.prop.query/alignment_of.pass.cpp @@ -24,10 +24,10 @@ void test_alignment_of() static_assert( std::alignment_of<volatile T>::value == A, ""); static_assert( std::alignment_of<const volatile T>::value == A, ""); #if TEST_STD_VER > 14 -// static_assert( std::alignment_of_v<T> == A, ""); -// static_assert( std::alignment_of_v<const T> == A, ""); -// static_assert( std::alignment_of_v<volatile T> == A, ""); -// static_assert( std::alignment_of_v<const volatile T> == A, ""); + static_assert( std::alignment_of_v<T> == A, ""); + static_assert( std::alignment_of_v<const T> == A, ""); + static_assert( std::alignment_of_v<volatile T> == A, ""); + static_assert( std::alignment_of_v<const volatile T> == A, ""); #endif } diff --git a/libcxx/test/std/utilities/meta/meta.unary.prop.query/extent.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary.prop.query/extent.pass.cpp index 60bf5aee196..39a7c2b593b 100644 --- a/libcxx/test/std/utilities/meta/meta.unary.prop.query/extent.pass.cpp +++ b/libcxx/test/std/utilities/meta/meta.unary.prop.query/extent.pass.cpp @@ -23,10 +23,10 @@ void test_extent() static_assert((std::extent<volatile T>::value == A), ""); static_assert((std::extent<const volatile T>::value == A), ""); #if TEST_STD_VER > 14 -// static_assert((std::extent_v<T> == A), ""); -// static_assert((std::extent_v<const T> == A), ""); -// static_assert((std::extent_v<volatile T> == A), ""); -// static_assert((std::extent_v<const volatile T> == A), ""); + static_assert((std::extent_v<T> == A), ""); + static_assert((std::extent_v<const T> == A), ""); + static_assert((std::extent_v<volatile T> == A), ""); + static_assert((std::extent_v<const volatile T> == A), ""); #endif } @@ -38,10 +38,10 @@ void test_extent1() static_assert((std::extent<volatile T, 1>::value == A), ""); static_assert((std::extent<const volatile T, 1>::value == A), ""); #if TEST_STD_VER > 14 -// static_assert((std::extent_v<T, 1> == A), ""); -// static_assert((std::extent_v<const T, 1> == A), ""); -// static_assert((std::extent_v<volatile T, 1> == A), ""); -// static_assert((std::extent_v<const volatile T, 1> == A), ""); + static_assert((std::extent_v<T, 1> == A), ""); + static_assert((std::extent_v<const T, 1> == A), ""); + static_assert((std::extent_v<volatile T, 1> == A), ""); + static_assert((std::extent_v<const volatile T, 1> == A), ""); #endif } diff --git a/libcxx/test/std/utilities/meta/meta.unary.prop.query/rank.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary.prop.query/rank.pass.cpp index 5d062eedfe3..755269d1d40 100644 --- a/libcxx/test/std/utilities/meta/meta.unary.prop.query/rank.pass.cpp +++ b/libcxx/test/std/utilities/meta/meta.unary.prop.query/rank.pass.cpp @@ -23,10 +23,10 @@ void test_rank() static_assert( std::rank<volatile T>::value == A, ""); static_assert( std::rank<const volatile T>::value == A, ""); #if TEST_STD_VER > 14 -// static_assert( std::rank_v<T> == A, ""); -// static_assert( std::rank_v<const T> == A, ""); -// static_assert( std::rank_v<volatile T> == A, ""); -// static_assert( std::rank_v<const volatile T> == A, ""); + static_assert( std::rank_v<T> == A, ""); + static_assert( std::rank_v<const T> == A, ""); + static_assert( std::rank_v<volatile T> == A, ""); + static_assert( std::rank_v<const volatile T> == A, ""); #endif } |