Skip to content

Commit b055d05

Browse files
committed
LWG3483 transform_view::iterator's difference is overconstrained
1 parent c4a604f commit b055d05

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

source/ranges.tex

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3814,7 +3814,7 @@
38143814
friend constexpr @\exposid{iterator}@ operator-(@\exposid{iterator}@ i, difference_type n)
38153815
requires @\libconcept{random_access_range}@<@\exposid{Base}@>;
38163816
friend constexpr difference_type operator-(const @\exposid{iterator}@& x, const @\exposid{iterator}@& y)
3817-
requires @\libconcept{random_access_range}@<@\exposid{Base}@>;
3817+
requires @\libconcept{sized_sentinel_for}@<iterator_t<@\exposid{Base}@>, iterator_t<@\exposid{Base}@>>;
38183818

38193819
friend constexpr decltype(auto) iter_move(const @\exposid{iterator}@& i)
38203820
noexcept(noexcept(invoke(*i.@\exposid{parent_}@->@\exposid{fun_}@, *i.@\exposid{current_}@)))
@@ -4123,7 +4123,7 @@
41234123
\indexlibrarymember{operator-}{transform_view::iterator}%
41244124
\begin{itemdecl}
41254125
friend constexpr difference_type operator-(const @\exposid{iterator}@& x, const @\exposid{iterator}@& y)
4126-
requires @\libconcept{random_access_range}@<@\exposid{Base}@>;
4126+
requires @\libconcept{sized_sentinel_for}@<iterator_t<@\exposid{Base}@>, iterator_t<@\exposid{Base}@>>;
41274127
\end{itemdecl}
41284128

41294129
\begin{itemdescr}
@@ -6441,7 +6441,7 @@
64416441
friend constexpr @\exposid{iterator}@ operator-(const @\exposid{iterator}@& x, difference_type y)
64426442
requires @\libconcept{random_access_range}@<@\exposid{Base}@>;
64436443
friend constexpr difference_type operator-(const @\exposid{iterator}@& x, const @\exposid{iterator}@& y)
6444-
requires @\libconcept{random_access_range}@<@\exposid{Base}@>;
6444+
requires @\libconcept{sized_sentinel_for}@<iterator_t<@\exposid{Base}@>, iterator_t<@\exposid{Base}@>>;
64456445
};
64466446
}
64476447
\end{codeblock}
@@ -6708,7 +6708,7 @@
67086708
\indexlibrarymember{operator-}{elements_view::iterator}%
67096709
\begin{itemdecl}
67106710
friend constexpr difference_type operator-(const @\exposid{iterator}@& x, const @\exposid{iterator}@& y)
6711-
requires @\libconcept{random_access_range}@<@\exposid{Base}@>;
6711+
requires @\libconcept{sized_sentinel_for}@<iterator_t<@\exposid{Base}@>, iterator_t<@\exposid{Base}@>>;
67126712
\end{itemdecl}
67136713

67146714
\begin{itemdescr}

0 commit comments

Comments
 (0)