The next version of the general-purpose programming language C++ is underway. The International Organization for Standardization (ISO) C++ committee has announced the C++17 standard is complete, and there should not be any more major changes before the final specification is published.

“C++17 is now technically finished and being sent out for its final ISO balloting. All that remains for C++17 now is some ISO red tape and minor touch-up to get it officially published, which is expected to be just mechanical,” Herb Sutter, chair of the ISO C++ standards committee, wrote in a post.

The Standard C++ Foundation has released a document to explain all the major changes applied to C++ since C++14, and up to the C++17 Draft International Standard (DIS). The document includes removed or deprecated features, new core language features, new library features, and modifications to existing features. Some new features include: structured bindings, a new set of standardized attributes, a new language support tool, a new byte type, dynamic allocation support for over-aligned types, and guaranteed copy elision.

According to Sutter, at the ISO C++ committee’s last meeting, the committee decided to add the std::byte type as well as address a number of bug fixes. In addition, the committee approved the shipping of Coroutines TS and Module TS, worked on Parallelism 2 TS, and looked at feedback on the Concepts TS.