C++ Editor's Report, October 2013
N3797 is the latest C++ Working Draft. It contains the changes to the C++14 CD as directed by the committee at the Chicago 2013 meeting. Details of the changes are listed below.
Thank you to Mike Miller, Alisdair Meredith, and Hans Boehm for their review of the draft.
Thank you to Richard Smith and Jonathan Wakely for processing editorial fixes.
Thank you to everyone who has contributed editorial fixes and issues. How to submit an editorial issue.
In applying CWG1417, a word missing in the proposed wording was added: "if the function type cv-qualifiers ..." should have been "if the function type has cv-qualifiers ...".
In applying CWG1575, the word "stotate" was corrected to "storage".
Wording from the following CWG papers were applied, with editorial changes as noted:
- N3760, [[deprecated]] attribute
- N3781, Single-Quotation-Mark as a Digit Separator
- In [lex.fcon]/1 I moved the sentence explaining that digit separators are ignored to right before its corresponding example, so that the paragraph still starts with an explanation of what a floating literal consists of.
- In [diff.cpp11.lex] I reformatted the code example slightly.
- N3778, C++ Sized Deallocation
- In [expr.delete]/9 I included the (not highlighted as being added) wording starting with "Otherwise" as it seemed to be intended to be added to complete the paragraph.
- In [new.delete.array]/13 I changed the signatures to drop the nothrow_t parameter in this paragraph as this section deals with throwing array deallocation functions, not non-throwing ones.
- In [diff.cpp11.basic] I added a reference to [basic.stc.dynamic.deallocation] for the change description. I reworded the Effect paragraph to match other change descriptions. I fixed the reference to "new.expr" to instead refer to "expr.new".
In addition to the above issues, I applied the suggested resolutions from NB comments GB-7, ES-15, and GB-9.
I was directed to apply the resolution to LWG issue 2235, but it had already been applied in the post-Bristol working draft.
In applying LWG2298, the second change was in fact in [meta.rel] rather than [meta.unary.prop]
In applying LWG2018, I moved the note that the function protoype is exposition only to its declaration.
In applying LWG2141, I used the
decay_t<T> form of decay instead of
Wording from the following LWG papers were applied, with editorial changes as noted:
- N3779, User-defined Literals for std::complex
- The title for [complex.literals] was changed from "Suffix for..." to "Suffixes for...".
- The first paragraph's second sentence was reordered slightly to avoid an ambiguity.
- N3789, Constexpr Library Additions: functional.
As directed, I reverted the changes previously applied from the following papers:
- N3672, "A proposal to add a utility class to represent optional objects"
- N3639, "Runtime-sized arrays with automatic storage duration (revision 5)"
- N3662, "C++ Dynamic Arrays (dynarray)"
Wording from the following SG1 papers were applied:
I addressed the following NB comments marked as editorial:
- US-15: Use the
_tform of type traits.
- CH-7: [intseq.general] Clarify purpose of index_sequence.
- CH-6: [over.literal]: Mark reserved example as such.
- GB-11: [re.iter], [re.tokiter] Fix exposition-only member formatting.
Minor editorial changes
For a full list of editorial changes, please see the C++ draft repository on GitHub.