diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2019-10-29 20:17:02 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2019-10-29 20:17:02 +0000 |
commit | 6cd96bad607c5d6a2302e97ab6f749edb85b82ed (patch) | |
tree | dfb215775ffe9bf0db722b63ec9e467cb14ebdfd | |
parent | 540218dd246231a52e377d42e81f467bd7d73b46 (diff) | |
download | gcc-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/ChangeLog | 8 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/range_access.h | 2 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/stl_iterator.h | 2 |
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>, |