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

[2018-06 LWG Motion 14] P0788R3 Standard library specification in a concepts and contracts world #2132

Closed
jensmaurer opened this issue Jun 9, 2018 · 14 comments
Assignees
Milestone

Comments

@jensmaurer
Copy link
Member

No description provided.

@jensmaurer jensmaurer added this to the post-2018-06 milestone Jun 9, 2018
@jensmaurer jensmaurer changed the title [2018-06 LWG Motion 14] P0788R3 Standard Library Specification in a Concepts and Contracts World [2018-06 LWG Motion 14] P0788R3 Standard library specification in a concepts and contracts world Jun 9, 2018
@W-E-Brown
Copy link
Contributor

W-E-Brown commented Jun 9, 2018 via email

@jensmaurer
Copy link
Member Author

@W-E-Brown, please attach the LaTeX source as a file to this issue. Thanks.

@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

Or email it to me and I'll assign myself to do the work.

@jwakely jwakely self-assigned this Jun 11, 2018
@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

Editorial issue noticed:

[res.on.required] p1 is altered to say "Requires: element" instead of "Requires: paragraph" but still says "Throws: paragraph".

@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

An added example in [structure.specification] says "an implementation-defined attribute such as [[expects]]"

Implementation-defined attributes should be scoped.

@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

The last sentence of [structure.specifications] p4 still refers to a Postconditions: element, which should be Ensures:.

@W-E-Brown
Copy link
Contributor

W-E-Brown commented Jun 11, 2018 via email

@W-E-Brown
Copy link
Contributor

W-E-Brown commented Jun 11, 2018 via email

@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

All the issues mentioned above have been fixed on the branch (as separate commits). Thanks for the quick responses, @W-E-Brown

@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

Oops, the branch I pushed is missing all the renaming of Postconditions: to Ensures:, I forgot to merge that in before pushing it.

@jwakely
Copy link
Member

jwakely commented Jun 11, 2018

Instead of changing every \postconditions to \ensures throughout the library clauses, the commit I've pushed to the branch simply redefines \postconditions:

\newcommand{\postconditions}{\ensures}

@timsong-cpp
Copy link
Contributor

So "equivalent to" doesn't propagate Requires: anymore? It seems like we should keep Requires: in [structure.specifications]/4 until we actually get rid of the element.

@jensmaurer
Copy link
Member Author

@jwakely: If we do get rid of an element, we should also do a global search/replace in the LaTeX, otherwise editoris will be confused for generations to come. We can do that after the mailing, though.

@jwakely
Copy link
Member

jwakely commented Jun 12, 2018

@timsong-cpp good point.

@jensmaurer yes, I think we should wait until all the motions are merged, then replace all \postconditions with \ensures (if we do it now we might get some creeping back in from merged motions).

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

4 participants