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

Consistent cv-qualification notation #3660

Merged
merged 6 commits into from Mar 4, 2020
Merged

Conversation

sdkrystian
Copy link
Contributor

There are a lot of inconsistencies in how we specify cv-qualifiers in the text, so I went through and fixed most of the more offending examples. Most of the changes involved replacing "possibly cv-qualified" where cv could be used, however there were a few other things I went ahead and fixed:

  • The "house style" is to say "possibly cv-qualified", but there are two occurrences of "optionally cv-qualified". One was changed to use cv, the other was changed to the correct phrasing.

  • [dcl.init] p 17 sub 6.2.2 Introduces the named type A, but doesn't reference it again.

  • [over.match.copy] had a type with described as "reference to possibly cv-qualified T". Quite obvious what's wrong there.

A couple other more unrelated things I noticed going through:

[basic.type.qualifier] p2 is made redundant by [basic.type.qualifier] p6, and [basic.type.qualifier] p3 can probably be turned into a note.

In [dcl.init.list] p2 we say that constructors take std::initializer_list<E> and references to possibly cv-qualified std::initializer_list<E> are initializer list constructors. I think cv is missing from the first one, but that is definitely not editorial.

In [conv.ptr] p3 we say "The null pointer value is converted to the null pointer value of the destination type.". The definite article does not seem to fit there, as a specific null pointer value was not established (presumably its referring to a derived to base pointer conversion where the value of the derived pointer is a null pointer value)

[temp.deduct.partial] p5 and [temp.deduct.partial] p7 are a little excessive for what they do. All other instances of this is done in a much less verbose fashion e.x. [temp.deduct.call]

In [over.built], every occurance of "every cv-qualified or cv-unqualified [...] T" can simply be replaced with "every [...] cv T".

This is a little outside the scope of what I was looking for here, but the 3 paragraphs in [class.init] are just watered down versions of the wording they link to. These paragraphs could just be removed, or turned into notes, as they don't serve any normative purpose.

Copy link
Member

@jensmaurer jensmaurer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good.

@jensmaurer
Copy link
Member

Please create separate github issues for the other concerns.

@sdkrystian
Copy link
Contributor Author

@jensmaurer I committed one of the commits to the wrong branch; should be fixed now.

@zygoloid zygoloid merged commit f611368 into cplusplus:master Mar 4, 2020
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

Successfully merging this pull request may close these issues.

None yet

3 participants