libstdc++: Use constexpr instead of _GLIBCXX20_CONSTEXPR in <vector>

For the operator<=> overload we can use the 'constexpr' keyword
directly, because we know the language dialect is at least C++20.

libstdc++-v3/ChangeLog:

	* include/bits/stl_vector.h (operator<=>): Use constexpr
	instead of _GLIBCXX20_CONSTEXPR macro.
This commit is contained in:
Jonathan Wakely 2024-09-18 16:17:28 +01:00 committed by Jonathan Wakely
parent 164c1b1f81
commit b6463161c3
No known key found for this signature in database

View file

@ -2078,7 +2078,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ return (__x.size() == __y.size()
&& std::equal(__x.begin(), __x.end(), __y.begin())); }
#if __cpp_lib_three_way_comparison
#if __cpp_lib_three_way_comparison // >= C++20
/**
* @brief Vector ordering relation.
* @param __x A `vector`.
@ -2091,8 +2091,8 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* `<` and `>=` etc.
*/
template<typename _Tp, typename _Alloc>
[[nodiscard]] _GLIBCXX20_CONSTEXPR
inline __detail::__synth3way_t<_Tp>
[[nodiscard]]
constexpr __detail::__synth3way_t<_Tp>
operator<=>(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
{
return std::lexicographical_compare_three_way(__x.begin(), __x.end(),