In July 2017, the C++ standard committee created a draft for the next version of the C++ standard, initially known as "C++2a". In September 2020, the C++ standard committee approved this draft, and sent it to ISO for approval as C++20.
This page shows the status of libc++; the status of clang's support of the language features is here.
Attention!
Features in unreleased drafts of the standard are subject to change.
The groups that have contributed papers:
- CWG - Core Language Working group
- LWG - Library working group
- SG1 - Study group #1 (Concurrency working group)
Note
"Nothing to do" means that no library changes were needed to implement this change.
Note
| [1] | P0591: The changes in [mem.poly.allocator.mem] are missing. |
| [2] | P0645: The paper is implemented but still marked as an incomplete feature (the feature-test macro is not set). |
| [3] | P0966: It was previously erroneously marked as complete in version 8.0. See bug 45368. |
| [4] | P0619: Section D.4 remains undone. |
| [5] | P0883: shared_ptr and floating-point changes weren't applied as they themselves aren't implemented yet. |
| [6] | P0883: ATOMIC_FLAG_INIT was marked deprecated in version 14.0, but was undeprecated with the implementation of LWG3659 in version 15.0. |
| [7] | P0660: The paper is implemented but the features are experimental and can be enabled via -fexperimental-library. |
| [8] | P1614: std::strong_order(long double, long double) is partly implemented. |
| [9] | P0355: The implementation status is:
|