Reference ISO/IEC IS 14882:2011(E)
This document is the Table of Contents for the Library Active Issues List, Library Defect Reports List, and Library Closed Issues List.
Revised 2015-05-23 at 15:05:40 UTC
Issue | Status | Section | Title | Proposed Resolution | Priority | Duplicates |
1173 | Open | 17 [library] | "Equivalence" wishy-washiness | No | 3 | |
1175 | Open | 23.2.5 [unord.req] | unordered complexity | Yes | 3 | |
1213 | Open | 24.2 [iterator.requirements] | Meaning of valid and singular iterator underspecified | No | 4 | |
2035 | Open | 24.2.4 [output.iterators] | Output iterator requirements are broken | Yes | 3 | |
2038 | Open | 24.2.4 [output.iterators] | Missing definition for incrementable iterator | No | 3 | |
2051 | Open | 20.4.2 [tuple.tuple] | Explicit tuple constructors for more than one parameter | No | 2 | |
2062 | Open | 20.9.12.2 [func.wrap.func] | Effect contradictions w/o no-throw guarantee of std::function swaps | No | 2 | |
2070 | Open | 20.8.2.2.6 [util.smartptr.shared.create] | allocate_shared should use allocator_traits<A>::construct | Yes | 2 | |
2077 | Open | 20.10.4.3 [meta.unary.prop] | Further incomplete constraints for type traits | No | 3 | |
2088 | Open | 18.8.3 [exception.terminate] | std::terminate problem | No | 3 | |
2089 | EWG | 20.7.9.1 [allocator.members] | std::allocator::construct should use uniform initialization | Yes | 2 | |
2095 | Open | 30.6.5 [futures.promise] | promise and packaged_task missing constructors needed for uses-allocator construction | Yes | 4 | |
2114 | Open | 17.6.3.3 [nullablepointer.requirements] | Incorrect "contextually convertible to bool" requirements | Yes | 3 | |
2115 | Open | 26.6.8 [template.mask.array] | Undefined behaviour for valarray assignments with mask_array index? | No | 4 | |
2116 | Open | 20.10.4.3 [meta.unary.prop] | std::swap noexcept(what?) | No | 3 | |
2117 | New | 22.4.2.2.2 [facet.num.put.virtuals] | ios_base manipulators should have showgrouping/noshowgrouping | No | 5 | |
2121 | New | 27.8.5.1 [stringstream.cons] | app for string streams | No | 3 | |
2136 | Open | 17.5.1 [structure] | Postconditions vs. exceptions | No | 3 | |
2137 | Open | 28.8.3 [re.regex.assign] | Misleadingly constrained post-condition in the presence of exceptions | Yes | 3 | |
2139 | Open | 17.6.4.2.1 [namespace.std] | What is a user-defined type? | Yes | 4 | |
2146 | Open | 17.6.3.1 [utility.arg.requirements] | Are reference types Copy/Move-Constructible/Assignable or Destructible? | No | 2 | |
2151 | Open | 21.4.1 [string.require] | basic_string<>::swap semantics ignore allocators | No | 3 | |
2152 | Open | 17.6.3.2 [swappable.requirements] | Instances of standard container types are not swappable | No | 2 | |
2153 | Open | 20.2.2 [utility.swap] | Narrowing of the non-member swap contract | No | 2 | |
2154 | New | 26.5.1.3 [rand.req.urng] | What exactly does compile-time complexity imply? | No | 4 | |
2155 | Open | 18.10 [support.runtime] | Macro __bool_true_false_are_defined should be removed | Yes | 4 | |
2157 | Open | 23.3.2.8 [array.zero] | How does std::array<T,0> initialization work when T is not default-constructible? | Yes | 3 | |
2158 | New | 23.3.6.3 [vector.capacity] | Conditional copy/move in std::vector | No | 2 | |
2161 | New | 23.4 [associative] | const equivalence of std::map | No | 2 | |
2164 | New | 23.3.6.5 [vector.modifiers] | What are the semantics of vector.emplace(vector.begin(), vector.back())? | No | 2 | |
2165 | Core | 29.5 [atomics.types.generic] | std::atomic<X> requires X to be nothrow default constructible | No | ||
2166 | New | 25.4.6 [alg.heap.operations] | Heap property underspecified? | No | 3 | |
2173 | New | 25 [algorithms] | The meaning of operator + in the description of the algorithms | Yes | 4 | |
2178 | Open | 17.6.3.5 [allocator.requirements] | Allocator requirement changes not mentioned Annex C | No | 3 | |
2179 | Open | 20.8.2.5 [util.smartptr.enab] | enable_shared_from_this and construction from raw pointers | No | 3 | |
2183 | New | 28.10.1 [re.results.const] | Muddled allocator requirements for match_results constructors | No | 3 | |
2184 | New | 28.10.1 [re.results.const] | Muddled allocator requirements for match_results assignments | No | 3 | |
2189 | Open | 23.2.5.1 [unord.req.except] | Throwing swap breaks unordered containers' state | No | 3 | |
2191 | New | 28.10.1 [re.results.const] | Incorrect specification of match_results(match_results&&) | No | 4 | |
2192 | Open | 26.8 [c.math] | Validity and return type of std::abs(0u) is unclear | Yes | 2 | |
2195 | Open | 28.10 [re.results] | Missing constructors for match_results | Yes | 3 | |
2198 | Open | 23.2.5 [unord.req] | max_load_factor(z) makes no strong guarantees, but bans useful behavior | No | 3 | |
2199 | Open | 23.2.5 [unord.req] | unordered containers are required to have an initial max load factor of 1.0 | No | 3 | |
2201 | New | C.5 [diff.library] | Missing macro entries from C standard library | No | 2 | |
2202 | Deferred | 30.6.8 [futures.async] | Missing allocator support by async | No | 4 | |
2206 | Open | 23.2.3 [sequence.reqmts] | Inaccuracy in initializer_list constructor requirements | No | 3 | |
2208 | New | 24.5.1 [reverse.iterators] | std::reverse_iterator should be a literal type | No | 3 | |
2214 | Open | 27.5.5.2 [basic.ios.cons] | Clarify basic_ios::init call restrictions | Yes | 4 | |
2215 | Open | 23.2.4 [associative.reqmts] | (unordered) associative container functors should be CopyConstructible | No | 3 | |
2216 | New | 28.11.4 [re.alg.replace] | regex_replace(basic_string) allocator handling | No | 3 | |
2220 | New | 28.12.2.2 [re.tokiter.comp] | Under-specification of operator== for regex_token_iterator | No | 2 | |
2221 | New | 27.7.3 [output.streams] | No formatted output operator for nullptr | No | 3 | |
2223 | Open | 23.3.6.3 [vector.capacity] | shrink_to_fit effect on iterator validity | Yes | 2 | |
2227 | Open | 23.2.4 [associative.reqmts] | Stateful comparison objects in associative containers | Yes | 3 | |
2234 | Open | 19.3 [assertions] | assert() should allow usage in constant expressions | Yes | 2 | |
2237 | New | 21.8 [c.strings] | <cuchar> macros | No | 4 | |
2238 | Open | 21.8 [c.strings] | Problematic iterator-pair constructor of containers | No | 3 | |
2241 | Open | 18.10 [support.runtime] | <cstdalign> and #define of alignof | No | 2 | |
2242 | New | 25.3.1 [alg.copy] | [uninitialized_]copy_n() defect | No | 2 | |
2243 | New | 27.7.2.3 [istream.unformatted] | istream::putback problem | No | 3 | |
2245 | Open | 30.6.9.1 [futures.task.members] | packaged_task::reset() memory allocation | No | ||
2248 | New | 18.3.2 [limits] | numeric_limits::is_iec559 misnamed | No | 4 | |
2254 | Open | 23.2.1 [container.requirements.general] | [arrays.ts] Is dynarray an allocator-aware container? | Yes | 3 | |
2256 | New | 23.3.6.5 [vector.modifiers] | On vector iterator invalidation | No | 3 | |
2260 | Open | 17.6.3.5 [allocator.requirements] | Missing requirement for Allocator::pointer | Yes | 3 | |
2261 | New | 23.2 [container.requirements] | Are containers required to use their 'pointer' type internally? | No | 2 | |
2262 | Open | 20.8.1.2 [unique.ptr.single] | Requirement for unique_ptr<T>::get_deleter()(p) to be able to destroy the unique_ptr | Yes | 3 | |
2264 | Open | X [dynarray] | [arrays.ts] std::dynarray defines its initializer-list constructor in terms of a non-existent constructor | Yes | 1 | |
2265 | Open | 29.3 [atomics.order] | 29.3p9 appears to rule out some acceptable executions | No | ||
2267 | New | 25.4.1.4 [partial.sort.copy] | partial_sort_copy underspecified for ranges of two different types | No | 3 | |
2269 | New | 23.2.1 [container.requirements.general] | Container iterators and argument-dependent lookup | No | 4 | |
2273 | Open | 28.11.2 [re.alg.match] | regex_match ambiguity | No | 2 | |
2276 | Open | 30.6 [futures] | Missing requirement on std::promise::set_exception | Yes | ||
2277 | Open | 24.7 [iterator.range] | [arrays.ts] <dynarray> is missing in 24.7/1 | Yes | 3 | |
2286 | New | 27.8.2.4 [stringbuf.virtuals] | stringbuf::underflow() underspecified | Yes | 4 | |
2289 | Open | 20.3.2 [pairs.pair] | constexpr guarantees of defaulted functions still insufficient | Yes | 3 | |
2290 | New | 20.10 [meta] | Top-level "SFINAE"-based constraints should get a separate definition in Clause 17 | Yes | 3 | |
2292 | New | 17.5.1.4 [structure.specifications] | Find a better phrasing for "shall not participate in overload resolution" | No | 3 | |
2294 | Open | 26.8 [c.math] | <cstdlib> should declare abs(double) | Yes | 2 | |
2295 | New | 22.3.1.2 [locale.cons] | Locale name when the provided Facet is a nullptr | No | 3 | |
2296 | Review | 20.7.12.1 [specialized.addressof] | std::addressof should be constexpr | Yes | 3 | |
2303 | New | 18.6.1.3 [new.delete.placement] | Explicit instantiation of std::vector<UserType> broken? | No | 3 | |
2307 | Open | 23 [containers] | Should the Standard Library use explicit only when necessary? | No | 2 | |
2309 | Open | 30.4.1.2 [thread.mutex.requirements.mutex] | mutex::lock() should not throw device_or_resource_busy | Yes | ||
2310 | Open | 23.3.2.1 [array.overview] | Public exposition only member in std::array | No | 4 | |
2312 | Open | 20.4.2.1 [tuple.cnstr] | tuple's constructor constraints need to be phrased more precisely | Yes | 2 | |
2318 | New | 21.4 [basic.string] | basic_string's wording has confusing relics from the copy-on-write era | No | 4 | |
2321 | Open | 23.2.1 [container.requirements.general] | Moving containers should (usually) be required to preserve iterators | Yes | 2 | |
2326 | New | 26.5.1.1 [rand.req.genl] | uniform_int_distribution<unsigned char> should be permitted | Yes | 2 | |
2328 | Review | 27.7.2.6 [istream.rvalue] | Rvalue stream extraction should use perfect forwarding | Yes | 3 | |
2331 | Open | 28.5.1 [re.synopt] | regex_constants::collate's effects are inaccurately summarized | Yes | 3 | |
2335 | New | 23.3.2 [array] | array<array<int, 3>, 4> should be layout-compatible with int[4][3] | No | 3 | |
2338 | Open | 28.7 [re.traits] | [re.traits]/7 expects of locale facets something not guaranteed by [locale.facet]/4 | Yes | 3 | |
2342 | New | 27.7.3.1 [ostream] | User conversion to wchar_t const* or to wchar_t not invoked for operator<< | Yes | 4 | |
2343 | New | 28.13 [re.grammar] | Is the value of the ECMA-262 RegExp object's multiline property really false? | No | 2 | |
2348 | Open | 20.6 [template.bitset] | charT('1') is not the wide equivalent of '1' | Yes | 3 | |
2349 | Open | 27.7.2.2.1 [istream.formatted.reqmts] | Clarify input/output function rethrow behavior | Yes | 3 | |
2352 | New | 26.5.7.1 [rand.util.seedseq] | Is a default-constructed std::seed_seq intended to produce a predictable .generate()? | No | 2 | |
2358 | New | 20.10.4.3 [meta.unary.prop] | Apparently-bogus definition of is_empty type trait | No | 3 | |
2362 | New | 23.2.4 [associative.reqmts] | unique, associative emplace() should not move/copy the mapped_type constructor arguments when no insertion happens | No | 3 | |
2363 | Open | 30.4.1.5.1 [thread.sharedtimedmutex.class] | Defect in 30.4.1.4.1 [thread.sharedtimedmutex.class] | Yes | ||
2366 | New | 24.6.3 [istreambuf.iterator] | istreambuf_iterator end-of-stream equality | No | 3 | |
2368 | New | 18.6.1 [new.delete] | Replacing global operator new | No | 2 | |
2370 | Open | 20.9.12.2 [func.wrap.func] | Operations involving type-erased allocators should not be noexcept in std::function | Yes | 3 | |
2375 | New | 24.2.1 [iterator.requirements.general] | Is [iterator.requirements.general]/9 too broadly applied? | No | 3 | |
2379 | Open | 30.2.3 [thread.req.native] | Obtaining native handle of the current thread | Yes | ||
2381 | New | 22.4.2.1.2 [facet.num.get.virtuals] | Inconsistency in parsing floating point numbers | No | 3 | |
2383 | Open | 20.12.5.8 [time.duration.literals] | Overflow cannot be ill-formed for chrono::duration integer literals | No | 3 | |
2392 | New | 17.3 [defns.ntcts] | "character type" is used but not defined | No | 3 | |
2393 | Open | 20.9.12.2 [func.wrap.func] | std::function's Callable definition is broken | Yes | 2 | |
2394 | New | 22.3.1.3 [locale.members] | locale::name specification unclear — what is implementation-defined? | No | 3 | |
2398 | Open | 18.7.1 [type.info] | type_info's destructor shouldn't be required to be virtual | Yes | 2 | |
2402 | Open | 21.4.2 [string.cons] | basic_string(const basic_string& str, size_type pos, size_type n = npos) shouldn't use Allocator() | Yes | 3 | |
2413 | New | 19.3 [assertions] | assert macro is overconstrained | No | 4 | |
2414 | Open | 17.6.5.8 [reentrancy] | Member function reentrancy should be implementation-defined | Yes | 3 | |
2421 | New | 20.7.5 [ptr.align] | Non-specification of handling zero size in std::align [ptr.align] | No | 3 | |
2422 | Open | 18.3.2.4 [numeric.limits.members] | std::numeric_limits<T>::is_modulo description: "most machines" errata | Yes | 2 | |
2423 | New | 26.6.5 [template.slice.array] | Missing specification slice_array, gslice_array, mask_array, indirect_array copy constructor | Yes | 4 | |
2424 | Review | 29.5 [atomics.types.generic] | 29.5 should state that atomic types are not trivially copyable | Yes | 2 | |
2426 | Open | 29.6.5 [atomics.types.operations.req] | Issue about compare_exchange | Yes | ||
2431 | New | 28.3 [re.req] | Missing regular expression traits requirements | No | 3 | |
2432 | EWG | 18.9 [support.initlist] | initializer_list assignability | Yes | 2 | |
2441 | Open | 29.5 [atomics.types.generic] | Exact-width atomic typedefs should be provided | Yes | ||
2444 | Open | 25.4.6.4 [sort.heap] | Inconsistent complexity for std::sort_heap | Yes | 3 | |
2449 | New | 23.3.6.5 [vector.modifiers] | vector::insert invalidates end()? | No | 3 | |
2450 | Open | 20.9.6 [comparisons] | (greater|less|greater_equal|less_equal)<void> do not yield a total order for pointers | Yes | 2 | |
2452 | Core | 20.10 [meta] | is_constructible, etc. and default arguments | No | ||
2453 | New | 18.9 [support.initlist] | [iterator.range] and now [iterator.container] aren't available via <initializer_list> | No | 3 | |
2456 | Open | 20.2 [utility] | Incorrect exception specifications for 'swap' throughout library | No | 1 | |
2457 | New | 24.7 [iterator.range] | std::begin() and std::end() do not support multi-dimensional arrays correctly | No | 3 | |
2460 | New | 20.10.7.6 [meta.trans.other] | LWG issue 2408 and value categories | No | 2 | |
2461 | New | 17.6.3.5 [allocator.requirements] | Interaction between allocators and container exception safety guarantees | No | 3 | |
2465 | New | 20.10.7.6 [meta.trans.other] | SFINAE-friendly common_type is nearly impossible to specialize correctly and regresses key functionality | No | 2 | |
2468 | New | 17.6.4.9 [res.on.arguments] | Self-move-assignment of library types | No | 2 | |
2471 | New | 25.3.1 [alg.copy] | copy_n's number of InputIterator increments unspecified | No | 3 | |
2472 | New | 20.4.2.7 [tuple.rel] | Heterogeneous comparisons in the standard library can result in ambiguities | No | 3 | |
2474 | New | 26.8 [c.math] | <cmath> functions unfriendly to integral_constant arguments | Yes | 4 | |
2475 | New | 21.4.5 [string.access] | Allow overwriting of std::basic_string terminator with charT() to allow cleaner interoperation with legacy APIs | Yes | 3 | |
2478 | New | 22.3.3.2.2 [conversions.string] | Unclear how wstring_convert uses cvtstate | No | 4 | |
2479 | New | 22.3.3.2.3 [conversions.buffer] | Unclear how wbuffer_convert uses cvtstate | No | 4 | |
2480 | New | 22.3.3.2.3 [conversions.buffer] | Error handling of wbuffer_convert unclear | No | 4 | |
2481 | New | 22.3.3.2.2 [conversions.string] | wstring_convert should be more precise regarding "byte-error string" etc. | No | 4 | |
2490 | New | 28 [re] | <regex> needs lots of noexcept | No | 3 | |
2491 | New | 20.9.6 [comparisons] | std::less<T*> in constant expression | No | 3 | |
2493 | New | 18.9 [support.initlist] | initializer_list supports incomplete classes | No | 4 | |
2495 | New | 20.8.2.2.1 [util.smartptr.shared.const] | There is no such thing as an Exception Safety element | Yes | ||
2496 | New | 20.10.4.3 [meta.unary.prop] | Certain hard-to-avoid errors not in the immediate context are not allowed to be triggered by the evaluation of type traits | No | ||
2497 | New | 27.7.3.4 [ostream::sentry] | Use of uncaught_exception() | No | ||
2498 | New | 27.7.2.6 [istream.rvalue] | operator>>(basic_istream&&, T&&) returns basic_istream&, but should probably return basic_istream&& | No | ||
2499 | New | 27.7.2.2.3 [istream::extractors] | operator>>(basic_istream&, CharT*) makes it hard to avoid buffer overflows | No | ||
2500 | New | X [memory.smartptr.shared.obs] | [fund.ts.v2] fundts.memory.smartptr.shared.obs/6 should apply to cv-unqualified void | Yes | ||
2501 | New | 20.9.12.2 [func.wrap.func] | std::function requires POCMA/POCCA | No | ||
2502 | New | 20.9.12.2 [func.wrap.func] | std::function does not use allocator::construct | No | ||
2503 | New | 28.5.1 [re.synopt] | multiline option should be added to syntax_option_type | Yes |