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

[concept.common] LWG 3154: Confusing wording #2247

Closed
cpplearner opened this issue Jul 5, 2018 · 5 comments
Closed

[concept.common] LWG 3154: Confusing wording #2247

cpplearner opened this issue Jul 5, 2018 · 5 comments
Labels
lwg Issue must be reviewed by LWG. not-editorial Issue is not deemed editorial; the editorial issue is kept open for tracking.

Comments

@cpplearner
Copy link
Contributor

[concept.common]/(2.1):

C(t()) equals C(t()) if and only if t() is an equality-preserving expression

What does "C(t()) equals C(t())" mean? In particular, does it mean “the first two evaluations of C(t()) yield equal result" or "all evaluations of C(t()) always yield equal result"? If the latter, why doesn't the sentence read "C(t()) is an equality-preserving expression if and only if t() is an equality-preserving expression"?

cc @CaseyCarter

@jensmaurer
Copy link
Member

This phrasing has another issue, too: It says "if and only if", so if t() is not an equality-preserving expression, C(t()) must be different from C(t()). That seems impossibly to guarantee.
@CaseyCarter, you wanted to open LWG issues for the remaining open concepts items. Do you have one for this already?

@CaseyCarter
Copy link
Contributor

CaseyCarter commented Jul 6, 2018

This wording specifically (and the similar wording in [concept.commonreference]) came up during the final editorial review, and I'll be filing an LWG issue for it. I've been waiting for the updated WD to file my list of issues, since I suspect the LWG issue management utilities will fail horribly with issues that refer to stable names that don't exist in the working draft.

EDIT: I suppose we should leave this issue open for now - to be sure it isn't dropped on the floor - and I'll come back after the corresponding LWG issue has been filed and post a reference thereto?

@timsong-cpp
Copy link
Contributor

@CaseyCarter

since I suspect the LWG issue management utilities will fail horribly with issues that refer to stable names that don't exist in the working draft.

They'll be fine (it will just be "Section 99"). We have plenty of issues targeting stable names that no longer exist.

@jensmaurer jensmaurer added the lwg Issue must be reviewed by LWG. label Jul 17, 2018
@CaseyCarter
Copy link
Contributor

This is now LWG3154 "Common and CommonReference have a common defect" which LWG tentatively approved in Batavia. I believe the P/R is worded in a less confusingful manner.

@jensmaurer jensmaurer added the not-editorial Issue is not deemed editorial; the editorial issue is kept open for tracking. label Sep 5, 2018
@jensmaurer jensmaurer changed the title [concept.common] Confusing wording [concept.common] LWG 3154: Confusing wording Sep 5, 2018
@jensmaurer
Copy link
Member

LWG 3154 was adopted in San Diego.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lwg Issue must be reviewed by LWG. not-editorial Issue is not deemed editorial; the editorial issue is kept open for tracking.
Projects
None yet
Development

No branches or pull requests

4 participants