llvm-project/libcxx/docs/Status/Cxx17Issues.csv
h-vetinari 8b19d29a3f
[libc++] remove minor version in status pages (#113241)
Minor version of releases starts at `N.1.0` for all releases since 4532617ae42005.

The current status pages are not terribly wrong (the version during
development can be considered `N.0`), but still it's kinda weird to use
versions that never get released as the lower bound.
2024-11-04 10:48:50 -05:00

43 KiB

1Issue #Issue NameMeetingStatusFirst released versionNotes
2`LWG2016 <https://wg21.link/LWG2016>`__Allocators must be no-throw swappable2014-11 (Urbana)|Complete|
3`LWG2118 <https://wg21.link/LWG2118>`__``unique_ptr``\ for array does not support cv qualification conversion of actual argument2014-11 (Urbana)|Complete|
4`LWG2170 <https://wg21.link/LWG2170>`__Aggregates cannot be ``DefaultConstructible``\ 2014-11 (Urbana)|Complete|
5`LWG2340 <https://wg21.link/LWG2340>`__Replacement allocation functions declared as inline2014-11 (Urbana)|Complete|
6`LWG2354 <https://wg21.link/LWG2354>`__Unnecessary copying when inserting into maps with braced-init syntax2014-11 (Urbana)|Complete|
7`LWG2377 <https://wg21.link/LWG2377>`__``std::align``\ requirements overly strict2014-11 (Urbana)|Complete|
8`LWG2396 <https://wg21.link/LWG2396>`__``underlying_type``\ doesn't say what to do for an incomplete enumeration type2014-11 (Urbana)|Complete|
9`LWG2399 <https://wg21.link/LWG2399>`__``shared_ptr``\ 's constructor from ``unique_ptr``\ should be constrained2014-11 (Urbana)|Complete|
10`LWG2400 <https://wg21.link/LWG2400>`__``shared_ptr``\ 's ``get_deleter()``\ should use ``addressof()``\ 2014-11 (Urbana)|Complete|
11`LWG2401 <https://wg21.link/LWG2401>`__``std::function``\ needs more noexcept2014-11 (Urbana)|Complete|
12`LWG2404 <https://wg21.link/LWG2404>`__``mismatch()``\ 's complexity needs to be updated2014-11 (Urbana)|Complete|
13`LWG2408 <https://wg21.link/LWG2408>`__SFINAE-friendly ``common_type``\ / ``iterator_traits``\ is missing in C++142014-11 (Urbana)|Complete|
14`LWG2106 <https://wg21.link/LWG2106>`__``move_iterator``\ wrapping iterators returning prvalues2014-11 (Urbana)|Complete|
15`LWG2129 <https://wg21.link/LWG2129>`__User specializations of ``std::initializer_list``\ 2014-11 (Urbana)|Complete|
16`LWG2212 <https://wg21.link/LWG2212>`__``tuple_size``\ for ``const pair``\ request <tuple> header2014-11 (Urbana)|Complete|
17`LWG2217 <https://wg21.link/LWG2217>`__``operator==(sub_match, string)``\ slices on embedded '\0's2014-11 (Urbana)|Complete|
18`LWG2230 <https://wg21.link/LWG2230>`__"see below" for ``initializer_list``\ constructors of unordered containers2014-11 (Urbana)|Complete|
19`LWG2233 <https://wg21.link/LWG2233>`__``bad_function_call::what()``\ unhelpful2014-11 (Urbana)|Complete|
20`LWG2266 <https://wg21.link/LWG2266>`__``vector``\ and ``deque``\ have incorrect insert requirements2014-11 (Urbana)|Complete|
21`LWG2325 <https://wg21.link/LWG2325>`__``minmax_element()``\ 's behavior differing from ``max_element()``\ 's should be noted2014-11 (Urbana)|Complete|
22`LWG2361 <https://wg21.link/LWG2361>`__Apply 2299 resolution throughout library2014-11 (Urbana)|Complete|
23`LWG2365 <https://wg21.link/LWG2365>`__Missing noexcept in ``shared_ptr::shared_ptr(nullptr_t)``\ 2014-11 (Urbana)|Complete|
24`LWG2376 <https://wg21.link/LWG2376>`__``bad_weak_ptr::what()``\ overspecified2014-11 (Urbana)|Complete|
25`LWG2387 <https://wg21.link/LWG2387>`__More nested types that must be accessible and unambiguous2014-11 (Urbana)|Complete|
26
27`LWG2059 <https://wg21.link/LWG2059>`__C++0x ambiguity problem with map::erase2015-05 (Lenexa)|Complete|
28`LWG2063 <https://wg21.link/LWG2063>`__Contradictory requirements for string move assignment2015-05 (Lenexa)|Complete|
29`LWG2076 <https://wg21.link/LWG2076>`__Bad CopyConstructible requirement in set constructors2015-05 (Lenexa)|Complete|
30`LWG2160 <https://wg21.link/LWG2160>`__Unintended destruction ordering-specification of resize2015-05 (Lenexa)|Complete|
31`LWG2168 <https://wg21.link/LWG2168>`__Inconsistent specification of uniform_real_distribution constructor2015-05 (Lenexa)|Complete|
32`LWG2239 <https://wg21.link/LWG2239>`__min/max/minmax requirements2015-05 (Lenexa)|Complete|
33`LWG2364 <https://wg21.link/LWG2364>`__deque and vector pop_back don't specify iterator invalidation requirements2015-05 (Lenexa)|Complete|
34`LWG2369 <https://wg21.link/LWG2369>`__constexpr max(initializer_list) vs max_element2015-05 (Lenexa)|Complete|
35`LWG2378 <https://wg21.link/LWG2378>`__Behaviour of standard exception types2015-05 (Lenexa)|Complete|
36`LWG2403 <https://wg21.link/LWG2403>`__stof() should call strtof() and wcstof()2015-05 (Lenexa)|Complete|
37`LWG2406 <https://wg21.link/LWG2406>`__negative_binomial_distribution should reject p == 12015-05 (Lenexa)|Complete|
38`LWG2407 <https://wg21.link/LWG2407>`__packaged_task(allocator_arg_t, const Allocator&, F&&) should neither be constrained nor explicit2015-05 (Lenexa)|Complete|
39`LWG2411 <https://wg21.link/LWG2411>`__shared_ptr is only contextually convertible to bool2015-05 (Lenexa)|Complete|
40`LWG2415 <https://wg21.link/LWG2415>`__Inconsistency between unique_ptr and shared_ptr2015-05 (Lenexa)|Complete|
41`LWG2420 <https://wg21.link/LWG2420>`__function<void(ArgTypes...)> does not discard the return value of the target object2015-05 (Lenexa)|Complete|
42`LWG2425 <https://wg21.link/LWG2425>`__``operator delete(void*, size_t)``\ doesn't invalidate pointers sufficiently2015-05 (Lenexa)|Complete|
43`LWG2427 <https://wg21.link/LWG2427>`__Container adaptors as sequence containers, redux2015-05 (Lenexa)|Complete|
44`LWG2428 <https://wg21.link/LWG2428>`__"External declaration" used without being defined2015-05 (Lenexa)|Complete|
45`LWG2433 <https://wg21.link/LWG2433>`__``uninitialized_copy()``\ /etc. should tolerate overloaded operator&2015-05 (Lenexa)|Complete|
46`LWG2434 <https://wg21.link/LWG2434>`__``shared_ptr::use_count()``\ is efficient2015-05 (Lenexa)|Complete|
47`LWG2437 <https://wg21.link/LWG2437>`__``iterator_traits::reference``\ can and can't be void2015-05 (Lenexa)|Complete|
48`LWG2438 <https://wg21.link/LWG2438>`__``std::iterator``\ inheritance shouldn't be mandated2015-05 (Lenexa)|Complete|
49`LWG2439 <https://wg21.link/LWG2439>`__``unique_copy()``\ sometimes can't fall back to reading its output2015-05 (Lenexa)|Complete|
50`LWG2440 <https://wg21.link/LWG2440>`__``seed_seq::size()``\ should be noexcept2015-05 (Lenexa)|Complete|
51`LWG2442 <https://wg21.link/LWG2442>`__``call_once()``\ shouldn't DECAY_COPY()2015-05 (Lenexa)|Complete|
52`LWG2448 <https://wg21.link/LWG2448>`__Non-normative Container destructor specification2015-05 (Lenexa)|Complete|
53`LWG2454 <https://wg21.link/LWG2454>`__Add ``raw_storage_iterator::base()``\ member2015-05 (Lenexa)|Complete|
54`LWG2455 <https://wg21.link/LWG2455>`__Allocator default construction should be allowed to throw2015-05 (Lenexa)|Complete|
55`LWG2458 <https://wg21.link/LWG2458>`__N3778 and new library deallocation signatures2015-05 (Lenexa)|Complete|
56`LWG2459 <https://wg21.link/LWG2459>`__``std::polar``\ should require a non-negative rho2015-05 (Lenexa)|Complete|
57`LWG2464 <https://wg21.link/LWG2464>`__``try_emplace``\ and ``insert_or_assign``\ misspecified2015-05 (Lenexa)|Complete|
58`LWG2467 <https://wg21.link/LWG2467>`__``is_always_equal``\ has slightly inconsistent default2015-05 (Lenexa)|Complete|
59`LWG2470 <https://wg21.link/LWG2470>`__Allocator's destroy function should be allowed to fail to instantiate2015-05 (Lenexa)|Complete|
60`LWG2482 <https://wg21.link/LWG2482>`__[c.strings] Table 73 mentions nonexistent functions2015-05 (Lenexa)|Complete|
61`LWG2488 <https://wg21.link/LWG2488>`__Placeholders should be allowed and encouraged to be constexpr2015-05 (Lenexa)|Complete|
62
63`LWG1169 <https://wg21.link/LWG1169>`__``num_get``\ not fully compatible with ``strto*``\ 2015-10 (Kona)|Complete|
64`LWG2072 <https://wg21.link/LWG2072>`__Unclear wording about capacity of temporary buffers2015-10 (Kona)|Complete|
65`LWG2101 <https://wg21.link/LWG2101>`__Some transformation types can produce impossible types2015-10 (Kona)|Complete|
66`LWG2111 <https://wg21.link/LWG2111>`__Which ``unexpected``\ &#47;``terminate``\ handler is called from the exception handling runtime?2015-10 (Kona)|Complete|
67`LWG2119 <https://wg21.link/LWG2119>`__Missing ``hash``\ specializations for extended integer types2015-10 (Kona)|Complete|
68`LWG2127 <https://wg21.link/LWG2127>`__Move-construction with ``raw_storage_iterator``\ 2015-10 (Kona)|Complete|
69`LWG2133 <https://wg21.link/LWG2133>`__Attitude to overloaded comma for iterators2015-10 (Kona)|Complete|
70`LWG2156 <https://wg21.link/LWG2156>`__Unordered containers' ``reserve(n)``\ reserves for ``n-1``\ elements2015-10 (Kona)|Complete|
71`LWG2218 <https://wg21.link/LWG2218>`__Unclear how containers use ``allocator_traits::construct()``\ 2015-10 (Kona)|Complete|
72`LWG2219 <https://wg21.link/LWG2219>`__``*INVOKE*``\ -ing a pointer to member with a ``reference_wrapper``\ as the object expression2015-10 (Kona)|Complete|
73`LWG2224 <https://wg21.link/LWG2224>`__Ambiguous status of access to non-live objects2015-10 (Kona)|Complete|
74`LWG2234 <https://wg21.link/LWG2234>`__``assert()``\ should allow usage in constant expressions2015-10 (Kona)|Complete|
75`LWG2244 <https://wg21.link/LWG2244>`__Issue on ``basic_istream::seekg``\ 2015-10 (Kona)|Complete|
76`LWG2250 <https://wg21.link/LWG2250>`__Follow-up On Library Issue 22072015-10 (Kona)|Complete|
77`LWG2259 <https://wg21.link/LWG2259>`__Issues in 17.6.5.5 rules for member functions2015-10 (Kona)|Complete|
78`LWG2273 <https://wg21.link/LWG2273>`__``regex_match``\ ambiguity2015-10 (Kona)|Complete|
79`LWG2336 <https://wg21.link/LWG2336>`__``is_trivially_constructible``\ /``is_trivially_assignable``\ traits are always false2015-10 (Kona)|Complete|
80`LWG2353 <https://wg21.link/LWG2353>`__``std::next``\ is over-constrained2015-10 (Kona)|Complete|
81`LWG2367 <https://wg21.link/LWG2367>`__``pair``\ and ``tuple``\ are not correctly implemented for ``is_constructible``\ with no args2015-10 (Kona)|Complete|
82`LWG2380 <https://wg21.link/LWG2380>`__May ``<cstdlib>``\ provide ``long ::abs(long)``\ and ``long long ::abs(long long)``\ ?2015-10 (Kona)|Complete|
83`LWG2384 <https://wg21.link/LWG2384>`__Allocator's ``deallocate``\ function needs better specification2015-10 (Kona)|Complete|
84`LWG2385 <https://wg21.link/LWG2385>`__``function::assign``\ allocator argument doesn't make sense2015-10 (Kona)|Complete|
85`LWG2435 <https://wg21.link/LWG2435>`__``reference_wrapper::operator()``\ 's Remark should be deleted2015-10 (Kona)|Complete|
86`LWG2447 <https://wg21.link/LWG2447>`__Allocators and ``volatile``\ -qualified value types2015-10 (Kona)|Complete|
87`LWG2462 <https://wg21.link/LWG2462>`__``std::ios_base::failure``\ is overspecified2015-10 (Kona)|Complete|
88`LWG2466 <https://wg21.link/LWG2466>`__``allocator_traits::max_size()``\ default behavior is incorrect2015-10 (Kona)|Complete|
89`LWG2469 <https://wg21.link/LWG2469>`__Wrong specification of Requires clause of ``operator[]``\ for ``map``\ and ``unordered_map``\ 2015-10 (Kona)|Complete|
90`LWG2473 <https://wg21.link/LWG2473>`__``basic_filebuf``\ 's relation to C ``FILE``\ semantics2015-10 (Kona)|Complete|
91`LWG2476 <https://wg21.link/LWG2476>`__``scoped_allocator_adaptor``\ is not assignable2015-10 (Kona)|Complete|
92`LWG2477 <https://wg21.link/LWG2477>`__Inconsistency of wordings in ``std::vector::erase()``\ and ``std::deque::erase()``\ 2015-10 (Kona)|Complete|
93`LWG2483 <https://wg21.link/LWG2483>`__``throw_with_nested()``\ should use ``is_final``\ 2015-10 (Kona)|Complete|
94`LWG2484 <https://wg21.link/LWG2484>`__``rethrow_if_nested()``\ is doubly unimplementable2015-10 (Kona)|Complete|
95`LWG2485 <https://wg21.link/LWG2485>`__``get()``\ should be overloaded for ``const tuple&&``\ 2015-10 (Kona)|Complete|
96`LWG2486 <https://wg21.link/LWG2486>`__``mem_fn()``\ should be required to use perfect forwarding2015-10 (Kona)|Complete|
97`LWG2487 <https://wg21.link/LWG2487>`__``bind()``\ should be ``const``\ -overloaded, not *cv*-overloaded2015-10 (Kona)|Complete|
98`LWG2489 <https://wg21.link/LWG2489>`__``mem_fn()``\ should be ``noexcept``\ 2015-10 (Kona)|Complete|
99`LWG2492 <https://wg21.link/LWG2492>`__Clarify requirements for ``comp``\ 2015-10 (Kona)|Complete|
100`LWG2495 <https://wg21.link/LWG2495>`__There is no such thing as an Exception Safety element2015-10 (Kona)|Complete|
101
102`LWG2192 <https://wg21.link/LWG2192>`__Validity and return type of ``std::abs(0u)``\ is unclear2016-02 (Jacksonville)|Complete|
103`LWG2276 <https://wg21.link/LWG2276>`__Missing requirement on ``std::promise::set_exception``\ 2016-02 (Jacksonville)|Complete|
104`LWG2296 <https://wg21.link/LWG2296>`__``std::addressof``\ should be ``constexpr``\ 2016-02 (Jacksonville)|Complete|
105`LWG2450 <https://wg21.link/LWG2450>`__``(greater|less|greater_equal|less_equal)<void>``\ do not yield a total order for pointers2016-02 (Jacksonville)|Complete|
106`LWG2520 <https://wg21.link/LWG2520>`__N4089 broke initializing ``unique_ptr<T[]>``\ from a ``nullptr``\ 2016-02 (Jacksonville)|Complete|
107`LWG2522 <https://wg21.link/LWG2522>`__[fund.ts.v2] Contradiction in ``set_default_resource``\ specification2016-02 (Jacksonville)|Complete|
108`LWG2523 <https://wg21.link/LWG2523>`__``std::promise``\ synopsis shows two ``set_value_at_thread_exit()``\ 's for no apparent reason2016-02 (Jacksonville)|Complete|
109`LWG2537 <https://wg21.link/LWG2537>`__Constructors for ``priority_queue``\ taking allocators should call ``make_heap``\ 2016-02 (Jacksonville)|Complete|
110`LWG2539 <https://wg21.link/LWG2539>`__[fund.ts.v2] ``invocation_trait``\ definition definition doesn't work for surrogate call functions2016-02 (Jacksonville)
111`LWG2545 <https://wg21.link/LWG2545>`__Simplify wording for ``bind``\ without explicitly specified return type2016-02 (Jacksonville)|Complete|
112`LWG2557 <https://wg21.link/LWG2557>`__Logical operator traits are broken in the zero-argument case2016-02 (Jacksonville)|Complete|
113`LWG2558 <https://wg21.link/LWG2558>`__[fund.ts.v2] Logical operator traits are broken in the zero-argument case2016-02 (Jacksonville)|Complete|
114`LWG2559 <https://wg21.link/LWG2559>`__Error in LWG 2234's resolution2016-02 (Jacksonville)|Complete|
115`LWG2560 <https://wg21.link/LWG2560>`__``is_constructible``\ underspecified when applied to a function type2016-02 (Jacksonville)|Complete|
116`LWG2565 <https://wg21.link/LWG2565>`__``std::function``\ 's move constructor should guarantee nothrow for ``reference_wrapper``\ s and function pointers2016-02 (Jacksonville)|Complete|
117`LWG2566 <https://wg21.link/LWG2566>`__Requirements on the first template parameter of container adaptors2016-02 (Jacksonville)|Complete|
118`LWG2571 <https://wg21.link/LWG2571>`__|sect|\ [map.modifiers]/2 imposes nonsensical requirement on ``insert(InputIterator, InputIterator)``\ 2016-02 (Jacksonville)|Complete|
119`LWG2572 <https://wg21.link/LWG2572>`__The remarks for ``shared_ptr::operator*``\ should apply to *cv*-qualified ``void``\ as well2016-02 (Jacksonville)|Complete|
120`LWG2574 <https://wg21.link/LWG2574>`__[fund.ts.v2] ``std::experimental::function::operator=(F&&)``\ should be constrained2016-02 (Jacksonville)|Complete|
121`LWG2575 <https://wg21.link/LWG2575>`__[fund.ts.v2] ``experimental::function::assign``\ should be removed2016-02 (Jacksonville)
122`LWG2576 <https://wg21.link/LWG2576>`__``istream_iterator``\ and ``ostream_iterator``\ should use ``std::addressof``\ 2016-02 (Jacksonville)|Complete|
123`LWG2577 <https://wg21.link/LWG2577>`__``{shared,unique}_lock``\ should use ``std::addressof``\ 2016-02 (Jacksonville)|Complete|
124`LWG2579 <https://wg21.link/LWG2579>`__Inconsistency wrt Allocators in ``basic_string``\ assignment vs. ``basic_string::assign``\ 2016-02 (Jacksonville)|Complete|
125`LWG2581 <https://wg21.link/LWG2581>`__Specialization of ``<type_traits>``\ variable templates should be prohibited2016-02 (Jacksonville)|Complete|
126`LWG2582 <https://wg21.link/LWG2582>`__|sect|\ [res.on.functions]/2's prohibition against incomplete types shouldn't apply to type traits2016-02 (Jacksonville)|Complete|
127`LWG2583 <https://wg21.link/LWG2583>`__There is no way to supply an allocator for ``basic_string(str, pos)``\ 2016-02 (Jacksonville)|Complete|
128`LWG2585 <https://wg21.link/LWG2585>`__``forward_list::resize(size_type, const value_type&)``\ effects incorrect2016-02 (Jacksonville)|Complete|
129`LWG2586 <https://wg21.link/LWG2586>`__Wrong value category used in ``scoped_allocator_adaptor::construct()``\ 2016-02 (Jacksonville)|Complete|
130`LWG2590 <https://wg21.link/LWG2590>`__Aggregate initialization for ``std::array``\ 2016-02 (Jacksonville)|Complete|
131
132`LWG2181 <https://wg21.link/LWG2181>`__Exceptions from seed sequence operations2016-06 (Oulu)|Complete|
133`LWG2309 <https://wg21.link/LWG2309>`__mutex::lock() should not throw device_or_resource_busy2016-06 (Oulu)|Complete|
134`LWG2310 <https://wg21.link/LWG2310>`__Public exposition only member in std::array2016-06 (Oulu)|Complete|
135`LWG2312 <https://wg21.link/LWG2312>`__tuple's constructor constraints need to be phrased more precisely2016-06 (Oulu)|Complete|
136`LWG2328 <https://wg21.link/LWG2328>`__Rvalue stream extraction should use perfect forwarding2016-06 (Oulu)|Complete|
137`LWG2393 <https://wg21.link/LWG2393>`__std::function's Callable definition is broken2016-06 (Oulu)|Complete|
138`LWG2422 <https://wg21.link/LWG2422>`__``std::numeric_limits<T>::is_modulo``\ description: "most machines" errata2016-06 (Oulu)|Complete|
139`LWG2426 <https://wg21.link/LWG2426>`__Issue about compare_exchange2016-06 (Oulu)|Complete|
140`LWG2436 <https://wg21.link/LWG2436>`__Comparators for associative containers should always be CopyConstructible2016-06 (Oulu)|Complete|
141`LWG2441 <https://wg21.link/LWG2441>`__Exact-width atomic typedefs should be provided2016-06 (Oulu)|Complete|
142`LWG2451 <https://wg21.link/LWG2451>`__[fund.ts.v2] optional should 'forward' T's implicit conversions2016-06 (Oulu)|Nothing To Do|
143`LWG2509 <https://wg21.link/LWG2509>`__[fund.ts.v2] any_cast doesn't work with rvalue reference targets and cannot move with a value target2016-06 (Oulu)|Complete|
144`LWG2516 <https://wg21.link/LWG2516>`__[fund.ts.v2] Public "exposition only" members in observer_ptr2016-06 (Oulu)|Complete|18
145`LWG2542 <https://wg21.link/LWG2542>`__Missing const requirements for associative containers2016-06 (Oulu)
146`LWG2549 <https://wg21.link/LWG2549>`__Tuple EXPLICIT constructor templates that take tuple parameters end up taking references to temporaries and will create dangling references2016-06 (Oulu)|Complete|
147`LWG2550 <https://wg21.link/LWG2550>`__Wording of unordered container's clear() method complexity2016-06 (Oulu)|Complete|
148`LWG2551 <https://wg21.link/LWG2551>`__[fund.ts.v2] "Exception safety" cleanup in library fundamentals required2016-06 (Oulu)|Complete|
149`LWG2555 <https://wg21.link/LWG2555>`__[fund.ts.v2] No handling for over-aligned types in optional2016-06 (Oulu)|Complete|
150`LWG2573 <https://wg21.link/LWG2573>`__[fund.ts.v2] std::hash<std::experimental::shared_ptr> does not work for arrays2016-06 (Oulu)
151`LWG2596 <https://wg21.link/LWG2596>`__vector::data() should use addressof2016-06 (Oulu)|Complete|
152`LWG2667 <https://wg21.link/LWG2667>`__path::root_directory() description is confusing2016-06 (Oulu)|Complete|
153`LWG2669 <https://wg21.link/LWG2669>`__recursive_directory_iterator effects refers to non-existent functions2016-06 (Oulu)|Complete|
154`LWG2670 <https://wg21.link/LWG2670>`__system_complete refers to undefined variable 'base'2016-06 (Oulu)|Complete|
155`LWG2671 <https://wg21.link/LWG2671>`__Errors in Copy2016-06 (Oulu)|Complete|
156`LWG2673 <https://wg21.link/LWG2673>`__status() effects cannot be implemented as specified2016-06 (Oulu)|Complete|
157`LWG2674 <https://wg21.link/LWG2674>`__Bidirectional iterator requirement on path::iterator is very expensive2016-06 (Oulu)|Complete|
158`LWG2683 <https://wg21.link/LWG2683>`__filesystem::copy() says "no effects"2016-06 (Oulu)|Complete|
159`LWG2684 <https://wg21.link/LWG2684>`__priority_queue lacking comparator typedef2016-06 (Oulu)|Complete|
160`LWG2685 <https://wg21.link/LWG2685>`__shared_ptr deleters must not throw on move construction2016-06 (Oulu)|Complete|
161`LWG2687 <https://wg21.link/LWG2687>`__{inclusive,exclusive}_scan misspecified2016-06 (Oulu)
162`LWG2688 <https://wg21.link/LWG2688>`__clamp misses preconditions and has extraneous condition on result2016-06 (Oulu)|Complete|
163`LWG2689 <https://wg21.link/LWG2689>`__Parallel versions of std::copy and std::move shouldn't be in order2016-06 (Oulu)|Nothing To Do|
164`LWG2698 <https://wg21.link/LWG2698>`__Effect of assign() on iterators/pointers/references2016-06 (Oulu)|Complete|
165`LWG2704 <https://wg21.link/LWG2704>`__recursive_directory_iterator's members should require '``*this`` is dereferenceable'2016-06 (Oulu)|Complete|
166`LWG2706 <https://wg21.link/LWG2706>`__Error reporting for recursive_directory_iterator::pop() is under-specified2016-06 (Oulu)|Complete|
167`LWG2707 <https://wg21.link/LWG2707>`__path construction and assignment should have "string_type&&" overloads2016-06 (Oulu)|Complete|
168`LWG2709 <https://wg21.link/LWG2709>`__offsetof is unnecessarily imprecise2016-06 (Oulu)
169`LWG2710 <https://wg21.link/LWG2710>`__"Effects: Equivalent to ..." doesn't count "Synchronization:" as determined semantics2016-06 (Oulu)|Complete|
170`LWG2711 <https://wg21.link/LWG2711>`__path is convertible from approximately everything under the sun2016-06 (Oulu)|Complete|
171`LWG2716 <https://wg21.link/LWG2716>`__Specification of shuffle and sample disallows lvalue URNGs2016-06 (Oulu)|Complete|
172`LWG2718 <https://wg21.link/LWG2718>`__Parallelism bug in [algorithms.parallel.exec] p22016-06 (Oulu)
173`LWG2719 <https://wg21.link/LWG2719>`__permissions function should not be noexcept due to narrow contract2016-06 (Oulu)|Complete|
174`LWG2720 <https://wg21.link/LWG2720>`__permissions function incorrectly specified for symlinks2016-06 (Oulu)|Complete|
175`LWG2721 <https://wg21.link/LWG2721>`__remove_all has incorrect post conditions2016-06 (Oulu)|Complete|
176`LWG2723 <https://wg21.link/LWG2723>`__Do directory_iterator and recursive_directory_iterator become the end iterator upon error?2016-06 (Oulu)|Complete|
177`LWG2724 <https://wg21.link/LWG2724>`__The protected virtual member functions of memory_resource should be private2016-06 (Oulu)|Complete|16
178`LWG2725 <https://wg21.link/LWG2725>`__filesystem::exists(const path&, error_code&) error reporting2016-06 (Oulu)|Complete|
179`LWG2726 <https://wg21.link/LWG2726>`__``[recursive_]directory_iterator::increment(error_code&)`` is underspecified2016-06 (Oulu)|Complete|
180`LWG2727 <https://wg21.link/LWG2727>`__Parallel algorithms with constexpr specifier2016-06 (Oulu)
181`LWG2728 <https://wg21.link/LWG2728>`__status(p).permissions() and symlink_status(p).permissions() are not specified2016-06 (Oulu)|Complete|
182
183`LWG2062 <https://wg21.link/LWG2062>`__Effect contradictions w/o no-throw guarantee of std::function swaps2016-11 (Issaquah)|Complete|
184`LWG2166 <https://wg21.link/LWG2166>`__Heap property underspecified?2016-11 (Issaquah)
185`LWG2221 <https://wg21.link/LWG2221>`__No formatted output operator for nullptr2016-11 (Issaquah)|Complete|
186`LWG2223 <https://wg21.link/LWG2223>`__shrink_to_fit effect on iterator validity2016-11 (Issaquah)|Complete|
187`LWG2261 <https://wg21.link/LWG2261>`__Are containers required to use their 'pointer' type internally?2016-11 (Issaquah)
188`LWG2394 <https://wg21.link/LWG2394>`__locale::name specification unclear - what is implementation-defined?2016-11 (Issaquah)|Complete|
189`LWG2460 <https://wg21.link/LWG2460>`__LWG issue 2408 and value categories2016-11 (Issaquah)|Complete|
190`LWG2468 <https://wg21.link/LWG2468>`__Self-move-assignment of library types2016-11 (Issaquah)
191`LWG2475 <https://wg21.link/LWG2475>`__Allow overwriting of std::basic_string terminator with charT() to allow cleaner interoperation with legacy APIs2016-11 (Issaquah)|Complete|
192`LWG2503 <https://wg21.link/LWG2503>`__multiline option should be added to syntax_option_type2016-11 (Issaquah)|Complete|
193`LWG2510 <https://wg21.link/LWG2510>`__Tag types should not be DefaultConstructible2016-11 (Issaquah)|Complete|
194`LWG2514 <https://wg21.link/LWG2514>`__Type traits must not be final2016-11 (Issaquah)|Complete|
195`LWG2518 <https://wg21.link/LWG2518>`__[fund.ts.v2] Non-member swap for propagate_const should call member swap2016-11 (Issaquah)|Complete|
196`LWG2519 <https://wg21.link/LWG2519>`__Iterator operator-= has gratuitous undefined behaviour2016-11 (Issaquah)|Complete|
197`LWG2521 <https://wg21.link/LWG2521>`__[fund.ts.v2] weak_ptr's converting move constructor should be modified as well for array support2016-11 (Issaquah)
198`LWG2525 <https://wg21.link/LWG2525>`__[fund.ts.v2] get_memory_resource should be const and noexcept2016-11 (Issaquah)
199`LWG2527 <https://wg21.link/LWG2527>`__[fund.ts.v2] ALLOCATOR_OF for function::operator= has incorrect default2016-11 (Issaquah)
200`LWG2531 <https://wg21.link/LWG2531>`__future::get should explicitly state that the shared state is released2016-11 (Issaquah)|Nothing To Do|
201`LWG2534 <https://wg21.link/LWG2534>`__Constrain rvalue stream operators2016-11 (Issaquah)|Complete|
202`LWG2536 <https://wg21.link/LWG2536>`__What should <complex.h> do?2016-11 (Issaquah)|Complete|
203`LWG2540 <https://wg21.link/LWG2540>`__unordered_multimap::insert hint iterator2016-11 (Issaquah)|Complete|
204`LWG2543 <https://wg21.link/LWG2543>`__LWG 2148 (hash support for enum types) seems under-specified2016-11 (Issaquah)|Complete|
205`LWG2544 <https://wg21.link/LWG2544>`__``istreambuf_iterator(basic_streambuf<charT, traits>* s)``\ effects unclear when s is 02016-11 (Issaquah)|Complete|
206`LWG2556 <https://wg21.link/LWG2556>`__Wide contract for future::share()2016-11 (Issaquah)|Complete|
207`LWG2562 <https://wg21.link/LWG2562>`__Consistent total ordering of pointers by comparison functors2016-11 (Issaquah)
208`LWG2567 <https://wg21.link/LWG2567>`__Specification of logical operator traits uses BaseCharacteristic, which is defined only for UnaryTypeTraits and BinaryTypeTraits2016-11 (Issaquah)|Complete|
209`LWG2568 <https://wg21.link/LWG2568>`__[fund.ts.v2] Specification of logical operator traits uses BaseCharacteristic, which is defined only for UnaryTypeTraits and BinaryTypeTraits2016-11 (Issaquah)|Complete|15
210`LWG2569 <https://wg21.link/LWG2569>`__conjunction and disjunction requirements are too strict2016-11 (Issaquah)|Complete|15
211`LWG2570 <https://wg21.link/LWG2570>`__[fund.ts.v2] conjunction and disjunction requirements are too strict2016-11 (Issaquah)
212`LWG2578 <https://wg21.link/LWG2578>`__Iterator requirements should reference iterator traits2016-11 (Issaquah)|Complete|
213`LWG2584 <https://wg21.link/LWG2584>`__<regex> ECMAScript IdentityEscape is ambiguous2016-11 (Issaquah)
214`LWG2587 <https://wg21.link/LWG2587>`__"Convertible to bool" requirement in conjunction and disjunction2016-11 (Issaquah)|Nothing To Do|Resolved by `LWG2567 <https://wg21.link/LWG2567>`__
215`LWG2588 <https://wg21.link/LWG2588>`__[fund.ts.v2] "Convertible to bool" requirement in conjunction and disjunction2016-11 (Issaquah)|Nothing To Do|Resolved by `LWG2568 <https://wg21.link/LWG2568>`__
216`LWG2589 <https://wg21.link/LWG2589>`__match_results can't satisfy the requirements of a container2016-11 (Issaquah)|Complete|
217`LWG2591 <https://wg21.link/LWG2591>`__std::function's member template target() should not lead to undefined behaviour2016-11 (Issaquah)|Complete|
218`LWG2598 <https://wg21.link/LWG2598>`__addressof works on temporaries2016-11 (Issaquah)|Complete|
219`LWG2664 <https://wg21.link/LWG2664>`__operator/ (and other append) semantics not useful if argument has root2016-11 (Issaquah)|Complete|
220`LWG2665 <https://wg21.link/LWG2665>`__remove_filename() post condition is incorrect2016-11 (Issaquah)|Complete|
221`LWG2672 <https://wg21.link/LWG2672>`__Should ``is_empty``\ use error_code in its specification?2016-11 (Issaquah)|Complete|
222`LWG2678 <https://wg21.link/LWG2678>`__std::filesystem enum classes overspecified2016-11 (Issaquah)|Complete|
223`LWG2679 <https://wg21.link/LWG2679>`__Inconsistent Use of Effects and Equivalent To2016-11 (Issaquah)|Complete|
224`LWG2680 <https://wg21.link/LWG2680>`__Add "Equivalent to" to filesystem2016-11 (Issaquah)|Complete|
225`LWG2681 <https://wg21.link/LWG2681>`__filesystem::copy() cannot copy symlinks2016-11 (Issaquah)|Complete|
226`LWG2686 <https://wg21.link/LWG2686>`__Why is std::hash specialized for error_code, but not error_condition?2016-11 (Issaquah)|Complete|
227`LWG2694 <https://wg21.link/LWG2694>`__Application of LWG 436 accidentally deleted definition of "facet"2016-11 (Issaquah)|Complete|
228`LWG2696 <https://wg21.link/LWG2696>`__Interaction between make_shared and enable_shared_from_this is underspecified2016-11 (Issaquah)|Nothing To Do|
229`LWG2699 <https://wg21.link/LWG2699>`__Missing restriction in [numeric.requirements]2016-11 (Issaquah)|Complete|
230`LWG2712 <https://wg21.link/LWG2712>`__copy_file(from, to, ...) has a number of unspecified error conditions2016-11 (Issaquah)|Complete|
231`LWG2722 <https://wg21.link/LWG2722>`__equivalent incorrectly specifies throws clause2016-11 (Issaquah)|Complete|
232`LWG2729 <https://wg21.link/LWG2729>`__Missing SFINAE on std::pair::operator=2016-11 (Issaquah)|Complete|
233`LWG2732 <https://wg21.link/LWG2732>`__Questionable specification of path::operator/= and path::append2016-11 (Issaquah)|Complete|
234`LWG2733 <https://wg21.link/LWG2733>`__[fund.ts.v2] gcd / lcm and bool2016-11 (Issaquah)|Complete|
235`LWG2735 <https://wg21.link/LWG2735>`__std::abs(short), std::abs(signed char) and others should return int instead of double in order to be compatible with C++98 and C2016-11 (Issaquah)|Complete|
236`LWG2736 <https://wg21.link/LWG2736>`__nullopt_t insufficiently constrained2016-11 (Issaquah)|Complete|
237`LWG2738 <https://wg21.link/LWG2738>`__``is_constructible``\ with void types2016-11 (Issaquah)|Complete|
238`LWG2739 <https://wg21.link/LWG2739>`__Issue with time_point non-member subtraction with an unsigned duration2016-11 (Issaquah)|Complete|
239`LWG2740 <https://wg21.link/LWG2740>`__constexpr optional<T>::operator->2016-11 (Issaquah)|Complete|
240`LWG2742 <https://wg21.link/LWG2742>`__Inconsistent string interface taking string_view2016-11 (Issaquah)|Complete|
241`LWG2744 <https://wg21.link/LWG2744>`__any's in_place constructors2016-11 (Issaquah)|Complete|
242`LWG2745 <https://wg21.link/LWG2745>`__[fund.ts.v2] Implementability of LWG 24512016-11 (Issaquah)|Complete|
243`LWG2747 <https://wg21.link/LWG2747>`__Possibly redundant std::move in [alg.foreach]2016-11 (Issaquah)|Complete|
244`LWG2748 <https://wg21.link/LWG2748>`__swappable traits for optionals2016-11 (Issaquah)|Complete|
245`LWG2749 <https://wg21.link/LWG2749>`__swappable traits for variants2016-11 (Issaquah)|Complete|
246`LWG2750 <https://wg21.link/LWG2750>`__[fund.ts.v2] LWG 2451 conversion constructor constraint2016-11 (Issaquah)|Nothing To Do|
247`LWG2752 <https://wg21.link/LWG2752>`__"Throws:" clauses of async and packaged_task are unimplementable2016-11 (Issaquah)|Nothing To Do|
248`LWG2755 <https://wg21.link/LWG2755>`__[string.view.io] uses non-existent basic_string_view::to_string function2016-11 (Issaquah)|Complete|
249`LWG2756 <https://wg21.link/LWG2756>`__C++ WP optional<T> should 'forward' T's implicit conversions2016-11 (Issaquah)|Complete|
250`LWG2758 <https://wg21.link/LWG2758>`__std::string{}.assign("ABCDE", 0, 1) is ambiguous2016-11 (Issaquah)|Complete|
251`LWG2759 <https://wg21.link/LWG2759>`__gcd / lcm and bool for the WP2016-11 (Issaquah)|Complete|
252`LWG2760 <https://wg21.link/LWG2760>`__non-const basic_string::data should not invalidate iterators2016-11 (Issaquah)|Complete|
253`LWG2765 <https://wg21.link/LWG2765>`__Did LWG 1123 go too far?2016-11 (Issaquah)|Complete|
254`LWG2767 <https://wg21.link/LWG2767>`__not_fn call_wrapper can form invalid types2016-11 (Issaquah)|Complete|
255`LWG2771 <https://wg21.link/LWG2771>`__Broken Effects of some basic_string::compare functions in terms of basic_string_view2016-11 (Issaquah)|Complete|
256`LWG2773 <https://wg21.link/LWG2773>`__Making std::ignore constexpr2016-11 (Issaquah)|Complete|
257`LWG2777 <https://wg21.link/LWG2777>`__basic_string_view::copy should use char_traits::copy2016-11 (Issaquah)|Complete|
258`LWG2778 <https://wg21.link/LWG2778>`__basic_string_view is missing constexpr2016-11 (Issaquah)|Complete|
259
260`LWG2260 <https://wg21.link/LWG2260>`__Missing requirement for Allocator::pointer2017-02 (Kona)|Complete|
261`LWG2676 <https://wg21.link/LWG2676>`__Provide filesystem::path overloads for File-based streams2017-02 (Kona)|Complete|
262`LWG2768 <https://wg21.link/LWG2768>`__any_cast and move semantics2017-02 (Kona)|Complete|
263`LWG2769 <https://wg21.link/LWG2769>`__Redundant const in the return type of any_cast(const any&)2017-02 (Kona)|Complete|
264`LWG2781 <https://wg21.link/LWG2781>`__Contradictory requirements for std::function and std::reference_wrapper2017-02 (Kona)|Complete|
265`LWG2782 <https://wg21.link/LWG2782>`__scoped_allocator_adaptor constructors must be constrained2017-02 (Kona)|Complete|
266`LWG2784 <https://wg21.link/LWG2784>`__Resolution to LWG 2484 is missing "otherwise, no effects" and is hard to parse2017-02 (Kona)|Complete|
267`LWG2785 <https://wg21.link/LWG2785>`__quoted should work with basic_string_view2017-02 (Kona)|Complete|
268`LWG2786 <https://wg21.link/LWG2786>`__Annex C should mention shared_ptr changes for array support2017-02 (Kona)|Complete|
269`LWG2787 <https://wg21.link/LWG2787>`__|sect|\ [file_status.cons] doesn't match class definition2017-02 (Kona)|Complete|
270`LWG2788 <https://wg21.link/LWG2788>`__basic_string range mutators unintentionally require a default constructible allocator2017-02 (Kona)|Complete|
271`LWG2789 <https://wg21.link/LWG2789>`__Equivalence of contained objects2017-02 (Kona)|Complete|
272`LWG2790 <https://wg21.link/LWG2790>`__Missing specification of istreambuf_iterator::operator->2017-02 (Kona)|Complete|
273`LWG2794 <https://wg21.link/LWG2794>`__Missing requirements for allocator pointers2017-02 (Kona)|Nothing To Do|
274`LWG2795 <https://wg21.link/LWG2795>`__|sect|\ [global.functions] provides incorrect example of ADL use2017-02 (Kona)|Complete|
275`LWG2796 <https://wg21.link/LWG2796>`__tuple should be a literal type2017-02 (Kona)|Complete|
276`LWG2801 <https://wg21.link/LWG2801>`__Default-constructibility of unique_ptr2017-02 (Kona)|Complete|
277`LWG2802 <https://wg21.link/LWG2802>`__shared_ptr constructor requirements for a deleter2017-02 (Kona)|Complete|
278`LWG2804 <https://wg21.link/LWG2804>`__Unconditional constexpr default constructor for istream_iterator2017-02 (Kona)|Complete|
279`LWG2806 <https://wg21.link/LWG2806>`__Base class of bad_optional_access2017-02 (Kona)|Complete|
280`LWG2807 <https://wg21.link/LWG2807>`__std::invoke should use ``std::is_nothrow_callable``\ 2017-02 (Kona)|Complete|
281`LWG2812 <https://wg21.link/LWG2812>`__Range access is available with <string_view>2017-02 (Kona)|Complete|
282`LWG2824 <https://wg21.link/LWG2824>`__list::sort should say that the order of elements is unspecified if an exception is thrown2017-02 (Kona)|Complete|
283`LWG2826 <https://wg21.link/LWG2826>`__string_view iterators use old wording2017-02 (Kona)|Complete|
284`LWG2834 <https://wg21.link/LWG2834>`__Resolution LWG 2223 is missing wording about end iterators2017-02 (Kona)|Complete|
285`LWG2835 <https://wg21.link/LWG2835>`__LWG 2536 seems to misspecify <tgmath.h>2017-02 (Kona)|Complete|
286`LWG2837 <https://wg21.link/LWG2837>`__gcd and lcm should support a wider range of input values2017-02 (Kona)|Complete|
287`LWG2838 <https://wg21.link/LWG2838>`__is_literal_type specification needs a little cleanup2017-02 (Kona)|Complete|
288`LWG2842 <https://wg21.link/LWG2842>`__in_place_t check for optional::optional(U&&) should decay U2017-02 (Kona)|Complete|
289`LWG2850 <https://wg21.link/LWG2850>`__std::function move constructor does unnecessary work2017-02 (Kona)|Complete|
290`LWG2853 <https://wg21.link/LWG2853>`__Possible inconsistency in specification of erase in [vector.modifiers]2017-02 (Kona)|Complete|
291`LWG2855 <https://wg21.link/LWG2855>`__std::throw_with_nested("string_literal")2017-02 (Kona)|Complete|
292`LWG2857 <https://wg21.link/LWG2857>`__{variant,optional,any}::emplace should return the constructed value2017-02 (Kona)|Complete|
293`LWG2861 <https://wg21.link/LWG2861>`__basic_string should require that charT match traits::char_type2017-02 (Kona)|Complete|
294`LWG2866 <https://wg21.link/LWG2866>`__Incorrect derived classes constraints2017-02 (Kona)|Nothing To Do|
295`LWG2868 <https://wg21.link/LWG2868>`__Missing specification of bad_any_cast::what()2017-02 (Kona)|Complete|
296`LWG2872 <https://wg21.link/LWG2872>`__Add definition for direct-non-list-initialization2017-02 (Kona)|Complete|
297`LWG2873 <https://wg21.link/LWG2873>`__Add noexcept to several shared_ptr related functions2017-02 (Kona)|Complete|
298`LWG2874 <https://wg21.link/LWG2874>`__Constructor ``shared_ptr::shared_ptr(Y*)``\ should be constrained2017-02 (Kona)|Complete|13
299`LWG2875 <https://wg21.link/LWG2875>`__shared_ptr::shared_ptr(Y\*, D, [|hellip|\ ]) constructors should be constrained2017-02 (Kona)|Complete|
300`LWG2876 <https://wg21.link/LWG2876>`__``shared_ptr::shared_ptr(const weak_ptr<Y>&)``\ constructor should be constrained2017-02 (Kona)|Complete|14
301`LWG2878 <https://wg21.link/LWG2878>`__Missing DefaultConstructible requirement for istream_iterator default constructor2017-02 (Kona)|Complete|
302`LWG2890 <https://wg21.link/LWG2890>`__The definition of 'object state' applies only to class types2017-02 (Kona)|Complete|
303`LWG2900 <https://wg21.link/LWG2900>`__The copy and move constructors of optional are not constexpr2017-02 (Kona)|Complete|
304`LWG2903 <https://wg21.link/LWG2903>`__The form of initialization for the emplace-constructors is not specified2017-02 (Kona)|Complete|
305`LWG2904 <https://wg21.link/LWG2904>`__Make variant move-assignment more exception safe2017-02 (Kona)|Complete|
306`LWG2905 <https://wg21.link/LWG2905>`__is_constructible_v<unique_ptr<P, D>, P, D const &> should be false when D is not copy constructible2017-02 (Kona)|Complete|
307`LWG2908 <https://wg21.link/LWG2908>`__The less-than operator for shared pointers could do more2017-02 (Kona)|Complete|
308`LWG2911 <https://wg21.link/LWG2911>`__An is_aggregate type trait is needed2017-02 (Kona)|Complete|
309`LWG2921 <https://wg21.link/LWG2921>`__packaged_task and type-erased allocators2017-02 (Kona)|Complete|20Originally implemented in LLVM 6 but reverted later. Old documentation incorrectly said it was implemented.
310`LWG2934 <https://wg21.link/LWG2934>`__optional<const T> doesn't compare with T2017-02 (Kona)|Complete|
311
312`LWG2901 <https://wg21.link/LWG2901>`__Variants cannot properly support allocators2017-07 (Toronto)|Complete|
313`LWG2955 <https://wg21.link/LWG2955>`__``to_chars / from_chars``\ depend on ``std::string``\ 2017-07 (Toronto)|Nothing To Do|Resolved by `P0682R1 <https://wg21.link/P0682R1>`__
314`LWG2956 <https://wg21.link/LWG2956>`__``filesystem::canonical()``\ still defined in terms of ``absolute(p, base)``\ 2017-07 (Toronto)|Complete|