libc++ C++1z Status

In November 2014, the C++ standard committee created a draft for the next version of the C++ standard, known here as "C++1z" (probably to be C++17)

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

The groups that have contributed papers:

Paper Status

Paper #GroupPaper NameMeetingStatusFirst released version
N3911LWGTransformationTrait Alias void_t.UrbanaComplete3.6
N4089LWGSafe conversions in unique_ptr<T[]>.Urbana
N4169LWGA proposal to add invoke function templateUrbana
N4190LWGRemoving auto_ptr, random_shuffle(), And Old Stuff.Urbana
N4258LWGCleaning-up noexcept in the Library.Urbana
N4277LWGTriviallyCopyable reference_wrapper.UrbanaComplete3.2
N4279LWGImproved insertion interface for unique-key maps.Urbana
N4280LWGNon-member size() and moreUrbanaComplete3.6
N4284LWGContiguous Iterators.Urbana

Library Working group Issues Status

Issue #Issue NameMeetingStatus
2016Allocators must be no-throw swappableUrbana
2118unique_ptr for array does not support cv qualification conversion of actual argumentUrbanaWill be resolved by N4089
2170Aggregates cannot be DefaultConstructibleUrbana
2308Clarify container destructor requirements w.r.t. std::arrayUrbanaWill be resolved by N4258
2340Replacement allocation functions declared as inlineUrbanaComplete
2354Unnecessary copying when inserting into maps with braced-init syntaxUrbana
2377std::align requirements overly strictUrbana
2396underlying_type doesn't say what to do for an incomplete enumeration typeUrbanaComplete
2399shared_ptr's constructor from unique_ptr should be constrainedUrbanaComplete
2400shared_ptr's get_deleter() should use addressof()UrbanaComplete
2401std::function needs more noexceptUrbanaComplete
2404mismatch()'s complexity needs to be updatedUrbanaComplete
2408SFINAE-friendly common_type / iterator_traits is missing in C++14Urbana
2106move_iterator wrapping iterators returning prvaluesUrbana
2129User specializations of std::initializer_listUrbanaComplete
2212tuple_size for const pair request headerUrbanaComplete
2217operator==(sub_match, string) slices on embedded '\0'sUrbana
2230"see below" for initializer_list constructors of unordered containersUrbanaComplete
2233bad_function_call::what() unhelpfulUrbanaComplete
2266vector and deque have incorrect insert requirementsUrbana
2325minmax_element()'s behavior differing from max_element()'s should be notedUrbanaComplete
2361Apply 2299 resolution throughout libraryUrbana
2365Missing noexcept in shared_ptr::shared_ptr(nullptr_t)UrbanaComplete
2376bad_weak_ptr::what() overspecifiedUrbanaComplete
2387More nested types that must be accessible and unambiguousUrbana

Last Updated: 18-Nov-2014