From: François Dumont Date: Tue, 26 Nov 2019 06:12:34 +0000 (+0000) Subject: libstdc++: Add C++20 P1032 constexpr to _GLIBCXX_DEBUG array X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=59d37e97093b1b9f9498e61ee648557479e79cd4;p=gcc.git libstdc++: Add C++20 P1032 constexpr to _GLIBCXX_DEBUG array * include/debug/array (array<>::fill): Add C++20 constexpr. (array<>::swap): Likewise. From-SVN: r278718 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 986ac2a00c6..8e384c76506 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,8 @@ 2019-11-26 François Dumont + * include/debug/array (array<>::fill): Add C++20 constexpr. + (array<>::swap): Likewise. + * include/debug/safe_iterator.h [__cpp_lib_concepts](_Safe_iterator<>::iterator_concept): Define for C++20. diff --git a/libstdc++-v3/include/debug/array b/libstdc++-v3/include/debug/array index 5566a087f9a..4e0fac8daac 100644 --- a/libstdc++-v3/include/debug/array +++ b/libstdc++-v3/include/debug/array @@ -80,11 +80,11 @@ namespace __debug // No explicit construct/copy/destroy for aggregate type. // DR 776. - void + _GLIBCXX20_CONSTEXPR void fill(const value_type& __u) { std::fill_n(begin(), size(), __u); } - void + _GLIBCXX20_CONSTEXPR void swap(array& __other) noexcept(_AT_Type::_Is_nothrow_swappable::value) { std::swap_ranges(begin(), end(), __other.begin()); } @@ -282,6 +282,7 @@ namespace __debug #endif template + _GLIBCXX20_CONSTEXPR inline void swap(array<_Tp, _Nm>& __one, array<_Tp, _Nm>& __two) noexcept(noexcept(__one.swap(__two)))