C++ Standard Library Issues List (Revision R84)

Index by Section

Reference ISO/IEC IS 14882:2011(E)

This document is the Index by Section for the Library Active Issues List.

Index by Section (non-Ready active issues only)

(view all issues)

Revised 2013-09-03 at 13:09:31 UTC

Section 1 (1 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2075 Open 1.10 [intro.multithread] Progress guarantees, lock-free property, and scheduling assumptions No 2012-11-14

Section 17 (19 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2136 Open 17.5.1 [structure] Postconditions vs. exceptions No 2012-11-14
2281 New 17.6.2.3 [using.linkage] C99 cross-reference typo in [using.linkage] Yes 2013-09-01
2146 Open 17.6.3.1 [utility.arg.requirements] Are reference types Copy/Move-Constructible/Assignable or Destructible? No 2013-05-06
2170 Core 17.6.3.1 [utility.arg.requirements] Aggregates cannot be DefaultConstructible Yes 2012-11-14
2152 Open 17.6.3.2 [swappable.requirements] Instances of standard container types are not swappable No 2012-11-14
2114 Open 17.6.3.3 [nullablepointer.requirements] Incorrect "contextually convertible to bool" requirements Yes 2012-11-14
2260 New 17.6.3.5 [allocator.requirements] Missing requirement for Allocator::pointer Yes 2013-09-01
2263 New 17.6.3.5 [allocator.requirements] Comparing iterators and allocator pointers with different const-character No 2013-09-01
2016 Open 17.6.3.5 [allocator.requirements] Allocators must be no-throw swappable Yes 2012-11-14
2108 Open 17.6.3.5 [allocator.requirements] No way to identify allocator types that always compare equal Yes 2012-11-14
2178 Open 17.6.3.5 [allocator.requirements] Allocator requirement changes not mentioned Annex C No 2012-11-14
2129 Open 17.6.4.2.1 [namespace.std] User specializations of std::initializer_list No 2012-11-14
2139 Deferred 17.6.4.2.1 [namespace.std] What is a user-defined type? No 2012-11-14
2224 Open 17.6.4.10 [res.on.objects] Ambiguous status of access to non-live objects Yes 2013-09-01
2112 Open 17.6.5 [conforming] User-defined classes that cannot be derived from No 2012-11-14
2133 Open 17.6.5.4 [global.functions] Attitude to overloaded comma for iterators No 2013-05-06
2259 New 17.6.5.5 [member.functions] Issues in 17.6.5.5 rules for member functions No 2013-09-01
2013 Review 17.6.5.6 [constexpr.functions] Do library implementers have the freedom to add constexpr? Yes 2012-11-14
1526 Open 17.6.5.9 [res.on.data.races] C++ should not impose thread safety requirements on C99 library implementations Yes 2012-11-14

Section 18 (6 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2251 New 18.2 [support.types] C++ library should define ssize_t No 2013-05-06
2248 New 18.3.2 [limits] numeric_limits::is_iec559 misnamed No 2013-05-06
2088 Open 18.8.3 [exception.terminate] std::terminate problem No 2012-11-14
2111 Open 18.8.3.4 [terminate] Which unexpected/terminate handler is called from the exception handling runtime? No 2012-11-14
2241 New 18.10 [support.runtime] <cstdalign> and #define of alignof No 2013-05-06
2155 Open 18.10 [support.runtime] Macro __bool_true_false_are_defined should be removed No 2013-05-06

Section 19 (1 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2234 Open 19.3 [assertions] assert() should allow usage in constant expressions No 2013-05-06

Section 20 (26 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2212 Open 20.2 [utility] tuple_size for const pair request <tuple> header No 2013-05-06
2153 Open 20.2.2 [utility.swap] Narrowing of the non-member swap contract No 2013-05-06
2051 Open 20.4.2 [tuple.tuple] Explicit tuple constructors for more than one parameter No 2012-11-14
2275 New 20.4.2.4 [tuple.creation] Why is forward_as_tuple not constexpr? Yes 2013-09-01
2287 New 20.6.4.3 [optional.object.assign] Incorrect exception safety for optional copy assignment operator Yes 2013-09-03
2282 New 20.6.4.3 [optional.object.assign] Incorrect is_assignable constraint in optional::op=(U&&) Yes 2013-09-01
2283 New 20.6.10 [optional.comp_with_t] optional declares and then does not define an operator<() Yes 2013-09-01
2250 New 20.7.1 [bitset.cons] Follow-up On Library Issue 2207 No 2013-05-06
2284 New 20.8.8 [allocator.traits] Inconsistency in allocator_traits::max_size Yes 2013-09-01
2089 Open 20.8.9.1 [allocator.members] std::allocator::construct should use uniform initialization Yes 2012-11-14
2127 Open 20.8.10 [storage.iterator] Move-construction with raw_storage_iterator Yes 2012-11-14
2072 Open 20.8.11 [temporary.buffer] Unclear wording about capacity of temporary buffers No 2012-11-14
2262 New 20.9.1.2 [unique.ptr.single] Requirement for unique_ptr<T>::get_deleter()(p) to be able to destroy the unique_ptr Yes 2013-09-01
2228 Review 20.9.1.2.3 [unique.ptr.single.asgn] Missing SFINAE rule in unique_ptr templated assignment Yes 2013-05-06
2118 Open 20.9.1.3 [unique.ptr.runtime] unique_ptr for array does not support cv qualification conversion of actual argument Yes 2012-12-25
2070 Open 20.9.2.2.6 [util.smartptr.shared.create] allocate_shared should use allocator_traits<A>::construct Yes 2012-11-14
2179 Open 20.9.2.4 [util.smartptr.enab] enable_shared_from_this and construction from raw pointers No 2013-05-20
2219 Open 20.10.2 [func.require] INVOKE-ing a pointer to member with a reference_wrapper as the object expression Yes 2013-05-06
2233 Open 20.10.11.1 [func.wrap.badcall] bad_function_call::what() unhelpful Yes 2013-05-06
2062 Open 20.10.11.2 [func.wrap.func] Effect contradictions w/o no-throw guarantee of std::function swaps No 2012-11-14
2132 Review 20.10.11.2.1 [func.wrap.func.con] std::function ambiguity Yes 2012-12-25
2119 Open 20.10.12 [unord.hash] Missing hash specializations for extended integer types Yes 2012-11-14
2077 Open 20.11.4.3 [meta.unary.prop] Further incomplete constraints for type traits No 2012-11-14
2116 Open 20.11.4.3 [meta.unary.prop] std::swap noexcept(what?) No 2012-11-14
2101 Open 20.11.7 [meta.trans] Some transformation types can produce impossible types Yes 2012-11-14
2278 New 20.13.2 [time.syn] User-defined literals for Standard Library types Yes 2013-09-01

Section 21 (8 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2232 Open 21.2.3 [char.traits.specializations] The char_traits specializations should declare their length(), compare(), and find() members constexpr Yes 2013-05-06
2268 New 21.4 [basic.string] Setting a default argument in the declaration of a member function assign of std::basic_string Yes 2013-09-01
2063 Open 21.4 [basic.string] Contradictory requirements for string move assignment No 2012-11-14
2151 Open 21.4.1 [string.require] basic_string<>::swap semantics ignore allocators No 2013-05-06
2003 Open 21.4.1 [string.require] String exception inconsistency in erase. Yes 2012-11-14
2270 New 21.5 [string.conversions] Inconsistent to_string overloads Yes 2013-09-01
2237 New 21.8 [c.strings] <cuchar> macros No 2013-05-06
2238 New 21.8 [c.strings] Problematic iterator-pair constructor of containers No 2013-05-06

Section 22 (2 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
1169 Open 22.4.2.1.2 [facet.num.get.virtuals] num_get not fully compatible with strto* Yes 2013-05-06
2117 Open 22.4.2.2.2 [facet.num.put.virtuals] ios_base manipulators should have showgrouping/noshowgrouping Yes 2012-11-14

Section 23 (36 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2193 EWG 23 [containers] Default constructors for standard library containers are explicit Yes 2013-09-01
2261 New 23.2 [container.requirements] Are containers required to use their 'pointer' type internally? No 2013-09-01
2167 Tentatively NAD 23.2.1 [container.requirements.general] Copy assignment requirements of Containers Yes 2012-11-14
2182 Review 23.2.1 [container.requirements.general] Container::[const_]reference types are misleadingly specified Yes 2013-05-06
2257 New 23.2.1 [container.requirements.general] Simplify container requirements with the new algorithms Yes 2013-09-01
2269 New 23.2.1 [container.requirements.general] Container iterators and argument-dependent lookup No 2013-09-01
2254 New 23.2.1 [container.requirements.general] Is dynarray an allocator-aware container? Yes 2013-05-21
2218 Open 23.2.1 [container.requirements.general] Unclear how containers use allocator_traits::construct() Yes 2013-09-01
2266 New 23.2.3 [sequence.reqmts] vector and deque have incorrect insert requirements Yes 2013-09-01
2206 Open 23.2.3 [sequence.reqmts] Inaccuracy in initializer_list constructor requirements No 2013-05-06
2258 New 23.2.4 [associative.reqmts] a.erase(q1, q2) unable to directly return q2 Yes 2013-09-01
2215 Open 23.2.4 [associative.reqmts] (unordered) associative container functors should be CopyConstructible No 2013-05-06
2227 Open 23.2.4 [associative.reqmts] Stateful comparison objects in associative containers Yes 2013-05-06
2052 Open 23.2.4 [associative.reqmts] Mixup between mapped_type and value_type for associative containers Yes 2012-11-14
2156 Open 23.2.5 [unord.req] Unordered containers' reserve(n) reserves for n-1 elements Yes 2013-05-06
2198 Open 23.2.5 [unord.req] max_load_factor(z) makes no strong guarantees, but bans useful behavior No 2013-05-06
2199 Open 23.2.5 [unord.req] unordered containers are required to have an initial max load factor of 1.0 No 2013-05-06
1175 Open 23.2.5 [unord.req] unordered complexity Yes 2012-11-14
2189 Open 23.2.5.1 [unord.req.except] Throwing swap breaks unordered containers' state No 2013-05-06
2157 Open 23.3.2.8 [array.zero] How does std::array<T,0> initialization work when T is not default-constructible? Yes 2012-11-14
2264 New 23.3.4 [dynarray] std::dynarray defines its initializer-list constructor in terms of a non-existent constructor Yes 2013-09-01
2253 New 23.3.4.1 [dynarray.overview] dynarray should state which container requirements aren't met Yes 2013-05-21
2255 New 23.3.4.2 [dynarray.cons] dynarray constructor ambiguity Yes 2013-05-30
2279 New 23.3.6.5 [list.ops] Carefully state effects of list::splice function Yes 2013-09-01
2158 New 23.3.7.3 [vector.capacity] Conditional copy/move in std::vector No 2012-11-14
2160 Open 23.3.7.3 [vector.capacity] Unintended destruction ordering-specification of resize No 2013-05-06
2223 Open 23.3.7.3 [vector.capacity] shrink_to_fit effect on iterator validity Yes 2013-05-06
2256 New 23.3.7.5 [vector.modifiers] On vector iterator invalidation No 2013-05-21
2252 New 23.3.7.5 [vector.modifiers] Strong guarantee on vector::push_back() still broken with C++11? No 2013-05-20
2164 New 23.3.7.5 [vector.modifiers] What are the semantics of vector.emplace(vector.begin(), vector.back())? No 2012-11-14
2161 New 23.4 [associative] const equivalence of std::map No 2013-05-06
2059 Open 23.4.4 [map] C++0x ambiguity problem with map::erase Yes 2013-05-06
2274 New 23.4.4.3 [map.access] Does map::operator[] value-initialize or default-insert a missing element? Yes 2013-09-01
2076 New 23.4.6.2 [set.cons] Bad CopyConstructible requirement in set constructors Yes 2012-11-14
2230 New 23.5 [unord] "see below" for initializer-list constructors of unordered containers Yes 2013-01-15
2194 Tentatively Ready 23.6 [container.adaptors] Impossible container requirements for adaptor types Yes 2013-05-21

Section 24 (10 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
1213 Deferred 24.2 [iterator.requirements] Meaning of valid and singular iterator underspecified Yes 2012-11-14
2035 Open 24.2.4 [output.iterators] Output iterator requirements are broken Yes 2012-11-14
2038 Open 24.2.4 [output.iterators] Missing definition for incrementable iterator No 2012-11-14
2285 New 24.5.1 [reverse.iterators] make_reverse_iterator Yes 2013-09-01
2208 New 24.5.1 [reverse.iterators] std::reverse_iterator should be a literal type No 2012-11-14
2204 Tentatively NAD 24.5.1.3.4 [reverse.iter.op.star] reverse_iterator should not require a second copy of the base iterator Yes 2013-05-21
2188 Open 24.5.1.3.5 [reverse.iter.opref] Reverse iterator does not fully support targets that overload operator& Yes 2013-05-21
2106 Open 24.5.3 [move.iterators] move_iterator wrapping iterators returning prvalues Yes 2013-01-15
2277 New 24.7 [iterator.range] <dynarray> is missing in 24.7/1 Yes 2013-09-01
2280 New 24.7 [iterator.range] begin/end for arrays should be constexpr and noexcept Yes 2013-09-01

Section 25 (6 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2173 New 25 [algorithms] The meaning of operator + in the description of the algorithms No 2012-11-14
2150 Tentatively Ready 25.2.6 [alg.find.end] Unclear specification of find_end Yes 2013-05-21
2242 New 25.3.1 [alg.copy] [uninitialized_]copy_n() defect No 2013-05-06
2267 New 25.4.1.4 [partial.sort.copy] partial_sort_copy underspecified for ranges of two different types No 2013-09-01
2166 New 25.4.6 [alg.heap.operations] Heap property underspecified? No 2012-11-14
2239 New 25.4.7 [alg.min.max] min/max/minmax requirements No 2013-05-06

Section 26 (7 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2181 Open 26.5.1.2 [rand.req.seedseq] Exceptions from seed sequence operations Yes 2013-05-21
2154 New 26.5.1.3 [rand.req.urng] What exactly does compile-time complexity imply? No 2012-11-14
2180 Tentatively Ready 26.5.7.1 [rand.util.seedseq] Exceptions from std::seed_seq operations Yes 2013-05-21
2168 New 26.5.8.2.2 [rand.dist.uni.real] Inconsistent specification of uniform_real_distribution constructor No 2012-11-14
2115 Open 26.6.8 [template.mask.array] Undefined behaviour for valarray assignments with mask_array index? No 2012-11-14
2192 New 26.8 [c.math] Validity and return type of std::abs(0u) is unclear Yes 2013-05-21
2079 New 26.8 [c.math] Required pow() overloads No 2012-11-14

Section 27 (12 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2087 Tentatively Ready 27.5 [iostreams.base] iostream_category() and noexcept Yes 2013-05-21
2143 Tentatively Ready 27.5.3 [ios.base] ios_base::xalloc should be thread-safe Yes 2013-05-21
2214 Open 27.5.5.2 [basic.ios.cons] Clarify basic_ios::init call restrictions Yes 2013-05-21
2085 Tentatively Ready 27.7.2.3 [istream.unformatted] Wrong description of effect 1 of basic_istream::ignore Yes 2013-05-21
2131 Tentatively NAD 27.7.2.3 [istream.unformatted] Member function getline taking a string as parameter Yes 2013-05-21
2243 New 27.7.2.3 [istream.unformatted] istream::putback problem No 2013-05-06
2244 New 27.7.2.3 [istream.unformatted] Issue on basic_istream::seekg No 2013-05-06
2245 New 27.7.2.3 [istream.unformatted] packaged_task::reset() memory allocation No 2013-05-06
2272 New 27.7.6 [quoted.manip] quoted should use char_traits::eq for character comparison Yes 2013-09-01
2286 New 27.8.2.4 [stringbuf.virtuals] stringbuf::underflow() underspecified Yes 2013-09-01
2121 New 27.8.6 [stringstream.cons] app for string streams No 2012-11-14
2249 New 27.9.2 [c.files] Remove gets from <cstdio> No 2013-05-06

Section 28 (15 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
1450 Open 28.5.2 [re.matchflag] Contradiction in regex_constants Yes 2012-11-14
2271 New 28.7 [re.traits] regex_traits::lookup_classname specification unclear Yes 2013-09-01
2018 Open 28.7 [re.traits] regex_traits::isctype Returns clause is wrong Yes 2012-11-14
2137 Open 28.8.3 [re.regex.assign] Misleadingly constrained post-condition in the presence of exceptions Yes 2012-11-14
2217 New 28.9.2 [re.submatch.op] operator==(sub_match, string) slices on embedded '\0's No 2012-11-29
2195 New 28.10 [re.results] Missing constructors for match_results Yes 2013-05-21
2183 New 28.10.1 [re.results.const] Muddled allocator requirements for match_results constructors No 2012-11-14
2184 New 28.10.1 [re.results.const] Muddled allocator requirements for match_results assignments No 2012-11-14
2191 New 28.10.1 [re.results.const] Incorrect specification of match_results(match_results&&) No 2012-11-14
2273 New 28.11.2 [re.alg.match] regex_match ambiguity No 2013-09-01
2205 New 28.11.2 [re.alg.match] Problematic postconditions of regex_match and regex_search Yes 2012-11-14
2216 New 28.11.4 [re.alg.replace] regex_replace(basic_string) allocator handling No 2012-11-29
2213 New 28.11.4 [re.alg.replace] Return value of std::regex_replace Yes 2012-11-14
2220 New 28.12.2.2 [re.tokiter.comp] Under-specification of operator== for regex_token_iterator No 2012-12-25
2221 New 28.12.2.2 [re.tokiter.comp] No formatted output operator for nullptr No 2012-12-25

Section 29 (4 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2236 New 29.2 [atomics.syn] kill_dependency unconditionally noexcept No 2013-05-06
2265 New 29.3 [atomics.order] 29.3p9 appears to rule out some acceptable executions No 2013-09-01
2165 Core 29.5 [atomics.types.generic] std::atomic<X> requires X to be nothrow default constructible No 2012-11-14
2159 Open 29.7 [atomics.flag] atomic_flag initialization Yes 2012-11-14

Section 30 (15 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2126 Tentatively NAD Editorial 30.4.1 [thread.mutex.requirements] Several specification problems in regard to mutex requirements No 2012-11-14
2134 Tentatively NAD Editorial 30.4.1.2 [thread.mutex.requirements.mutex] Redundant Mutex requirement? No 2012-11-14
2125 Tentatively NAD Editorial 30.4.1.3 [thread.timedmutex.requirements] TimedMutex specification problem No 2012-11-14
2104 New 30.4.2.2 [thread.lock.unique] unique_lock move-assignment should not be noexcept Yes 2012-11-14
2240 New 30.5.1 [thread.condition.condvar] Probable misuse of term "function scope" in [thread.condition] No 2013-05-06
2135 Open 30.5.1 [thread.condition.condvar] Unclear requirement for exceptions thrown in condition_variable::wait() No 2012-11-14
2276 New 30.6 [futures] Missing requirement on std::promise::set_exception No 2013-09-01
2095 New 30.6.5 [futures.promise] promise and packaged_task missing constructors needed for uses-allocator construction Yes 2013-05-06
2078 Tentatively NAD Editorial 30.6.8 [futures.async] Throw specification of async() incomplete No 2012-11-14
2120 Review 30.6.8 [futures.async] What should async do if neither 'async' nor 'deferred' is set in policy? Yes 2013-05-06
2100 Review 30.6.8 [futures.async] timed waiting functions cannot timeout if launch::async policy used Yes 2012-11-14
2202 New 30.6.8 [futures.async] Missing allocator support by async No 2012-11-14
2186 Open 30.6.8 [futures.async] Incomplete action on async/launch::deferred Yes 2012-11-14
2097 New 30.6.9.1 [futures.task.members] packaged_task constructors should be constrained Yes 2012-11-14
2142 Open 30.6.9.1 [futures.task.members] packaged_task::operator() synchronization too broad? No 2012-11-14

Section C (1 issues)

(view all issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2201 New C.4 [diff.library] Missing macro entries from C standard library No 2012-11-14