aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2019-10-29 20:17:02 +0000
committerJonathan Wakely <redi@gcc.gnu.org>2019-10-29 20:17:02 +0000
commit6cd96bad607c5d6a2302e97ab6f749edb85b82ed (patch)
treedfb215775ffe9bf0db722b63ec9e467cb14ebdfd
parent540218dd246231a52e377d42e81f467bd7d73b46 (diff)
downloadgcc-6cd96bad607c5d6a2302e97ab6f749edb85b82ed.zip
gcc-6cd96bad607c5d6a2302e97ab6f749edb85b82ed.tar.gz
gcc-6cd96bad607c5d6a2302e97ab6f749edb85b82ed.tar.bz2
Fix compilation errors with Clang
* include/bits/range_access.h (ranges::disable_sized_range) (ranges::begin, ranges::end, ranges::cbegin, ranges::cend) (ranges::rbegin, ranges::rend, ranges::crbegin, ranges::crend) (ranges::size, ranges::empty, ranges::data, ranges::cdata) (ranges::range, ranges::sized_range, ranges::advance, ranges::distance) (ranges::next, ranges::prev): Guard with __cpp_lib_concepts. * include/bits/stl_iterator.h (disable_sized_sentinel): Likewise. From-SVN: r277589
-rw-r--r--libstdc++-v3/ChangeLog8
-rw-r--r--libstdc++-v3/include/bits/range_access.h2
-rw-r--r--libstdc++-v3/include/bits/stl_iterator.h2
3 files changed, 11 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index e990884..11cce35 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,13 @@
2019-10-29 Jonathan Wakely <jwakely@redhat.com>
+ * include/bits/range_access.h (ranges::disable_sized_range)
+ (ranges::begin, ranges::end, ranges::cbegin, ranges::cend)
+ (ranges::rbegin, ranges::rend, ranges::crbegin, ranges::crend)
+ (ranges::size, ranges::empty, ranges::data, ranges::cdata)
+ (ranges::range, ranges::sized_range, ranges::advance, ranges::distance)
+ (ranges::next, ranges::prev): Guard with __cpp_lib_concepts.
+ * include/bits/stl_iterator.h (disable_sized_sentinel): Likewise.
+
* include/bits/alloc_traits.h (__cpp_lib_constexpr_dynamic_alloc):
Define.
(allocator_traits::_S_construct, allocator_traits::_S_destroy)
diff --git a/libstdc++-v3/include/bits/range_access.h b/libstdc++-v3/include/bits/range_access.h
index 3b6ed9a..9c8bef6 100644
--- a/libstdc++-v3/include/bits/range_access.h
+++ b/libstdc++-v3/include/bits/range_access.h
@@ -349,6 +349,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__adl_data(_Container& __cont) noexcept(noexcept(data(__cont)))
{ return data(__cont); }
+#ifdef __cpp_lib_concepts
namespace ranges
{
template<typename>
@@ -1061,6 +1062,7 @@ namespace ranges
}
} // namespace ranges
+#endif // library concepts
#endif // C++20
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h
index 9660875..c10117e 100644
--- a/libstdc++-v3/include/bits/stl_iterator.h
+++ b/libstdc++-v3/include/bits/stl_iterator.h
@@ -442,7 +442,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
make_reverse_iterator(_Iterator __i)
{ return reverse_iterator<_Iterator>(__i); }
-# if __cplusplus > 201703L
+# if __cplusplus > 201703L && defined __cpp_lib_concepts
template<typename _Iterator1, typename _Iterator2>
requires (!sized_sentinel_for<_Iterator1, _Iterator2>)
inline constexpr bool disable_sized_sentinel<reverse_iterator<_Iterator1>,