forked from OSchip/llvm-project
[libc++] Fix overly complicated test of std::span's extent
Thanks to Billy O'Neal for the patch. Differential Revision: https://reviews.llvm.org/D73138
This commit is contained in:
parent
1ae8d81147
commit
a7dcbe90cc
|
@ -37,13 +37,7 @@ constexpr bool testConstexprSpan(Span sp)
|
|||
using S2 = decltype(s2);
|
||||
ASSERT_SAME_TYPE(typename Span::value_type, typename S1::value_type);
|
||||
ASSERT_SAME_TYPE(typename Span::value_type, typename S2::value_type);
|
||||
if constexpr (Count != std::dynamic_extent) {
|
||||
static_assert(S1::extent == Count);
|
||||
} else if constexpr (Span::extent != std::dynamic_extent) {
|
||||
static_assert(S1::extent == Span::extent - Offset);
|
||||
} else {
|
||||
static_assert(S1::extent == std::dynamic_extent);
|
||||
}
|
||||
static_assert(S1::extent == Count);
|
||||
static_assert(S2::extent == std::dynamic_extent, "");
|
||||
return
|
||||
s1.data() == s2.data()
|
||||
|
@ -82,13 +76,7 @@ void testRuntimeSpan(Span sp)
|
|||
using S2 = decltype(s2);
|
||||
ASSERT_SAME_TYPE(typename Span::value_type, typename S1::value_type);
|
||||
ASSERT_SAME_TYPE(typename Span::value_type, typename S2::value_type);
|
||||
if constexpr (Count != std::dynamic_extent) {
|
||||
static_assert(S1::extent == Count);
|
||||
} else if constexpr (Span::extent != std::dynamic_extent) {
|
||||
static_assert(S1::extent == Span::extent - Offset);
|
||||
} else {
|
||||
static_assert(S1::extent == std::dynamic_extent);
|
||||
}
|
||||
static_assert(S1::extent == Count);
|
||||
static_assert(S2::extent == std::dynamic_extent, "");
|
||||
assert(s1.data() == s2.data());
|
||||
assert(s1.size() == s2.size());
|
||||
|
|
Loading…
Reference in New Issue