Skip to content

Conversation

burblebee
Copy link
Contributor

@burblebee burblebee commented Nov 18, 2019

Fixes #3418.

Issues with paper:

  • [range.access.begin]/p1 adds "Given a subexpression E and an lvalue t that denotes the same object as E", but E is a subexpression, not an object.
    Same for [range.access.end]/p1, [range.access.rbegin]/p1, and [range.access.rend]/p1.
  • [range.range] range-impl is removed but is still referenced in p2 and p3.

Other editorial issues:

  • cv-unqualified or \cv-unqualified?
    The spec is inconsistent in its representation of cv-unqualified v. /cv/-unqualified.
  • When to use \deflibconcept?
    Some concept definitions in the library use \deflibconcept, others don't.
    Also fix inconsistencies in the of \defexposconcept for \expos concepts.
  • The library is inconsistent in its use of \exposconcept v. \tcode{\placeholder

Fixes cplusplus/papers#620
Fixes cplusplus/nbballot#275
Fixes cplusplus/nbballot#276
Fixes cplusplus/nbballot#272

@CaseyCarter
Copy link
Contributor

E is a subexpression, not an object

I think we mean to say that t is an lvalue that denotes the result of E; my core-speak is failing me here.

[range.range] range-impl is removed but is still referenced in p2 and p3.

The intent is that these references to range-impl be replaced by references to range. P2 is still a mess, however, since it refers to "The required expressions ranges::begin(std::forward<T>(t)) and ranges::end(std::forward<T>(t)) ..." which need to be changed to "The required expressions ranges::begin(t) and ranges::end(t) ...".

I won't even try to rationalize this rewording as "Editorial".

@jensmaurer jensmaurer added this to the post-2019-11 milestone Nov 19, 2019
@jensmaurer
Copy link
Member

jensmaurer commented Nov 19, 2019

cv-unqualified or \cv-unqualified?

I think we want "cv-qualified" and "cv-unqualified". We only use \cv{} if it is a placeholder for a (specific) set of cv-qualifiers.

When to use \deflibconcept?

The intent is to use \deflibconcept where we actually show the definition of a library concept (i.e. not in the header synopsis if we have an itemdecl).

The library is inconsistent in its use of \exposconcept v. \tcode{\placeholder

Yes, there are probably still a few issues like this left over. [Update: see #3494]

@burblebee
Copy link
Contributor Author

@CaseyCarter

I think we mean ...
...
I won't even try to rationalize this rewording as "Editorial".

I've emailed @brevzin and lwgchair for direction on what to do... Would have cc'ed you but don't have your email address :)

@burblebee burblebee added the changes requested Changes to the wording or approach have been requested and not yet applied. label Nov 19, 2019
@zygoloid zygoloid force-pushed the motions-2019-11-lwg-16 branch 3 times, most recently from 7e5fa21 to 9542e55 Compare November 24, 2019 02:14
Dawn Perchik and others added 3 commits November 23, 2019 18:18
Also fixes NB US 279, US 279, and GB 280 (C++20 CD).
exposition-only concepts range-impl and forwarding-range with range and
safe_range as appropriate.
@zygoloid zygoloid force-pushed the motions-2019-11-lwg-16 branch from 9542e55 to bceff41 Compare November 24, 2019 02:18
@zygoloid zygoloid removed the changes requested Changes to the wording or approach have been requested and not yet applied. label Nov 24, 2019
@zygoloid zygoloid merged commit 5149fdf into master Nov 24, 2019
@jensmaurer jensmaurer deleted the motions-2019-11-lwg-16 branch February 18, 2020 20:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment