Programming Topics + CVu Journal Vol 28, #4 - September 2016
Browse in : All > Topics > Programming
All > Journals > CVu > 284
Any of these categories - All of these categories

Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.

Title: Standards Report

Author: Martin Moene

Date: 02 September 2016 16:38:11 +01:00 or Fri, 02 September 2016 16:38:11 +01:00

Summary: Jonathan Wakely brings the latest news.

Body: 

In June the C++ committee met in Oulu, Finland, and voted out the C++17 Committee Draft (CD). The CD represents what the committee think C++17 should be and is sent out to the ISO National Bodies for review and balloting. The National Bodies will respond with a Yes or No vote (with comments saying what they think should be changed) and the committee will spend the next couple of meetings addressing those comments, before sending the final document to Geneva for standardisation.

At the Oulu meeting a number of new features were approved, as well as a huge number of defect reports resolved. Some of the highlights include constexpr if; inline variables; allocation of over-aligned data; guaranteeing expression evaluation order (but not function argument evaluation order); template argument deduction for class templates; guaranteed copy elision; and std::variant. A last minute surprise that wasn’t expected to make it into C++17 was the ‘structured bindings’ proposal, which allows variables to be declared and initialized from tuple-like types, for example:

  auto [position, inserted] = set.insert(val);

will declare the variables position and inserted and initialize them to the ‘first’ and ‘second’ members of the pair returned by the insert function.

If you would like to help review the CD you can download N4604 [1] and send comments via your National Body (or contact someone on a National Body and persuade them to do so for you). The ballot for the CD ends in October, and the next C++ committee meeting will be in Issaquah, WA, in November. At that meeting we’ll be starting to respond to NB ballot comments, and (I hope) voting out a Draft Technical Specification (DTS) of the Networking library extensions.

Reference

[1] N4606 is available from http://open-std.org/JTC1/SC22/WG21/docs/papers/2016/n4604.pdf

Notes: 

More fields may be available via dynamicdata ..