You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As specified in #318. The "proxy case" constructs an object of type value_type_t<I> from reference_t<I> but does not require Constructible<value_type_t<I>, reference_t<I>>().
Proposed Resolution
Change the class synopsis of common_iterator ([common.iterator]) as follows (includes part of the resolution of #368):
see below operator*();
see below operator*() const requires dereferenceable<I const>;
-see below operator->() const requires Readable<I const>();+see below operator->() const requires see below;
To [common.iter.op.ref], add a p3 that reads:
The expression in the requires clause is equivalent to:
366: common_iterator::operator-> is underconstrained
368: common_iterator’s and counted_iterator’s const operator* need to be constrained
Fixes#366 and #368.
366: common_iterator::operator-> is underconstrained
368: common_iterator’s and counted_iterator’s const operator* need to be constrained
Fixes#366 and #368.
* Apply P0740R0 PRs for:
366: common_iterator::operator-> is underconstrained
368: common_iterator’s and counted_iterator’s const operator* need to be constrained
Fixes#366 and #368.
* Replace "see below" with "delctype(auto)" and "constexpr" where appropriate.
As specified in #318. The "proxy case" constructs an object of type
value_type_t<I>
fromreference_t<I>
but does not requireConstructible<value_type_t<I>, reference_t<I>>()
.Proposed Resolution
Change the class synopsis of
common_iterator
([common.iterator]) as follows (includes part of the resolution of #368):To [common.iter.op.ref], add a p3 that reads:
The text was updated successfully, but these errors were encountered: