libc++ C++1Y Status
In April 2013, the C++ standard committee approved the draft for the next version of the C++ standard, known as "C++1Y" (probably to be C++14)
The draft standard includes papers and issues that were voted on at the previous three meetings (Kona, Portland, and Bristol)
Paper Status
Paper # | Paper Name | Meeting | Status |
---|---|---|---|
3346 | Terminology for Container Element Requirements - Rev 1 | Kona | Complete |
3421 | Making Operator Functors greater<> | Portland | Complete |
3462 | std::result_of and SFINAE | Portland | Complete |
3469 | Constexpr Library Additions: chrono, v3 | Portland | Complete |
3470 | Constexpr Library Additions: containers, v2 | Portland | Complete |
3471 | Constexpr Library Additions: utilities, v3 | Portland | Complete |
3302 | Constexpr Library Additions: complex, v2 | Portland | Complete |
3545 | An Incremental Improvement to integral_constant | Bristol | Complete |
3644 | Null Forward Iterators | Bristol | Complete |
3668 | std::exchange() | Bristol | Complete |
3658 | Compile-time integer sequences | Bristol | Complete |
3670 | Addressing Tuples by Type | Bristol | Complete |
3671 | Making non-modifying sequence operations more robust | Bristol | Complete |
3656 | make_unique | Bristol | Complete |
3654 | Quoted Strings | Bristol | Implemented, but not checked in |
3642 | User-defined Literals | Bristol | Complete |
3655 | TransformationTraits Redux (excluding part 4) | Bristol | Complete |
3657 | Adding heterogeneous comparison lookup to associative containers | Bristol | Complete |
3672 | A proposal to add a utility class to represent optional objects | Bristol | |
3669 | Fixing constexpr member functions without const | Bristol | Complete |
3662 | C++ Dynamic Arrays (dynarray) | Bristol |
Issue Status
Note: "NAD" means that the issue was deemed "Not a defect"Issue # | Issue Name | Meeting | Status |
---|---|---|---|
1214 | Insufficient/inconsistent key immutability requirements for associative containers | Kona | |
2009 | Reporting out-of-bound values on numeric string conversions | Kona | Complete |
2010 | is_* traits for binding operations can't be meaningfully specialized | Kona | Complete |
2015 | Incorrect pre-conditions for some type traits | Kona | |
2021 | Further incorrect usages of result_of | Kona | |
2028 | messages_base::catalog overspecified | Kona | |
2033 | Preconditions of reserve, shrink_to_fit, and resize functions | Kona | |
2039 | Issues with std::reverse and std::copy_if | Kona | Complete |
2044 | No definition of "Stable" for copy algorithms | Kona | Complete |
2045 | forward_list::merge and forward_list::splice_after with unequal allocators | Kona | |
2047 | Incorrect "mixed" move-assignment semantics of unique_ptr | Kona | |
2050 | Unordered associative containers do not use allocator_traits to define member types | Kona | |
2053 | Errors in regex bitmask types | Kona | |
2061 | make_move_iterator and arrays | Kona | |
2064 | More noexcept issues in basic_string | Kona | |
2065 | Minimal allocator interface | Kona | |
2067 | packaged_task should have deleted copy c'tor with const parameter | Kona | |
2069 | Inconsistent exception spec for basic_string move constructor | Kona | |
2096 | Incorrect constraints of future::get in regard to | Kona | |
2102 | Why is std::launch an implementation-defined type? | Kona | |
2071 | std::valarray move-assignment | Portland | |
2074 | Off by one error in std::reverse_copy | Portland | Complete |
2081 | Allocator requirements should include CopyConstructible 2083 const-qualification on weak_ptr::owner_before | Portland | |
2086 | Overly generic type support for math functions | Portland | |
2099 | Unnecessary constraints of va_start() usage | Portland | |
2103 | std::allocator_traits<std::allocator<T>>::propagate_on_container_move_assignment | Portland | |
2105 | Inconsistent requirements on const_iterator's value_type | Portland | |
2110 | remove can't swap but note says it might | Portland | |
2123 | merge() allocator requirements for lists versus forward lists | Portland | |
2005 | unordered_map::insert(T&&) protection should apply to map too | Portland | |
2011 | Unexpected output required of strings | Portland | |
2048 | Unnecessary mem_fn overloads | Portland | |
2049 | is_destructible is underspecified | Portland | |
2056 | future_errc enums start with value 0 (invalid value for broken_promise) | Portland | |
2058 | valarray and begin/end | Portland | |
2091 | Misplaced effect in m.try_lock_for() | Bristol | |
2092 | Vague Wording for condition_variable_any | Bristol | |
2093 | Throws clause of condition_variable::wait with predicate | Bristol | |
2145 | error_category default constructor | Bristol | |
2147 | Unclear hint type in Allocator's allocate function | Bristol | |
2163 | nth_element requires inconsistent post-conditions | Bristol | |
2169 | Missing reset() requirements in unique_ptr specialization | Bristol | |
2172 | Does atomic_compare_exchange_* accept v == nullptr arguments? | Bristol | |
2080 | Specify when once_flag becomes invalid | Bristol | |
2109 | Incorrect requirements for hash specializations | Bristol | |
2144 | Missing noexcept specification in type_index | Bristol | |
2174 | wstring_convert::converted() should be noexcept | Bristol | |
2175 | string_convert and wbuffer_convert validity | Bristol | |
2177 | Requirements on Copy/MoveInsertable | Bristol | |
2187 | vector<bool> is missing emplace and emplace_back member functions | Bristol | Complete |
2197 | Specification of is_[un]signed unclear for non-arithmetic types | Bristol | Complete |
2200 | Data race avoidance for all containers, not only for sequences | Bristol | |
2209 | assign() overspecified for sequence containers | Bristol | |
2211 | Replace ambiguous use of "Allocator" in container requirements | Bristol | |
2222 | Inconsistency in description of forward_list::splice_after single-element overload | Bristol | |
2225 | Unrealistic header inclusion checks required | Bristol | Complete |
2231 | DR 704 removes complexity guarantee for clear() | Bristol | Complete |
Last Updated: 13-Aug-2013