libstdc++: Implement LWG 3580 change to ranges::iota_view

libstdc++-v3/ChangeLog:

	* include/std/ranges (iota_view::_Iterator::operator+): Adjust
	definition as per LWG 3580.
	(iota_view::_Iterator::operator-): Likewise.
This commit is contained in:
Patrick Palka 2021-10-19 18:07:19 -04:00
parent bed1892f5b
commit 5566f3c6b4

View file

@ -497,7 +497,10 @@ namespace ranges
friend constexpr _Iterator
operator+(_Iterator __i, difference_type __n)
requires __detail::__advanceable<_Winc>
{ return __i += __n; }
{
__i += __n;
return __i;
}
friend constexpr _Iterator
operator+(difference_type __n, _Iterator __i)
@ -507,7 +510,10 @@ namespace ranges
friend constexpr _Iterator
operator-(_Iterator __i, difference_type __n)
requires __detail::__advanceable<_Winc>
{ return __i -= __n; }
{
__i -= __n;
return __i;
}
friend constexpr difference_type
operator-(const _Iterator& __x, const _Iterator& __y)