# libc++ C++2a Status

In July 2017, the C++ standard committee created a draft for the next version of the C++ standard, known here as "C++2a" (probably to be C++20).

This page shows the status of libc++; the status of clang's support of the language features is here.

Reminder: Features in unreleased drafts of the standard are subject to change.

The groups that have contributed papers:

- LWG - Library working group
- CWG - Core Language Working group
- SG1 - Study group #1 (Concurrency working group)

### Paper Status

Paper # | Group | Paper Name | Meeting | Status | First released version
--- | --- | --- | --- | --- | ---
P0463R1 | LWG | Endian just Endian | Toronto |  |
P0674R1 | LWG | Extending make_shared to Support Arrays | Toronto |  |

[ Note: "Nothing to do" means that no library changes were needed to implement this change -- end note]

### Library Working group Issues Status

Issue # | Issue Name | Meeting | Status
--- | --- | --- | ---
2070 | `allocate_shared` should use `allocator_traits<A>::construct` | Toronto | Resolved by P0674R1
2444 | Inconsistent complexity for `std::sort_heap` | Toronto |
2593 | Moved-from state of Allocators | Toronto |
2597 | `std::log` misspecified for complex numbers | Toronto |
2783 | `stack::emplace()` and `queue::emplace()` should return `decltype(auto)` | Toronto |
2932 | Constraints on parallel algorithm implementations are underspecified | Toronto |
2937 | Is `equivalent("existing_thing", "not_existing_thing")` an error | Toronto | Complete
2940 | `result_of` specification also needs a little cleanup | Toronto |
2942 | LWG 2873's resolution missed `weak_ptr::owner_before` | Toronto |
2954 | Specialization of the convenience variable templates should be prohibited | Toronto |
2961 | Bad postcondition for `set_default_resource` | Toronto |
2966 | Incomplete resolution of US 74 | Toronto | Nothing to do
2974 | Diagnose out of bounds `tuple_element/variant_alternative` | Toronto | Complete

Last Updated: 16-Jul-2017