Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[iterator.concept.readable]/2 parenthesized clarification seems like a note #2567

Closed
JohelEGP opened this issue Dec 7, 2018 · 2 comments
Closed
Assignees

Comments

@JohelEGP
Copy link
Contributor

JohelEGP commented Dec 7, 2018

draft/source/iterators.tex

Lines 1201 to 1204 in 38eb5e5

Given a value \tcode{i} of type \tcode{I}, \tcode{I} models \libconcept{Readable}
only if the expression \tcode{*i} (which is indirectly required to be valid via the
exposition-only \placeholder{dereferenceable} concept\iref{iterator.synopsis}) is
equality-preserving.

@jensmaurer jensmaurer self-assigned this Dec 7, 2018
@jensmaurer
Copy link
Member

Where is the normative statement that leads to the "indirectly required to be valid" conclusion?

@JohelEGP
Copy link
Contributor Author

JohelEGP commented Dec 7, 2018

template<@\placeholder{dereferenceable}@ T>
using iter_reference_t = decltype(*declval<T&>());

There, which is required to be valid in in its definition:

typename iter_reference_t<In>;

But, didn't using concepts in alias templates actually not constrain the template arguments?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants