Skip to content

US313 25.02 [algorithms.requirements] Properly define scope of subclause to cover [specialized.algorithms] #309

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

Closed
wg21bot opened this issue Oct 25, 2019 · 5 comments · Fixed by cplusplus/draft#3763
Assignees
Labels
Milestone

Comments

@wg21bot
Copy link
Collaborator

wg21bot commented Oct 25, 2019

This subclause describes general purpose wording that applies to all algorithms in the standard, without defining algorithm. It generally applies such definitions to algorithms "in this clause", but the wording for specialized algorithms in 20.10.11 [specialized.algorithms] relies on this wording too, especially to provide definitions for its ranges overloads.

Proposed change:
Revise this subclause to include a definition of algorithm, so that all the wording that applies to this subclause instead applies to all algorithms. Reasonable definitions of algorithm (for the purposes of the standard library) might be all function templates in clause 25, and clause 20.10.11, or some definition constructed around function templates having arguments of iterator or range type. The former is likely a simpler fix for C++20, the latter would avoid having to update the list of locations for algorithms in the future,

@wg21bot wg21bot added the LWG Library label Oct 25, 2019
@jwakely
Copy link
Member

jwakely commented Nov 4, 2019

Reviewed by LWG small group on Monday morning.

@BillyONeal
Copy link

Reviewed in LWG this afternoon. @BillyONeal to write a paper which

  • moves the algorithms from [specialized.algorithms] to [algorithms], following the algorithms that were moved from numerics in this standardization cycle as a model
  • leaves addressof, construct_at, and destroy_at in their existing location; they aren't 'classical STL algorithms'
  • deletes duplicated front matter in [specialized.algorithms] covered by the existing [algorithms] front matter

@jensmaurer jensmaurer added the editorial editorial label Nov 7, 2019
@jensmaurer
Copy link
Member

jensmaurer commented Nov 7, 2019

@BillyONeal , the suggested changes appear to all be editorial. Please clarify with @mclow whether you want LWG review for the changes or whether the editors can just do it.

@BillyONeal
Copy link

I already wrote D1963R0.pdf and put it on the LWG wiki. It didn't end up being quite editorial.

@jensmaurer jensmaurer removed the editorial editorial label Nov 8, 2019
@mclow
Copy link

mclow commented Nov 9, 2019

LWG on Saturday in Belfast: Resolved by adoption of P1963 to be adopted in Prague.

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

Successfully merging a pull request may close this issue.

5 participants