Experimental C++ Features

< cpp

The C++ standards committee publishes experimental C++ language and library extensions for future standardization.

Note: until 2012, these publications used the TR (technical report) format. Since 2012 ISO procedure changed to use the TS (technical specification) format.

ISO number Name Status links
ISO/IEC TR 18015:2006 Technical Report on C++ Performance Published 2006 (ISO store)

Draft: TR18015 (2006-02-15)

std::hardware
ISO/IEC TR 19768:2007 Technical Report on C++ Library Extensions Published 2007-11-15 (ISO store)

Draft: n1745 (2005-01-17)
ISO 29124 split off, the rest merged into C++11

ISO/IEC 29124:2010 Extensions to the C++ Library to support mathematical special functions Published 2010-09-03 (ISO Store)

Final draft: n3060 (2010-03-06).
Merged into C++17

special math
ISO/IEC TR 24733:2011 Extensions for the programming language C++ to support decimal floating-point arithmetic Published 2011-10-25 (ISO Store)

Draft: n2849 (2009-03-06)
May be superseded by a future TS or merged into a future revision of C++ (most recent merge proposal was n3871)

decimal32
decimal64
decimal128
ISO/IEC TS 18822:2015 C++ File System Technical Specification Published 2015-06-18. (ISO store). Final draft: n4100 (2014-07-04).

Merged into C++17.

filesystem
ISO/IEC TS 19570:2015 C++ Extensions for Parallelism Published 2015-06-24. (ISO Store). Final draft: n4507 (2015-05-05).

Merged into C++17.

parallelism
ISO/IEC TS 19841:2015 Transactional Memory TS Published 2015-09-16, (ISO Store). Final draft: n4514 (2015-05-08) transactional memory
ISO/IEC TS 19568:2015 C++ Extensions for Library Fundamentals Published 2015-09-30, (ISO Store). Final draft: n4480 (2015-04-07).

Merged into C++17 except for invocation traits

library extensions
ISO/IEC TS 19217:2015 C++ Extensions for Concepts Published 2015-11-13. (ISO Store). Final draft: n4553 (2015-10-02) Current draft: p0734r0 (2017-07-14)

Merged into C++20 (with modifications).

constraints and concepts
ISO/IEC TS 19571:2016 C++ Extensions for Concurrency Published 2016-01-19. (ISO Store) Final draft: p0159r0 (2015-10-22) concurrency
ISO/IEC TS 19568:2017 C++ Extensions for Library Fundamentals, Version 2 Published 2017-03-30. (ISO Store) Draft: n4617 (2016-11-28) library extensions 2
ISO/IEC TS 21425:2017 Ranges TS Published 2017-12-05. (ISO Store) Draft: n4685 (2017-07-31)

Merged into C++20.

ranges
ISO/IEC TS 22277:2017 Coroutines TS Published 2017-12-05. (ISO Store) Draft n4736 (2018-03-31) Latest draft: n4775 (2018-10-07)
ISO/IEC TS 19216:2018 Networking TS Published 2018-04-24. (ISO Store) Draft n4734 (2017-04-04). Latest draft: n4771 (2018-10-08)
ISO/IEC TS 21544:2018 Modules TS Published 2018-05-16. (ISO Store) Final Draft n4720 (2018-01-29)
ISO/IEC TS 19570:2018 Parallelism TS part 2 Published 2018-11-15. (ISO Store). Final draft: n4793 (2018-11-26)

Post-publication draft: n4808 (2019-03-11)

parallelism 2
ISO/IEC PDTS 23619:xxxx Reflection TS Development. Draft n4766 (2018-08-11)
Numerics TS Early development. Draft p0101 (2015-09-27)
ISO/IEC DTS 19571:xxxx Concurrency TS part 2 Early development
ISO/IEC DTS 19568:xxxx C++ Extensions for Library Fundamentals, Version 3 Early development: n4806 (2019-03-13)
ISO/IEC DTS 19841:xxxx Transactional Memory TS part 2 Early development
Graphics TS Early development. Draft p0267r8 (2018-06-26)
ISO/IEC DTS 19569:xxxx Array Extensions TS Withdrawn. Abandoned draft: n3820 (2013-10-10)

See also