Skip to content

Commit b561e61

Browse files
Dawn Perchikzygoloid
authored andcommitted
LWG3313 join_view::iterator::operator-- is incorrectly constrained
Also fixes NB US 294 (C++20 CD).
1 parent 31e9bb0 commit b561e61

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

source/ranges.tex

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4790,11 +4790,13 @@
47904790

47914791
constexpr @\exposid{iterator}@& operator--()
47924792
requires @\exposid{ref-is-glvalue}@ && bidirectional_range<@\exposid{Base}@> &&
4793-
bidirectional_range<range_reference_t<@\exposid{Base}@>>;
4793+
bidirectional_range<range_reference_t<@\exposid{Base}@>> &&
4794+
common_range<range_reference_t<@\exposid{Base}@>>;
47944795

47954796
constexpr @\exposid{iterator}@ operator--(int)
47964797
requires @\exposid{ref-is-glvalue}@ && bidirectional_range<@\exposid{Base}@> &&
4797-
bidirectional_range<range_reference_t<@\exposid{Base}@>>;
4798+
bidirectional_range<range_reference_t<@\exposid{Base}@>> &&
4799+
common_range<range_reference_t<@\exposid{Base}@>>;
47984800

47994801
friend constexpr bool operator==(const @\exposid{iterator}@& x, const @\exposid{iterator}@& y)
48004802
requires @\exposid{ref-is-glvalue}@ && equality_comparable<iterator_t<@\exposid{Base}@>> &&
@@ -4985,7 +4987,8 @@
49854987
\begin{itemdecl}
49864988
constexpr @\exposid{iterator}@& operator--()
49874989
requires @\exposid{ref-is-glvalue}@ && bidirectional_range<@\exposid{Base}@> &&
4988-
bidirectional_range<range_reference_t<@\exposid{Base}@>>;
4990+
bidirectional_range<range_reference_t<@\exposid{Base}@>> &&
4991+
common_range<range_reference_t<@\exposid{Base}@>>;
49894992
\end{itemdecl}
49904993

49914994
\begin{itemdescr}
@@ -5006,7 +5009,8 @@
50065009
\begin{itemdecl}
50075010
constexpr @\exposid{iterator}@ operator--(int)
50085011
requires @\exposid{ref-is-glvalue}@ && bidirectional_range<@\exposid{Base}@> &&
5009-
bidirectional_range<range_reference_t<@\exposid{Base}@>>;
5012+
bidirectional_range<range_reference_t<@\exposid{Base}@>> &&
5013+
common_range<range_reference_t<@\exposid{Base}@>>;
50105014
\end{itemdecl}
50115015

50125016
\begin{itemdescr}

0 commit comments

Comments
 (0)