C++ Standard Library Issues List (Revision R81)

Index by Status and Section

Reference ISO/IEC IS 14882:2011(E)

This document is the Index by Status and Section for the Library Active Issues List, Library Defect Reports List, and Library Closed Issues List.

Revised 2013-01-15 at 16:01:04 UTC

Review (13 issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2162 Review 17.6.3.5 [allocator.requirements] allocator_traits::max_size missing noexcept Yes 2012-11-14
2013 Review 17.6.5.6 [constexpr.functions] Do library implementers have the freedom to add constexpr? Yes 2012-11-14
2132 Review 20.8.11.2.1 [func.wrap.func.con] std::function ambiguity Yes 2012-12-25
2196 Review 20.9.4.3 [meta.unary.prop] Specification of is_*[copy/move]_[constructible/assignable] unclear for non-referencable types Yes 2012-11-14
2094 Review 20.11.5.1 [time.duration.cons] duration conversion overflow shouldn't participate in overload resolution Yes 2012-11-14
2130 Review 29.3 [atomics.order] Missing ordering constraints Yes 2012-11-14
2138 Review 29.7 [atomics.flag] atomic_flag::clear should not accept memory_order_consume Yes 2012-11-14
2140 Review 30.5 [thread.condition] Meaning of notify_all_at_thread_exit synchronization requirement? Yes 2012-11-14
2190 Review 30.5 [thread.condition] Condition variable specification Yes 2012-11-14
2098 Review 30.6.5 [futures.promise] Minor Inconsistency between promise::set_value and promise::set_value_at_thread_exit Yes 2012-11-14
2185 Review 30.6.6 [futures.unique_future] Missing throws clause for future/shared_future::wait_for/wait_until Yes 2012-11-14
2100 Review 30.6.8 [futures.async] timed waiting functions cannot timeout if launch::async policy used Yes 2012-11-14
2120 Review 30.6.8 [futures.async] What should async do if neither 'async' nor 'deferred' is set in policy? Yes 2012-11-14

New (80 issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2225 New 17.6.2.2 [using.headers] Unrealistic header inclusion checks required Yes 2012-12-25
2146 New 17.6.3.1 [utility.arg.requirements] Are reference types Copy/Move-Constructible/Assignable or Destructible? No 2012-11-14
2224 New 17.6.4.10 [res.on.objects] Ambiguous status of access to non-live objects Yes 2012-12-25
2133 New 17.6.5.4 [global.functions] Attitude to overloaded comma for iterators No 2012-11-14
2155 New 18.10 [support.runtime] Macro __bool_true_false_are_defined should be removed No 2012-11-14
2234 New 19.3 [assertions] assert() should allow usage in constant expressions No 2013-01-15
2212 New 20.2 [utility] tuple_size for const pair request <tuple> header No 2012-11-14
2153 New 20.2.2 [utility.swap] Narrowing of the non-member swap contract No 2012-11-14
2228 New 20.7.1.2.3 [unique.ptr.single.asgn] Missing SFINAE rule in unique_ptr templated assignment Yes 2012-12-25
2179 New 20.7.2.4 [util.smartptr.enab] enable_shared_from_this and construction from raw pointers No 2012-11-14
2219 New 20.8.2 [func.require] INVOKE-ing a pointer to member with a reference_wrapper as the object expression Yes 2012-12-25
2233 New 20.8.11.1 [func.wrap.badcall] bad_function_call::what() unhelpful Yes 2013-01-15
2197 New 20.9.4.3 [meta.unary.prop] Specification of is_[un]signed unclear for non-arithmetic types Yes 2012-11-14
2141 New 20.9.7.6 [meta.trans.other] common_type trait produces reference types Yes 2012-11-14
2203 New 20.12.4 [allocator.adaptor.members] scoped_allocator_adaptor uses wrong argument types for piecewise construction Yes 2012-11-14
2144 New 20.13 [type.index] Missing noexcept specification in type_index Yes 2012-11-14
2232 New 21.2.3 [char.traits.specializations] The char_traits specializations should declare their length(), compare(), and find() members constexpr Yes 2013-01-15
2151 New 21.4.1 [string.require] basic_string<>::swap semantics ignore allocators No 2012-11-14
2207 New 21.4.5 [string.access] basic_string::at should not have a Requires clause Yes 2012-11-14
2226 New 22.3.3.2.2 [conversions.string] wstring_convert methods do not take allocator instance No 2012-12-25
2174 New 22.3.3.2.2 [conversions.string] wstring_convert::converted() should be noexcept Yes 2012-11-14
2175 New 22.3.3.2.2 [conversions.string] wstring_convert and wbuffer_convert validity Yes 2012-11-14
2176 New 22.3.3.2.2 [conversions.string] Special members for wstring_convert and wbuffer_convert Yes 2012-11-14
2229 New 22.5 [locale.stdcvt] Standard code conversion facets underspecified Yes 2013-01-15
2218 New 23.2.1 [container.requirements.general] Unclear how containers use allocator_traits::construct() Yes 2012-11-29
2211 New 23.2.1 [container.requirements.general] Replace ambiguous use of "Allocator" in container requirements Yes 2012-11-14
2200 New 23.2.2 [container.requirements.dataraces] Data race avoidance for all containers, not only for sequences Yes 2012-11-14
2231 New 23.2.3 [sequence.reqmts] DR 704 removes complexity guarantee for clear() Yes 2013-01-15
2206 New 23.2.3 [sequence.reqmts] Inaccuracy in initializer_list constructor requirements No 2012-11-14
2227 New 23.2.4 [associative.reqmts] Stateful comparison objects in associative containers Yes 2012-12-25
2215 New 23.2.4 [associative.reqmts] (unordered) associative container functors should be CopyConstructible No 2012-11-14
2198 New 23.2.5 [unord.req] max_load_factor(z) makes no strong guarantees, but bans useful behavior No 2012-12-25
2156 New 23.2.5 [unord.req] Unordered containers' reserve(n) reserves for n-1 elements No 2012-11-14
2199 New 23.2.5 [unord.req] unordered containers are required to have an initial max load factor of 1.0 No 2012-11-14
2189 New 23.2.5.1 [unord.req.except] Throwing swap breaks unordered containers' state No 2012-11-14
2210 New 23.3 [sequences] Missing allocator-extended constructor for allocator-aware containers Yes 2013-01-15
2209 New 23.3 [sequences] assign() overspecified for sequence containers Yes 2012-11-14
2222 New 23.3.4.6 [forwardlist.ops] Inconsistency in description of forward_list::splice_after single-element overload Yes 2012-12-25
2223 New 23.3.6.3 [vector.capacity] shrink_to_fit effect on iterator validity Yes 2012-12-25
2158 New 23.3.6.3 [vector.capacity] Conditional copy/move in std::vector No 2012-11-14
2160 New 23.3.6.3 [vector.capacity] Unintended destruction ordering-specification of resize No 2012-11-14
2164 New 23.3.6.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 2012-11-14
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 New 23.6 [container.adaptors] Impossible container requirements for adaptor types Yes 2012-11-14
2208 New 24.5.1 [reverse.iterators] std::reverse_iterator should be a literal type No 2012-11-14
2204 New 24.5.1.3.4 [reverse.iter.op.star] reverse_iterator should not require a second copy of the base iterator Yes 2012-11-14
2188 New 24.5.1.3.5 [reverse.iter.opref] Reverse iterator does not fully support targets that overload operator& Yes 2012-11-14
2173 New 25 [algorithms] The meaning of operator + in the description of the algorithms No 2012-11-14
2150 New 25.2.6 [alg.find.end] Unclear specification of find_end Yes 2012-11-14
2166 New 25.4.6 [alg.heap.operations] Heap property underspecified? No 2012-11-14
2181 New 26.5.1.2 [rand.req.seedseq] Exceptions from seed sequence operations Yes 2012-11-14
2182 New 26.5.1.2 [rand.req.seedseq] Container::[const_]reference types are misleadingly specified Yes 2012-11-14
2154 New 26.5.1.3 [rand.req.urng] What exactly does compile-time complexity imply? No 2012-11-14
2180 New 26.5.7.1 [rand.util.seedseq] Exceptions from std::seed_seq operations Yes 2012-11-14
2168 New 26.5.8.2.2 [rand.dist.uni.real] Inconsistent specification of uniform_real_distribution constructor No 2012-11-14
2079 New 26.8 [c.math] Required pow() overloads No 2012-11-14
2192 New 26.8 [c.math] Validity and return type of std::abs(0u) is unclear Yes 2012-11-14
2087 New 27.5 [iostreams.base] iostream_category() and noexcept Yes 2012-11-14
2143 New 27.5.3 [ios.base] ios_base::xalloc should be thread-safe Yes 2012-11-14
2214 New 27.5.5.2 [basic.ios.cons] Clarify basic_ios::init call restrictions Yes 2012-11-14
2085 New 27.7.2.3 [istream.unformatted] Wrong description of effect 1 of basic_istream::ignore Yes 2012-11-14
2131 New 27.7.2.3 [istream.unformatted] Member function getline taking a string as parameter Yes 2012-11-14
2121 New 27.8.6 [stringstream.cons] app for string streams No 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 2012-11-14
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
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
2104 New 30.4.2.2 [thread.lock.unique] unique_lock move-assignment should not be noexcept Yes 2012-11-14
2095 New 30.6.5 [futures.promise] promise and packaged_task missing constructors needed for uses-allocator construction Yes 2012-11-14
2202 New 30.6.8 [futures.async] Missing allocator support by async No 2012-11-14
2097 New 30.6.9.1 [futures.task.members] packaged_task constructors should be constrained Yes 2012-11-14
2201 New C.2 [diff.library] Missing macro entries from C standard library No 2012-11-14

Open (46 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
2136 Open 17.5.1 [structure] Postconditions vs. exceptions No 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
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
2112 Open 17.6.5 [conforming] User-defined classes that cannot be derived from No 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
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
2051 Open 20.4.2 [tuple.tuple] Explicit tuple constructors for more than one parameter No 2012-11-14
2089 Open 20.6.9.1 [allocator.members] std::allocator::construct should use uniform initialization Yes 2012-11-14
2127 Open 20.6.10 [storage.iterator] Move-construction with raw_storage_iterator Yes 2012-11-14
2072 Open 20.6.11 [temporary.buffer] Unclear wording about capacity of temporary buffers No 2012-11-14
2118 Open 20.7.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.7.2.2.6 [util.smartptr.shared.create] allocate_shared should use allocator_traits<A>::construct Yes 2012-11-14
2149 Open 20.8 [function.objects] Concerns about 20.8/5 Yes 2012-11-14
2062 Open 20.8.11.2 [func.wrap.func] Effect contradictions w/o no-throw guarantee of std::function swaps No 2012-11-14
2119 Open 20.8.12 [unord.hash] Missing hash specializations for extended integer types Yes 2012-11-14
2148 Open 20.8.12 [unord.hash] Hashing enums should be supported directly by std::hash No 2012-11-14
2077 Open 20.9.4.3 [meta.unary.prop] Further incomplete constraints for type traits No 2012-11-14
2116 Open 20.9.4.3 [meta.unary.prop] std::swap noexcept(what?) No 2012-11-14
2101 Open 20.9.7 [meta.trans] Some transformation types can produce impossible types Yes 2012-11-14
2063 Open 21.4 [basic.string] Contradictory requirements for string move assignment No 2012-11-14
2003 Open 21.4.1 [string.require] String exception inconsistency in erase. Yes 2012-11-14
1169 Open 22.4.2.1.2 [facet.num.get.virtuals] num_get not fully compatible with strto* Yes 2012-11-14
2117 Open 22.4.2.2.2 [facet.num.put.virtuals] ios_base manipulators should have showgrouping/noshowgrouping Yes 2012-11-14
2052 Open 23.2.4 [associative.reqmts] Mixup between mapped_type and value_type for associative containers Yes 2012-11-14
1175 Open 23.2.5 [unord.req] unordered complexity Yes 2012-11-14
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
2122 Open 23.3.5.5 [list.ops] merge() stability for lists versus forward lists Yes 2012-11-14
2059 Open 23.4.4 [map] C++0x ambiguity problem with map::erase 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
2128 Open 24.3 [iterator.synopsis] Absence of global functions cbegin/cend Yes 2012-11-14
2106 Open 24.5.3 [move.iterators] move_iterator wrapping iterators returning prvalues Yes 2013-01-15
2115 Open 26.6.8 [template.mask.array] Undefined behaviour for valarray assignments with mask_array index? No 2012-11-14
1450 Open 28.5.2 [re.matchflag] Contradiction in regex_constants Yes 2012-11-14
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
2159 Open 29.7 [atomics.flag] atomic_flag initialization Yes 2012-11-14
2135 Open 30.5.1 [thread.condition.condvar] Unclear requirement for exceptions thrown in condition_variable::wait() No 2012-11-14
2186 Open 30.6.8 [futures.async] Incomplete action on async/launch::deferred Yes 2012-11-14
2142 Open 30.6.9.1 [futures.task.members] packaged_task::operator() synchronization too broad? No 2012-11-14

EWG (1 issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2193 EWG 23 [containers] Default constructors for standard library containers are explicit Yes 2012-11-14

Core (2 issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2170 Core 17.6.3.1 [utility.arg.requirements] Aggregates cannot be DefaultConstructible Yes 2012-11-14
2165 Core 29.5 [atomics.types.generic] std::atomic<X> requires X to be nothrow default constructible No 2012-11-14

Deferred (2 issues)

Issue Status Section Title Proposed Resolution Duplicates Last modified
2139 Deferred 17.6.4.2.1 [namespace.std] What is a user-defined type? No 2012-11-14
1213 Deferred 24.2 [iterator.requirements] Meaning of valid and singular iterator underspecified Yes 2012-11-14