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
[range.range] Requirement marked wrongly #2589
Comments
The marking seems correct. p3.3 in the text that follows requires "equality-preserving" when the end result is a forward iterator. |
Yeah, I'm aware. I'm just being pedantic because what I believe to be normative text requires marking Line 691 in 0155d20
with // not required to be equality-preserving . p3.3 would then be an additional requirement for when it is required to be equality-preserving, which is the default.
|
p3.3 indeed adds the additional requirement, but http://eel.is/c++draft/concepts.equality#4 says that all are equality-preserving unless it uses this comment, and doesn't give leeway to waive the requirement some other way as usually done with the phrase "unless stated otherwise". |
"sometimes equality-preserving" is true for all expressions "not required to be equality-preserving". Perhaps "conditionally required to be equality-preserving" is a better fit. This seems like LWG material. Should I open an issue? |
draft/source/ranges.tex
Line 691 in 0155d20
should be marked with
draft/source/concepts.tex
Line 58 in 0155d20
The text was updated successfully, but these errors were encountered: