Reference ISO/IEC IS 14882:2011(E)
This document is the Table of Contents for the Library Active Issues List, Library Defect Reports and Accepted Issues, and Library Closed Issues List.
Revised 2022-03-04 at 14:55:46 UTC
Issue | Status | Section | Title | Proposed Resolution | Priority | Duplicates |
423(i) | Open | 29 [input.output] | Effects of negative streamsize in iostreams | Yes | 3 | |
484(i) | Open | 23.3.5.3 [input.iterators] | Convertible to T | No | 2 | |
523(i) | Open | 30 [re] | regex case-insensitive character ranges are unimplementable as specified | No | 4 | |
532(i) | LEWG | 20.5.8 [tuple.rel] | Tuple comparison | Yes | 348 | |
936(i) | LEWG | 32.5.4 [thread.mutex.requirements] | Mutex type overspecified | No | 961 | |
961(i) | LEWG | 32.5.4 [thread.mutex.requirements] | Various threading bugs #11 | No | 936 | |
1102(i) | Open | 22.3.11.3 [vector.capacity] | std::vector's reallocation policy still unclear | Yes | 3 | |
1175(i) | Open | 22.2.7 [unord.req] | unordered complexity | Yes | 3 | |
1213(i) | Open | 23.3 [iterator.requirements] | Meaning of valid and singular iterator underspecified | No | 4 | |
1238(i) | Open | 25 [algorithms] | Defining algorithms taking iterator for range | No | 3 | |
1422(i) | Open | 22.3.12 [vector.bool] | vector<bool> iterators are not random access | No | 3 | |
1459(i) | LEWG | 31.4 [atomics.order] | Overlapping evaluations are allowed | No | 1458 | |
1484(i) | LEWG | 32.4.3 [thread.thread.class] | Need a way to join a thread with a timeout | No | ||
1488(i) | LEWG | 32.5 [thread.mutex] | Improve interoperability between the C++0x and C1x threads APIs | No | ||
1493(i) | LEWG | 32.5.4 [thread.mutex.requirements] | Add mutex, recursive_mutex, is_locked function | No | ||
1521(i) | Open | 22.2.1 [container.requirements.general] | Requirements on internal pointer representations in containers | Yes | 3 | |
2035(i) | Open | 23.3.5.4 [output.iterators] | Output iterator requirements are broken | Yes | 3 | |
2038(i) | Open | 23.3.5.4 [output.iterators] | Missing definition for incrementable iterator | No | 3 | |
2077(i) | Open | 20.15.5.4 [meta.unary.prop] | Further incomplete constraints for type traits | No | 3 | |
2088(i) | Open | 17.9.5 [exception.terminate] | std::terminate problem | No | 3 | |
2095(i) | LEWG | 32.9.6 [futures.promise] | promise and packaged_task missing constructors needed for uses-allocator construction | Yes | 4 | |
2114(i) | Open | 16.4.4.4 [nullablepointer.requirements] | Incorrect "contextually convertible to bool" requirements | Yes | 3 | |
2115(i) | Open | 26.7.8 [template.mask.array] | Undefined behaviour for valarray assignments with mask_array index? | No | 4 | |
2116(i) | Open | 20.15.5.4 [meta.unary.prop] | is_nothrow_constructible and destructors | No | 3 | |
2117(i) | Open | 28.4.3.3.3 [facet.num.put.virtuals] | ios_base manipulators should have showgrouping/noshowgrouping | No | 3 | |
2136(i) | Open | 16.3.2 [structure] | Postconditions vs. exceptions | No | 3 | |
2137(i) | Open | 30.7.3 [re.regex.assign] | Misleadingly constrained post-condition in the presence of exceptions | Yes | 3 | |
2146(i) | Open | 16.4.4.2 [utility.arg.requirements] | Are reference types Copy/Move-Constructible/Assignable or Destructible? | No | 3 | |
2152(i) | LEWG | 16.4.4.3 [swappable.requirements] | Instances of standard container types are not swappable | Yes | 3 | |
2153(i) | LEWG | 20.2.2 [utility.swap] | Narrowing of the non-member swap contract | No | 2 | |
2157(i) | Open | 22.3.7.5 [array.zero] | How does std::array<T,0> initialization work when T is not default-constructible? | Yes | 3 | |
2158(i) | Open | 22.3.11.3 [vector.capacity] | Conditional copy/move in std::vector | Yes | 3 | |
2173(i) | Open | 25 [algorithms] | The meaning of operator + in the description of the algorithms |
Yes | 4 | |
2189(i) | Open | 22.2.7.2 [unord.req.except] | Throwing swap breaks unordered containers' state | No | 3 | |
2195(i) | Open | 30.9 [re.results] | Missing constructors for match_results | Yes | 3 | |
2198(i) | Open | 22.2.7 [unord.req] | max_load_factor(z) makes no strong guarantees, but bans useful behavior | Yes | 3 | |
2202(i) | Deferred | 32.9.9 [futures.async] | Missing allocator support by async | No | 4 | |
2206(i) | Open | 22.2.3 [sequence.reqmts] | Inaccuracy in initializer_list constructor requirements | Yes | 3 | |
2214(i) | Open | 29.5.4.2 [basic.ios.cons] | Clarify basic_ios::init call restrictions | Yes | 4 | |
2215(i) | Open | 22.2.6 [associative.reqmts] | (unordered) associative container functors should be CopyConstructible | Yes | 3 | |
2216(i) | New | 30.10.4 [re.alg.replace] | regex_replace(basic_string) allocator handling | No | 3 | |
2220(i) | Open | 30.11.2.3 [re.tokiter.comp] | Under-specification of operator== for regex_token_iterator | Yes | 3 | |
2227(i) | Open | 22.2.6 [associative.reqmts] | Stateful comparison objects in associative containers | No | 3 | |
2236(i) | SG1 | 31.2 [atomics.syn] | kill_dependency unconditionally noexcept | No | ||
2237(i) | New | 21.5 [c.strings] | <cuchar> macros | No | 4 | |
2238(i) | Open | 21.5 [c.strings] | Problematic iterator-pair constructor of containers | No | 3 | |
2248(i) | New | 17.3.5 [numeric.limits] | numeric_limits::is_iec559 misnamed | No | 4 | |
2262(i) | Open | 20.11.1.3 [unique.ptr.single] | Requirement for unique_ptr<T>::get_deleter()(p) to be able to destroy the unique_ptr | Yes | 3 | |
2265(i) | Open | 31.4 [atomics.order] | 29.3p9 appears to rule out some acceptable executions | No | 4 | |
2267(i) | New | 25.8.2.4 [partial.sort.copy] | partial_sort_copy underspecified for ranges of two different types | No | 3 | |
2269(i) | New | 22.2.1 [container.requirements.general] | Container iterators and argument-dependent lookup | No | 4 | |
2286(i) | Open | 29.8.2.5 [stringbuf.virtuals] | stringbuf::underflow() underspecified | Yes | 4 | |
2289(i) | Open | 20.4.2 [pairs.pair] | constexpr guarantees of defaulted functions still insufficient | No | 3 | |
2290(i) | Open | 20.15 [meta] | Top-level "SFINAE"-based constraints should get a separate definition in Clause 17 | Yes | 3 | |
2295(i) | New | 28.3.1.3 [locale.cons] | Locale name when the provided Facet is a nullptr | No | 3 | |
2303(i) | New | 17.6.3.4 [new.delete.placement] | Explicit instantiation of std::vector<UserType> broken? | No | 3 | |
2307(i) | LEWG | 22 [containers] | Should the Standard Library use explicit only when necessary? | No | 2 | |
2321(i) | Open | 22.2.1 [container.requirements.general] | Moving containers should (usually) be required to preserve iterators | Yes | 3 | |
2331(i) | Open | 30.4.2 [re.synopt] | regex_constants::collate's effects are inaccurately summarized | Yes | 3 | |
2338(i) | Open | 30.6 [re.traits] | §[re.traits]/7 expects of locale facets something not guaranteed by [locale.facet]/4 | Yes | 3 | |
2342(i) | New | 29.7.5.2 [ostream] | User conversion to wchar_t const* or to wchar_t not invoked for operator<< | Yes | 4 | |
2348(i) | Open | 20.9.2 [template.bitset] | charT('1') is not the wide equivalent of '1' | Yes | 3 | |
2349(i) | Open | 29.7.4.3.1 [istream.formatted.reqmts] | Clarify input/output function rethrow behavior | Yes | 3 | |
2352(i) | New | 26.6.8.1 [rand.util.seedseq] | Is a default-constructed std::seed_seq intended to produce a predictable .generate()? | No | 2 | |
2358(i) | Open | 20.15.5.4 [meta.unary.prop] | Apparently-bogus definition of is_empty type trait | Yes | 3 | |
2362(i) | New | 22.2.6 [associative.reqmts] | unique, associative emplace() should not move/copy the mapped_type constructor arguments when no insertion happens | No | 3 | |
2366(i) | New | 23.6.4 [istreambuf.iterator] | istreambuf_iterator end-of-stream equality | No | 3 | |
2383(i) | Open | 27.5.9 [time.duration.literals] | Overflow cannot be ill-formed for chrono::duration integer literals | No | 3 | |
2392(i) | New | 3.36 [defns.ntcts] | "character type" is used but not defined | No | 3 | |
2398(i) | Open | 17.7.3 [type.info] | type_info's destructor shouldn't be required to be virtual | Yes | 3 | |
2413(i) | New | 19.3 [assertions] | assert macro is overconstrained | No | 4 | |
2414(i) | Open | 16.4.6.9 [reentrancy] | Member function reentrancy should be implementation-defined | Yes | 3 | |
2421(i) | New | 20.10.5 [ptr.align] | Non-specification of handling zero size in std::align [ptr.align] | No | 3 | |
2423(i) | New | 26.7.5 [template.slice.array] | Missing specification slice_array, gslice_array, mask_array, indirect_array copy constructor | Yes | 4 | |
2431(i) | New | 30.2 [re.req] | Missing regular expression traits requirements | No | 3 | |
2432(i) | EWG | 17.10 [support.initlist] | initializer_list assignability | Yes | 2 | |
2452(i) | Core | 20.15 [meta] | is_constructible, etc. and default arguments | No | 3 | |
2453(i) | New | 17.10 [support.initlist] | §[iterator.range] and now [iterator.container] aren't available via <initializer_list> | No | 3 | |
2457(i) | New | 23.7 [iterator.range] | std::begin() and std::end() do not support multi-dimensional arrays correctly | No | 3 | |
2461(i) | New | 16.4.4.6 [allocator.requirements] | Interaction between allocators and container exception safety guarantees | No | 3 | |
2471(i) | Open | 25.7.1 [alg.copy] | copy_n's number of InputIterator increments unspecified | No | 3 | |
2472(i) | New | 20.5.8 [tuple.rel] | Heterogeneous comparisons in the standard library can result in ambiguities | No | 3 | |
2478(i) | New | D.23.2 [depr.conversions.string] | Unclear how wstring_convert uses cvtstate | No | 4 | |
2479(i) | New | D.23.3 [depr.conversions.buffer] | Unclear how wbuffer_convert uses cvtstate | No | 4 | |
2480(i) | New | D.23.3 [depr.conversions.buffer] | Error handling of wbuffer_convert unclear | No | 4 | |
2481(i) | New | D.23.2 [depr.conversions.string] | wstring_convert should be more precise regarding "byte-error string" etc. | No | 4 | |
2490(i) | New | 30 [re] | <regex> needs lots of noexcept | No | 3 | |
2491(i) | New | 20.14.8 [comparisons] | std::less<T*> in constant expression | Yes | 3 | |
2493(i) | New | 17.10 [support.initlist] | initializer_list supports incomplete classes | No | 4 | |
2496(i) | New | 20.15.5.4 [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 | 3 | |
2497(i) | New | 29.7.5.2.4 [ostream.sentry] | Use of uncaught_exception() | Yes | 3 | |
2504(i) | New | 29.6.3 [streambuf] | basic_streambuf is not an abstract class | No | 3 | |
2506(i) | SG1 | 6.9.2 [intro.multithread] | Underspecification of atomics | No | 3 | |
2507(i) | New | D.22 [depr.locale.stdcvt] | codecvt_mode should be a bitmask type | No | 3 | |
2508(i) | New | 17.6.3.5 [new.delete.dataraces] | §[new.delete.dataraces] wording needs to be updated | No | 3 | |
2512(i) | Open | 28.4.6.2.3 [locale.time.get.virtuals] | Y2K bites; what is an "unambiguous year identifier"? | No | 4 | |
2513(i) | New | 21.1 [strings.general] | Missing requirements for basic_string::value_type | No | 4 | |
2524(i) | Open | 26.6.9.4.2 [rand.dist.pois.exp] | generate_canonical can occasionally return 1.0 | No | 2 | |
2528(i) | New | 20.5.3.1 [tuple.cnstr] | Order of std::tuple construction unspecified | No | 3 | |
2530(i) | Open | 32.9.5 [futures.state] | Clarify observable side effects of releasing a shared state | No | 3 | |
2532(i) | Open | 32.9.6 [futures.promise] | Satisfying a promise at thread exit | Yes | 3 | |
2533(i) | SG1 | 99 [concurr.ts::futures.unique.future] | [concurr.ts] Constrain threads where future::then can run a continuation | No | ||
2546(i) | New | 30.12 [re.grammar] | Implementability of locale-sensitive UnicodeEscapeSequence matching | No | 4 | |
2547(i) | New | 20.14.8 [comparisons] | Container requirements (and other library text) should say "strict total order", not just "total order" | No | 3 | |
2561(i) | New | 5.3.4 [fund.ts.v2::optional.object.swap] | [fund.ts.v2] Incorrect exception specifications for 'swap' in C++ Extensions for Library Fundamentals | No | 3 | |
2564(i) | New | 4.2 [fund.ts.v2::func.wrap.func] | [fund.ts.v2] std::experimental::function constructors taking allocator arguments may throw exceptions | Yes | 3 | |
2592(i) | New | 27.2 [time.syn] | Require that chrono::duration_casts from smaller durations to larger durations do not overflow | Yes | 4 | |
2594(i) | New | 20.11.3 [util.smartptr.shared] | Contradicting definition of empty shared_ptr on shared_ptr(nullptr, d) | Yes | 3 | |
2595(i) | New | 23.5.1.2 [reverse.iterator] | reverse_iterator::operator[]'s return type revisited | Yes | 3 | |
2599(i) | New | 20.2.6 [declval] | Library incomplete type permission phrase is unclear | No | 3 | |
2675(i) | New | 29.5.2.7 [ios.base.callback] | register_callback can fail | No | 3 | |
2691(i) | New | 28.4.7.4 [locale.moneypunct] | money_base::space and do_put: U+0020 versus fill | Yes | 3 | |
2695(i) | New | 16.4.6.5 [member.functions] | "As if" unclear in [member.functions] | No | 3 | |
2702(i) | New | 28.4.3.3.3 [facet.num.put.virtuals] | num_put::do_put(..., bool) performs ill-formed do_put call | No | 3 | |
2703(i) | New | 28.4.3.3.3 [facet.num.put.virtuals] | No provision for fill-padding when boolalpha is set | No | 3 | |
2705(i) | New | 22.2.3 [sequence.reqmts] | Questionable precondition on Sequence containers a.assign(n, t) | Yes | 3 | |
2708(i) | Open | 29.12.12.2 [fs.rec.dir.itr.members] | recursive_directory_iterator::recursion_pending() is incorrectly specified | Yes | 2 | |
2713(i) | New | 22.5 [unord] | More missing allocator-extended constructors for unordered containers | Yes | 3 | |
2714(i) | New | 26.4.7 [complex.ops] | complex stream extraction underspecified | Yes | 3 | |
2730(i) | Open | 17.3.5 [numeric.limits] | numeric_limits primary template definition | No | 3 | |
2737(i) | New | 17.6.3.2 [new.delete.single] | Consider relaxing object size restrictions for single-object allocation functions | No | 3 | |
2746(i) | New | 20.6.3.4 [optional.assign] | Inconsistency between requirements for emplace between optional and variant | Yes | 3 | |
2751(i) | New | 20.11.3.3 [util.smartptr.shared.dest] | shared_ptr deleter not specified to observe expired weak_ptr instances | No | 4 | |
2766(i) | New | 20.4.3 [pairs.spec] | Swapping non-swappable types | Yes | 3 | |
2811(i) | New | 20.6.3.2 [optional.ctor] | "Selected constructor" wording is incorrect for optional/variant/any | Yes | 3 | |
2813(i) | EWG | 20.14.17.3.2 [func.wrap.func.con] | std::function should not return dangling references | Yes | 2 | |
2815(i) | New | 17.5 [support.start.term] | quick_exit can deadlock | Yes | 3 | |
2819(i) | New | 32.2.5 [thread.req.lockable] | Unspecified Return type: elements | Yes | 3 | |
2823(i) | Open | 22.3.7.1 [array.overview] | std::array initialization is still not permissive enough | Yes | 3 | |
2827(i) | New | 20.15.5.4 [meta.unary.prop] | is_trivially_constructible and non-trivial destructors | No | 3 | |
2829(i) | Open | 20.6.3.6 [optional.observe] | LWG 2740 leaves behind vacuous words | No | 2 | |
2833(i) | Open | 20.7.3.2 [variant.ctor] | Library needs to specify what it means when it declares a function constexpr | Yes | 2 | |
2844(i) | Open | 22.2.6 [associative.reqmts] | Stability of a_uniq.insert(i, j) | No | 3 | |
2845(i) | New | 20.15.2 [meta.rqmts] | enable_if, result_of, common_type and aligned_storage do not meet the definition of TransformationTrait | No | 3 | |
2846(i) | New | 26.4.10 [cmplx.over] | Undefined phrase "effectively cast" | Yes | 3 | |
2847(i) | New | 26.8.1 [cmath.syn] | sin(float) should call sinf(float) | No | 3 | |
2848(i) | New | 20.12.5.2 [mem.res.pool.options] | Pass-through threshold for pool allocator | No | 3 | |
2858(i) | New | 23.5.1 [reverse.iterators] | LWG 2472: actually an incompatibility with C++03 | Yes | 4 | |
2881(i) | New | 20.7.3 [variant.variant] | Adopt section III of P0308R0 | No | 3 | |
2883(i) | LEWG | 21.4 [string.view] | The standard library should provide string_view parameters instead or in addition for functions defined with char const * or string const & as parameter types. | No | ||
2884(i) | LEWG | 22 [containers] | Relational operators for containers should sfinae; if the underlying type is not comparable, neither should the container be | No | ||
2885(i) | LEWG | 22 [containers] | The relational operators of optional and variant completely reflect the semantics of the element types — this is inconsistent with other types in the library | No | ||
2906(i) | New | 20.11.3.2 [util.smartptr.shared.const] | There is no ability to supply an allocator for the control block when constructing a shared_ptr from a unique_ptr | No | 3 | |
2922(i) | LEWG | 20.15.3 [meta.type.synop] | The *_constant<> templates do not make use of template<auto> | No | ||
2923(i) | New | 26.8.1 [cmath.syn] | noexcept is inconsistently applied across headers which import components of the C standard library | No | 4 | |
2931(i) | Open | 23.4.3 [iterator.operations] | Missed optimization opportunity with single-argument std::next | No | 3 | |
2933(i) | New | 20.5.4 [tuple.creation] | PR for LWG 2773 could be clearer | Yes | 3 | |
2939(i) | New | 20.15.3 [meta.type.synop] | Some type-completeness constraints of traits are overspecified | No | 2 | |
2947(i) | New | 29.12.8.1 [fs.enum.path.format] | Clarify several filesystem terms | No | 3 | |
2949(i) | New | 16 [library] | Unclear complexity requirements: space vs. time | No | 4 | |
2959(i) | New | 21.2.4.4 [char.traits.specializations.char16.t] | char_traits<char16_t>::eof is a valid UTF-16 code unit | No | 3 | |
2962(i) | Open | 23.3.5.3 [input.iterators] | Iterators of Containers of move-only types do not model InputIterator | Yes | 2 | |
2963(i) | New | 25 [algorithms] | Algorithms with underspecified iterator requirements | No | 3 | |
2973(i) | LEWG | 25.8.6 [alg.merge] | inplace_merge exact comparison count complexity prohibits useful real-world optimizations | Yes | ||
2983(i) | New | 28.4.7.3.2 [locale.money.put.virtuals] | money_put::do_put underspecified | Yes | 3 | |
2984(i) | New | 29.7.7 [ext.manip] | put_money(99) is unnecessarily undefined | Yes | 3 | |
2985(i) | LEWG | 25.7.10 [alg.reverse] | std::reverse should be permitted to be vectorized | Yes | ||
2986(i) | New | 30.12 [re.grammar] | Handling of multi-character collating elements by the regex FSM is underspecified | No | 4 | |
2987(i) | New | 30.12 [re.grammar] | Relationship between traits_inst.lookup_collatename and the regex FSM is underspecified with regards to ClassAtomCollatingElement | No | 3 | |
2990(i) | Open | 20.6.3 [optional.optional] | optional::value_type is not always a value type | Yes | 3 | |
2991(i) | LEWG | 20.7.3.2 [variant.ctor] | variant copy constructor missing noexcept(see below) | Yes | ||
2994(i) | Open | 21.2 [char.traits] | Needless UB for basic_string and basic_string_view | Yes | 3 | |
3003(i) | Open | 32.9.6 [futures.promise] | <future> still has type-erased allocators in promise | Yes | 2 | |
3011(i) | Open | 19.3 [assertions] | Requirements for assert(E) inconsistent with C | No | 2 | |
3019(i) | New | 19.5.3.4 [syserr.errcat.derived] | Presentation of "program defined classes derived from error_category" [syserr.errcat.derived] unclear and contains mistakes | No | 3 | |
3021(i) | New | 16.2.2 [networking.ts::buffer.reqmts.constbuffersequence] | [networking.ts] Relax pointer equivalence requirement for ConstBufferSequence | Yes | 3 | |
3027(i) | New | 16.2.4 [networking.ts::buffer.reqmts.dynamicbuffer] | [networking.ts] DynamicBuffer prepare exception specification | Yes | 3 | |
3028(i) | New | 22.2.1 [container.requirements.general] | Container requirements tables should distinguish const and non-const variables | Yes | 3 | |
3029(i) | Open | 25.8.8.3 [pop.heap] | pop_heap over-constrains input | Yes | 3 | |
3032(i) | New | 25.8.8 [alg.heap.operations] | ValueSwappable requirement missing for push_heap and make_heap | Yes | 3 | |
3044(i) | New | 16.4.4.6 [allocator.requirements] | Strange specification of max_size() for an allocator | Yes | 3 | |
3046(i) | New | 20.14.6 [refwrap] | Do not require reference_wrapper to support non-referenceable function types | Yes | 3 | |
3047(i) | New | 31.8.3 [atomics.types.int] | atomic compound assignment operators can cause undefined behavior when corresponding fetch_meow members don't | Yes | 3 | |
3049(i) | Open | 25.2 [algorithms.requirements] | Missing wording allowing algorithms to use copies of function objects as substitutes for their parameters | Yes | 3 | |
3053(i) | New | 19.5.4.1 [syserr.errcode.overview] | Prohibit error_code construction from rvalues of error_category | Yes | 3 | |
3056(i) | New | 29.12.13.5 [fs.op.copy.file] | copy_file() copies which attributes? | Yes | 3 | |
3057(i) | Open | 29.12.13.4 [fs.op.copy] | Correct copy_options handling | Yes | 2 | |
3059(i) | New | 22.2 [container.requirements] | Wrong requirements for map-like associative container assignment? | No | 3 | |
3060(i) | New | 25.10.8 [exclusive.scan] | XXX_scan algorithms are specified to work with move-only T, but are specified to make N copies of T into the destination range | No | 2 | |
3063(i) | New | 25.11 [specialized.algorithms] | Parallel algorithms in <memory> are underspecified | No | 3 | |
3064(i) | New | 25.11 [specialized.algorithms] | How do uninitialized memory algorithms obtain pointer without undefined behavior? | No | 3 | |
3066(i) | New | 26.8.6 [sf.cmath] | "report a domain error" in [sf.cmath]/1 is underspecified | No | 3 | |
3068(i) | Open | 21.4.3 [string.view.template] | Forbid assigning an rvalue basic_string to basic_string_view | Yes | 2 | |
3069(i) | New | 20.7.3.4 [variant.assign] | Move assigning variant's subobject corrupts data | Yes | 3 | |
3072(i) | New | 16.2.4 [networking.ts::buffer.reqmts.dynamicbuffer] | [networking.ts] DynamicBuffer object lifetimes underspecified | Yes | 3 | |
3073(i) | New | 17 [networking.ts::buffer.stream] | [networking.ts] (async_)read and (async_)write don't support DynamicBuffer lvalues | Yes | 3 | |
3078(i) | New | 29.12.10 [fs.class.directory.entry] | directory_entry, directory_iterator and recursive_directory_iterator perform needless path copies | No | 3 | |
3081(i) | Open | 20.19.3 [charconv.from.chars] | Floating point from_chars API does not distinguish between overflow and underflow | Yes | 2 | |
3082(i) | Open | 20.19.3 [charconv.from.chars] | from_chars specification regarding floating point rounding is inconsistent | Yes | 2 | |
3084(i) | New | 17.5 [support.start.term] | Termination in C++ is unclear | No | 3 | |
3085(i) | Open | 21.2.2 [char.traits.require] | char_traits::copy precondition too weak | Yes | 2 | |
3086(i) | New | 17.6.3.2 [new.delete.single] | Possible problem in §[new.delete.single] | Yes | 3 | |
3089(i) | New | 25.7.1 [alg.copy] | copy_n should require non-overlapping ranges | Yes | 3 | |
3090(i) | New | 27.5.2 [time.duration.cons] | What is §[time.duration.cons]p4's "no overflow is induced in the conversion" intended to mean? | Yes | 3 | |
3092(i) | Open | 16.3.3.3.4 [bitmask.types] | Unclear semantics of enum class bitmask types | Yes | 3 | |
3093(i) | New | 26.8.2 [c.math.abs] | LWG 2294/2192 missed a std::abs overload | No | 3 | |
3095(i) | New | D.12.2.4 [depr.strstreambuf.virtuals] | strstreambuf refers to nonexistent member of fpos, fpos::offset | Yes | 4 | |
3097(i) | New | 29.8.2.5 [stringbuf.virtuals] | basic_stringbuf seekoff effects trigger undefined behavior and have contradictory returns | No | 3 | |
3098(i) | New | 29.12.6.5.9 [fs.path.decompose] | Misleading example for filesystem::path::filename() | Yes | 3 | |
3099(i) | New | 20.15.3 [meta.type.synop] | is_assignable<Incomplete&, Incomplete&> | Yes | 2 | |
3105(i) | New | 16 [library] | T1 is convertible to T2 | No | 3 | |
3107(i) | New | 23.6.4 [istreambuf.iterator] | istreambuf_iterator has public exposition-only member | Yes | 4 | |
3108(i) | New | 23.6.4.2 [istreambuf.iterator.proxy] | istreambuf_iterator::proxy::operator* should be const | Yes | 3 | |
3109(i) | New | D.12.2 [depr.strstreambuf] | strstreambuf is copyable | No | 4 | |
3114(i) | LEWG | 16 [networking.ts::buffer] | [networking.ts] Permit efficient composition when using DynamicBuffer | Yes | ||
3118(i) | New | 29.5.3.2 [fpos.operations] | fpos equality comparison unspecified | No | 4 | |
3124(i) | New | 13.7.5 [networking.ts::async.exec.ctx.globals] | [networking.ts] Unclear how execution_context is intended to store services | Yes | 3 | |
3126(i) | New | 30.8 [re.submatch] | There's no std::sub_match::compare(string_view) overload | Yes | 3 | |
3136(i) | New | 3.2.2.2.1 [fund.ts.v3::propagate_const.class_type_requirements] | [fund.ts.v3] LFTSv3 awkward wording in propagate_const requirements | Yes | 3 | |
3142(i) | New | 16.4.5.8 [res.on.functions] | std::foo<incomplete> should be ill-formed NDR | Yes | 3 | |
3157(i) | New | 16.4.4.6 [allocator.requirements] | Allocator destroy and fancy pointer operations must be non-throwing | Yes | 3 | |
3159(i) | New | 20.11.1.3 [unique.ptr.single] | §[unique.ptr.single] requirements on deleter may be too strict | No | 3 | |
3161(i) | Open | 22.6.6 [stack] | Container adapters mandate use of emplace_back but don't require it | Yes | 3 | |
3162(i) | New | 19.5.8.2 [syserr.syserr.members] | system_error::system_error(error_code ec) not explicit | Yes | 3 | |
3166(i) | New | 20.4.4 [pair.astuple] | No such descriptive element as Value: | No | 3 | |
3167(i) | New | 5.2 [fund.ts.v3::memory.observer.ptr] | [fund.ts.v3] Does observer_ptr support function types? | No | 3 | |
3172(i) | New | 26.8.3 [c.math.hypot3] | 3-arg std::hypot is underspecified compared to the 2-arg overload | Yes | 3 | |
3174(i) | New | 20.15.7 [meta.rel] | Precondition on is_convertible is too strong | Yes | 3 | |
3177(i) | New | 16.4.5.2.1 [namespace.std] | Limit permission to specialize variable templates to program-defined types | Yes | 3 | |
3188(i) | New | 23.6.4 [istreambuf.iterator] | istreambuf_iterator::pointer should not be unspecified | Yes | 3 | |
3189(i) | New | 22.6.5 [priority.queue] | Missing requirement for std::priority_queue | No | 3 | |
3192(i) | New | 20.10.7.2 [allocator.uses.construction] | §[allocator.uses.construction] functions misbehave for const types | Yes | 3 | |
3193(i) | New | 16.3.2.4 [structure.specifications] | Mandates: and Expects: elements are not defined for types | Yes | 3 | |
3197(i) | New | 23.4.3 [iterator.operations] | std::prev should not require BidirectionalIterator | Yes | 3 | |
3203(i) | New | 22.7.3.1 [span.overview] | span element access invalidation | Yes | 2 | |
3204(i) | New | 30.8 [re.submatch] | sub_match::swap only swaps the base class | Yes | 3 | |
3205(i) | New | 20.15.8.7 [meta.trans.other] | decay_t in the new common_type fallback should be remove_cvref_t | Yes | 3 | |
3210(i) | New | 20.11.3.7 [util.smartptr.shared.create] | allocate_shared is inconsistent about removing const from the pointer passed to allocator construct and destroy | Yes | 3 | |
3214(i) | New | 28.4.3.2.3 [facet.num.get.virtuals] | §[facet.num.get.virtuals] doesn't say what it means for digit grouping to be consistent | No | 4 | |
3215(i) | New | 20.7.3.2 [variant.ctor] | variant default constructor has vague constexpr requirements | No | 2 | |
3216(i) | New | 20.11.3.7 [util.smartptr.shared.create] | Rebinding the allocator before calling construct/destroy in allocate_shared | Yes | 3 | |
3217(i) | New | 17.3.1 [support.limits.general] | <memory> and <execution> should define __cpp_lib_parallel_algorithm | Yes | 3 | |
3219(i) | New | 22.3.7.1 [array.overview] | std::array overview container requirements are incorrect | Yes | 3 | |
3220(i) | New | 31.2 [atomics.syn] | P0558 broke conforming C++14 uses of atomic shared_ptr | Yes | 3 | |
3223(i) | New | 26.8.1 [cmath.syn] | lerp should not add the "sufficient additional overloads" | No | 2 | |
3227(i) | New | 22.2.6 [associative.reqmts] | Ambiguity issue for extract in ordered and unordered associative containers | Yes | 3 | |
3229(i) | New | 16.4.6.13 [res.on.exception.handling] | §[res.on.exception.handling]#3 cannot apply to types with implicitly declared destructors | Yes | 3 | |
3234(i) | New | 26.8.1 [cmath.syn] | Sufficient Additional Special Math Overloads | No | 3 | |
3240(i) | New | 16.4.3.2 [using.headers] | Headers declare more than entities | No | 3 | |
3261(i) | New | 30.7 [re.regex] | regex components' noexcept annotations appear broken for POCMA or throwing BidirectionalIterator | No | 3 | |
3263(i) | New | 31.6 [atomics.wait] | Atomic waiting function calls should only be unblocked once | Yes | 3 | |
3267(i) | New | 16.4.4.6 [allocator.requirements] | Rebound allocators and is_always_equal | Yes | 4 | |
3268(i) | New | 31.4 [atomics.order] | memory_order::memory_order_foo broken in C++20 | Yes | 4 | |
3275(i) | New | 28.4.6.2.3 [locale.time.get.virtuals] | Why does time_get::do_get require a valid pointer when none of the others do? | Yes | 3 | |
3287(i) | New | 23.3.2.3 [iterator.traits] | Exposition-only cpp17-input-iterator concept is needlessly complex | Yes | 3 | |
3288(i) | New | 31.6 [atomics.wait] | atomic<T>::notify_one is unimplementable | Yes | 2 | |
3297(i) | New | 22.2.3 [sequence.reqmts] | Useless sequence container requirement | Yes | 3 | |
3305(i) | Open | 20.8.5 [any.nonmembers] | any_cast<void> | Yes | 2 | |
3308(i) | New | 22.3.8.4 [deque.modifiers] | vector and deque iterator erase invalidates elements even when no change occurs | Yes | 3 | |
3309(i) | New | 29.8 [string.streams] | Is <ios> implicitly #included by <sstream>, <fstream> etc.? | No | 3 | |
3337(i) | New | 28.4.2.5.3 [locale.codecvt.virtuals] | What is "is initialized" supposed to mean? | No | 3 | |
3339(i) | New | 21.3.3 [basic.string] | Move-constructed empty-container capacity | No | 3 | |
3341(i) | New | 30.7.2 [re.regex.construct] | basic_regex range constructor: Missing requirements for iterator types | No | 3 | |
3342(i) | New | 20.4.2 [pairs.pair] | Library wording uses "initializes x with y", which is underspecified | No | 3 | |
3343(i) | New | 32.6.3 [thread.condition.nonmember] | Ordering of calls to unlock() and notify_all() in Effects element of notify_all_at_thread_exit() should be reversed | Yes | 3 | |
3344(i) | New | 23.4.3 [iterator.operations] | advance(i, most-negative) and prev(i, most-negative) | Yes | 3 | |
3353(i) | New | 28.3.1 [locale] | locale's copy assignment operator should return locale& | Yes | 3 | |
3357(i) | Open | 99 [fund.ts.v3::rand.util.randint] | [fund.ts.v3] default_random_engine is overspecified for per-thread engine | Yes | 3 | |
3370(i) | New | 17.4.2 [cstdint.syn] | §[cstdint.syn]p2 and §[headers]p5 are not sufficiently clear | No | 3 | |
3378(i) | New | 20.5.2 [tuple.syn] | tuple_size_v/tuple_element_t should be available when tuple_size/tuple_element are | Yes | 3 | |
3400(i) | New | 20.15.7 [meta.rel] | Does is_nothrow_convertible consider destruction of the destination type? | No | 3 | |
3401(i) | New | 16.3.2.4 [structure.specifications] | Is "as if by" equivalent to "equivalent to"? | No | 3 | |
3402(i) | New | 26.6.9.3.4 [rand.dist.bern.negbin] | Wording for negative_binomial_distribution is unclear as a consequence of LWG 2406 resolution | No | 3 | |
3409(i) | New | 31.7.2 [atomics.ref.ops] | Too lax description of atomic_ref<T>::required_alignment | Yes | 3 | |
3411(i) | New | 5.4 [fund.ts.v3::memory.resource.syn] | [fund.ts.v3] Contradictory namespace rules in the Library Fundamentals TS | Yes | 3 | |
3412(i) | New | 20.20.2.2 [format.string.std] | §[format.string.std] references to "Unicode encoding" unclear | No | 3 | |
3416(i) | New | 20.8.4 [any.class] | The Throws: specification of std::any does not mention allocation | No | 3 | |
3417(i) | SG1 | 31.8.2 [atomics.types.operations] | Missing volatile atomic deprecations | Yes | 3 | |
3418(i) | New | 31.9 [atomics.nonmembers] | Deprecated free functions in <atomic> | Yes | 3 | |
3423(i) | New | 20.8.5 [any.nonmembers] | std::any_cast should never return a cv-qualified type | Yes | 3 | |
3424(i) | New | 20.6.3.6 [optional.observe] | optional::value_or should never return a cv-qualified type | Yes | 3 | |
3429(i) | New | 16.4.5.11 [res.on.requirements] | "models" should subsume like "satisfies" | Yes | 3 | |
3431(i) | New | 22.2.1 [container.requirements.general] | <=> for containers should require three_way_comparable<T> instead of <=> | Yes | 2 | |
3436(i) | New | 25.11.8 [specialized.construct] | std::construct_at should support arrays | Yes | 2 | |
3438(i) | New | 22.2.4.1 [container.node.overview] | §[container.node.overview] missing multiset/map cases | No | 3 | |
3439(i) | New | 23.4.3 [iterator.operations] | "Distance" template parameter is underspecified | No | 3 | |
3441(i) | Open | 16.4.5.2.1 [namespace.std] | Misleading note about calls to customization points | Yes | 1 | |
3442(i) | Open | 16.4.5.2.1 [namespace.std] | Unsatisfiable suggested implementation of customization points | Yes | 1 | |
3444(i) | New | 19.1.2 [networking.ts::socket.streambuf.members] | [networking.ts] net::basic_socket_streambuf::connect(Args&&...) effects are wrong | No | 2 | |
3445(i) | LEWG | 19.2.1 [networking.ts::socket.iostream.cons] | [networking.ts] net::basic_socket_istream::connect should be constrained | Yes | 3 | |
3451(i) | New | 21.3.3 [basic.string] | Inconsistently explicit deduction guides | Yes | 3 | |
3454(i) | LEWG | 20.10.3 [pointer.traits] | pointer_traits::pointer_to should be constexpr | Yes | ||
3456(i) | New | 20.19.3 [charconv.from.chars] | Pattern used by std::from_chars is underspecified | Yes | 3 | |
3457(i) | New | 21.4.3 [string.view.template] | *this is not invalidated | Yes | 3 | |
3459(i) | New | 18.4.4 [concept.convertible] | Why doesn't std::convertible_to have semantic requirement when To is reference-to-function type? | No | 3 | |
3463(i) | New | 25.10.11 [transform.inclusive.scan] | Incorrect requirements for transform_inclusive_scan without initial value | Yes | 3 | |
3475(i) | New | 32.4.3.3 [thread.thread.constr] | std::thread's constructor needs to be able to report general memory allocation failures | Yes | 3 | |
3484(i) | New | 99 [depr.c.headers.other] | Should <stddef.h> declare ::nullptr_t? | Yes | 3 | |
3485(i) | SG1 | 31.7 [atomics.ref.generic] | atomic_ref safety should be based on operations that "potentially conflict" rather than lifetime | No | 3 | |
3486(i) | LEWG | 20.15.5.4 [meta.unary.prop] | is_constructible<T[], T...> may be misleading in C++20 | No | ||
3487(i) | New | 25.10 [numeric.ops] | Missing precondition on input and output aliasing of [numeric.ops] | No | 3 | |
3488(i) | Open | 22.3.7.4 [array.special] | Is array<const int, 0> swappable or not? | Yes | 3 | |
3489(i) | New | 24.6.5.3 [range.istream.iterator] | Improve istream_view wording | Yes | 3 | |
3491(i) | New | 17.11.6 [cmp.alg] | What is a "decayed type"? | No | 3 | |
3493(i) | New | 20.14.17.3.2 [func.wrap.func.con] | The constructor of std::function taking an F is missing a constraint | Yes | 3 | |
3496(i) | New | 29.11.2.4 [syncstream.syncbuf.members] | What does "uniquely associated" mean for basic_syncbuf::emit()? | No | 3 | |
3497(i) | New | 29.11.2.4 [syncstream.syncbuf.members] | Postconditions for basic_syncbuf::emit() | No | 3 | |
3499(i) | New | 32.2.5.4 [thread.req.lockable.timed] | Timed lockable and mutex requirements are imprecise about duration and time_point | No | 3 | |
3501(i) | New | 29.7.5.5 [ostream.manip] | basic_syncbuf-related manipulators refer to some Allocator without defining it | Yes | 3 | |
3503(i) | New | 27.5.8 [time.duration.cast] | chrono::ceil has surprising requirement | No | 3 | |
3504(i) | New | 32.6.4 [thread.condition.condvar] | condition_variable::wait_for is overspecified | No | 3 | |
3507(i) | New | 20.21.3.4 [stacktrace.entry.query] | P0881R7 ("stacktrace") does not define "actual file name", "actual line number" | No | 2 | |
3508(i) | New | 31.7.1 [atomics.ref.generic.general] | atomic_ref<cv T> is not well-specified | No | 2 | |
3511(i) | New | 16.4.5.9 [res.on.arguments] | Clarify global permission to move | Yes | 3 | |
3512(i) | New | 20.14.19 [unord.hash] | Incorrect exception safety guarantee for unordered containers | No | 3 | |
3513(i) | New | 3.43 [defns.prog.def.type] | Fix definition of program-defined based on its uses | Yes | 3 | |
3515(i) | LEWG | 20.21.2 [stacktrace.syn] | §[stacktrace.basic.nonmem]: operator<< should be less templatized | Yes | 2 | |
3516(i) | New | 32.4.3.2 [thread.thread.id] | thread::id spaceship may be inconsistent with equality | Yes | 3 | |
3531(i) | New | 22.4.4.1 [map.overview] | LWG 3025 broke previous valid code | Yes | 3 | |
3534(i) | LEWG | 25.8.7.4 [set.intersection] | ranges::set_intersection and ranges::set_difference algorithm requirements are too strict | Yes | 3 | |
3537(i) | New | 23.7 [iterator.range] | §[iterator.range] Missing noexcept for std::rbegin/rend for arrays and initializer_list | No | 3 | |
3538(i) | New | 16.2 [library.c] | §[library.c] C library functions are not addressable | No | 2 | |
3545(i) | Open | 20.10.3 [pointer.traits] | std::pointer_traits should be SFINAE-friendly | Yes | 2 | |
3550(i) | New | 16.4.5.3 [reserved.names] | Names reserved by C for standard library not reserved by C++ | No | 3 | |
3556(i) | New | 16.3.2.3 [structure.requirements] | Specification of when semantic constraints are imposed by use of concepts is unclear | No | 3 | |
3564(i) | SG9 | 24.7.7.3 [range.transform.iterator] | transform_view::iterator<true>::value_type and iterator_category should use const F& | Yes | 2 | |
3565(i) | SG16 | 27.12 [time.format] | Handling of encodings in localized formatting of chrono types is underspecified | Yes | 2 | |
3569(i) | New | 24.7.12.3 [range.join.iterator] | join_view fails to support ranges of ranges with non-default_initializable iterators | Yes | 3 | |
3576(i) | SG16 | 20.20.2.2 [format.string.std] | Clarifying fill character in std::format | Yes | 2 | |
3577(i) | New | 22.2.6.1 [associative.reqmts.general] | Merging an (unordered) associative container with itself | No | 3 | |
3578(i) | New | 22.2.6.1 [associative.reqmts.general] | Iterator SCARYness in the context of associative container merging | No | 3 | |
3582(i) | New | 32.9.9 [futures.async] | Unclear where std::async exceptions are handled | Yes | 3 | |
3583(i) | New | 20.5.3.1 [tuple.cnstr] | Clarify if/when short circuiting applies to conditions in Constraints: elements | No | 3 | |
3584(i) | New | 17.11.3 [cmp.common] | Clarify common comparison category conversions | Yes | 3 | |
3586(i) | New | 20.20.2.2 [format.string.std] | Formatting character alignment inconsistencies | Yes | 2 | |
3587(i) | New | 17.11.4 [cmp.concept] | std::three_way_comparable_with<T, U, void> can be satisfied but can't be modeled | No | 3 | |
3594(i) | New | 20.11.10 [inout.ptr.t] | inout_ptr — inconsistent release() in destructor | Yes | 1 | |
3597(i) | New | 24.6.4.2 [range.iota.view] | Unsigned integer types don't model advanceable | No | 3 | |
3599(i) | New | 24.7.13.2 [range.lazy.split.view] | The const overload of lazy_split_view::begin should be constrained by const Pattern | Yes | 3 | |
3600(i) | New | 23.6.2.2 [istream.iterator.cons] | Making istream_iterator copy constructor trivial is an ABI break | Yes | 3 | |
3602(i) | New | 23.5.1.4 [reverse.iter.cons] | reverse_iterator's converting assignment is overconstrained | Yes | 3 | |
3603(i) | New | 30.7.2 [re.regex.construct] | Matching of null characters by regular expressions is underspecified | No | 3 | |
3604(i) | New | 30.7.2 [re.regex.construct] | What is the effect of an invalid value of type syntax_option_type? | No | 3 | |
3605(i) | New | 30.4.3 [re.matchflag] | regex_constants::match_prev_avail is underspecified | No | 3 | |
3606(i) | New | 30.2 [re.req] | Missing regex_traits::locale_type requirements | No | 3 | |
3608(i) | New | 18.4.4 [concept.convertible] | convertible_to and temporary-bound references | No | 3 | |
3609(i) | New | 24.6.4.4 [range.iota.sentinel] | std::ranges::iota_view<int, long> has non-subtractable iterator and sentinel types | Yes | 3 | |
3611(i) | SG1 | 31.8.2 [atomics.types.operations] | Should compare_exchange be allowed to modify the expected value on success? | No | 2 | |
3613(i) | New | 20.6.4 [optional.nullopt] | Specify that nullopt_t is copyable | Yes | 3 | |
3614(i) | New | 24.6.4.2 [range.iota.view] | iota_view::size and the most negative signed integer values | Yes | 3 | |
3615(i) | New | 23.3.2.1 [incrementable.traits] | The last specialization of incrementable_traits has wrong operand types | Yes | 3 | |
3617(i) | New | 20.14.17.3.2 [func.wrap.func.con] | function/packaged_task deduction guides and deducing this | Yes | 2 | |
3620(i) | New | 16.3.3.3.5.1 [character.seq.general] | What are execution character sets and execution wide-character sets (after P2314R4)? | No | 3 | |
3622(i) | New | 22.2.7.1 [unord.req.general] | Misspecified transitivity of equivalence in §[unord.req.general] | Yes | 2 | |
3623(i) | New | 23.5.1.1 [reverse.iterators.general] | Uses of std::reverse_iterator with containers should not require manually including <iterator> | Yes | 3 | |
3624(i) | New | 17.7 [support.rtti] | Inconsistency of <typeinfo>, <initializer_list>, and <compare> in the standard library | Yes | 3 | |
3625(i) | New | 20.21.2 [stacktrace.syn] | Should <stacktrace> provide range access function templates? | Yes | 3 | |
3626(i) | New | 20.21.4.1 [stacktrace.basic.overview] | Is std::basic_stacktrace required to use contiguous storage? | Yes | 3 | |
3627(i) | New | 20.6.9 [optional.specalg] | Inconsistent specifications for std::make_optional overloads | Yes | 3 | |
3628(i) | New | 25.11 [specialized.algorithms] | "Effects: Equivalent to:" and uninitialized memory algorithms | No | 3 | |
3629(i) | New | 19.5 [syserr] | make_error_code and make_error_condition are customization points |
Yes | 2 | |
3630(i) | New | 30.7.2 [re.regex.construct] | Inconsistent basic_regex construction and assignment from iterator range |
No | 4 | |
3631(i) | New | 20.20.7.1 [format.arg] | basic_format_arg(T&&) should use remove_cvref_t<T> throughout | Yes | 3 | |
3633(i) | New | 31 [atomics] | Atomics are copy constructible and copy assignable from volatile atomics | Yes | 3 | |
3634(i) | New | 20.12.4 [mem.res.global] | When are static-duration memory_resource objects destroyed? | No | 3 | |
3635(i) | New | 17.3.2 [version.syn] | Add __cpp_lib_deduction_guides to feature test macros | Yes | 3 | |
3636(i) | New | 20.20.6.1 [formatter.requirements] | formatter<T>::format should be const-qualified | Yes | 1 | |
3637(i) | New | 20.12.2 [mem.res.class] | pmr::memory_resource::do_allocate needs clarification | No | 3 | |
3638(i) | New | 22.3.12 [vector.bool] | vector<bool>::swap(reference, reference) is useless | Yes | 3 | |
3639(i) | SG16 | 20.20.2.2 [format.string.std] | Handling of fill character width is underspecified in std::format | No | 3 | |
3640(i) | New | 16.4.4 [utility.requirements] | Clarify which exceptions are propagated | Yes | 3 | |
3641(i) | New | 20.20.1 [format.syn] | Add operator== to format_to_n_result | Yes | 3 | |
3642(i) | New | 20.14.17.4.3 [func.wrap.move.ctor] | move_only_function assignment operators seem to be defined suboptimal | Yes | 3 | |
3644(i) | New | 20.20.2.2 [format.string.std] | std::format does not define "integer presentation type" | Yes | 2 | |
3645(i) | New | 21.3.3.5 [string.capacity] | resize_and_overwrite is overspecified to call its callback with lvalues | Yes | 2 | |
3646(i) | LEWG | 24.5.3.1 [view.interface.general] | std::ranges::view_interface::size returns a signed type | Yes | 3 | |
3647(i) | New | 25.11.2 [special.mem.concepts] | nothrow-input-iterator constraints should not mention copying | Yes | 3 | |
3651(i) | New | 20.20 [format] | Unspecified lifetime guarantees for the format string | No | 3 | |
3653(i) | New | 17.12.2 [coroutine.syn] | <coroutine> is freestanding, but uses std::hash which is not | No | 3 | |
3655(i) | New | 20.14.4 [func.require] | The INVOKE operation and union types | No | 3 | |
3656(i) | Open | 26.5.5 [bit.pow.two] | Inconsistent bit operations returning a count | Yes | 3 | |
3658(i) | New | 29.6.3.3.5 [streambuf.pub.put] | basic_streambuf::sputn is both overspecified and underspecified | Yes | 3 | |
3659(i) | SG1 | D.26.5 [depr.atomics.flag] | Consider ATOMIC_FLAG_INIT undeprecation | No | 3 | |
3662(i) | New | 21.3.3.7.2 [string.append] | basic_string::append/assign(NTBS, pos, n) suboptimal | Yes | 3 | |
3663(i) | New | 21.3.3.3 [string.cons] | basic_string(const T&, const Alloc&) turns moves into copies | Yes | 3 | |
3664(i) | New | 23.4.4.3 [range.iter.op.distance] | LWG 3392 broke std::ranges::distance(a, a+3) | Yes | 2 | |
3665(i) | New | 20.10.8.2 [allocator.traits.types] | Is std::allocator_traits<Alloc>::rebind_alloc SFINAE-friendly? | No | 3 | |
3666(i) | New | 24.7.12 [range.join] | join_view's difference type is too small | No | 2 | |
3668(i) | New | 29.12.11.2 [fs.dir.itr.members] | [recursive_]directory_iterator constructors refer to undefined options | No | 3 | |
3669(i) | New | 4.1.2 [intro.abstract] | std::filesystem operations should be observable behaviour | No | 3 | |
3673(i) | New | 28.3.1.3 [locale.cons] | §[locale.cons] Ambiguous argument in Throws for locale+name+category constructor | No | 3 | |
3674(i) | New | 28.3.1.4 [locale.members] | Removal of requirement for locale names for construction of locales not explained | Yes | 2 | |
3675(i) | New | 29.5.2.6 [ios.base.storage] | std::ios_base::iword/pword might be misspecified | Yes | 4 | |
3676(i) | New | 28.3.1.3 [locale.cons] | Name of locale composed using std::locale::none | No | 3 | |
3677(i) | New | 20.10.7.2 [allocator.uses.construction] | Is a cv-qualified pair specially handled in uses-allocator construction? | No | 2 | |
3678(i) | New | 27.11.5.1 [time.zone.overview] | Constructors of std::chrono::time_zone might be overly unspecified | No | 4 | |
3679(i) | New | 24.6.5 [range.istream] | Is <ranges> sufficient for istream_view? | No | 3 | |
3680(i) | New | 20.14.17.4.3 [func.wrap.move.ctor] | Constructor of move_only_function with empty ref-qualifier is over-constrained | Yes | 2 |