llvm-project/libcxx/docs/Status/Cxx20Issues.csv
A. Jiang 3d688233bd
[libc++][docs] Add missing entry for status pages, fix bad formatting, and deduplicate (#148186)
In a previously PR, the entry for P3491R3 define_static_{string,object,array} was missing.
This patch adds it back.

The number of LWG2687, LWG2709, LWG3315, LWG3395, LWG3987, and LWG4113
were duplicated in the title. It seems better to avoid such duplicates.

Also fixes some formatting to properly use italic and code styles, and
remove one improper leading space from the title of P3682R0 (which
caused incorrect alignment in the generated page).
2025-07-15 11:14:41 -04:00

43 KiB

1Issue #Issue NameMeetingStatusFirst released versionNotes
2`LWG2070 <https://wg21.link/LWG2070>`__``allocate_shared``\ should use ``allocator_traits<A>::construct``\ 2017-07 (Toronto)|Nothing To Do|Resolved by `P0674R1 <https://wg21.link/P0674R1>`__
3`LWG2444 <https://wg21.link/LWG2444>`__Inconsistent complexity for ``std::sort_heap``\ 2017-07 (Toronto)|Nothing To Do|
4`LWG2593 <https://wg21.link/LWG2593>`__Moved-from state of Allocators2017-07 (Toronto)|Nothing To Do|
5`LWG2597 <https://wg21.link/LWG2597>`__``std::log``\ misspecified for complex numbers2017-07 (Toronto)
6`LWG2783 <https://wg21.link/LWG2783>`__``stack::emplace()``\ and ``queue::emplace()``\ should return ``decltype(auto)``\ 2017-07 (Toronto)|Complete|
7`LWG2932 <https://wg21.link/LWG2932>`__Constraints on parallel algorithm implementations are underspecified2017-07 (Toronto)
8`LWG2937 <https://wg21.link/LWG2937>`__Is ``equivalent("existing_thing", "not_existing_thing")``\ an error2017-07 (Toronto)|Complete|
9`LWG2940 <https://wg21.link/LWG2940>`__``result_of``\ specification also needs a little cleanup2017-07 (Toronto)|Nothing To Do|
10`LWG2942 <https://wg21.link/LWG2942>`__LWG 2873's resolution missed ``weak_ptr::owner_before``\ 2017-07 (Toronto)|Complete|
11`LWG2954 <https://wg21.link/LWG2954>`__Specialization of the convenience variable templates should be prohibited2017-07 (Toronto)|Complete|
12`LWG2961 <https://wg21.link/LWG2961>`__Bad postcondition for ``set_default_resource``\ 2017-07 (Toronto)|Complete|16
13`LWG2966 <https://wg21.link/LWG2966>`__Incomplete resolution of US 742017-07 (Toronto)|Nothing To Do|
14`LWG2974 <https://wg21.link/LWG2974>`__Diagnose out of bounds ``tuple_element/variant_alternative``\ 2017-07 (Toronto)|Complete|
15
16`LWG2779 <https://wg21.link/LWG2779>`__[networking.ts] Relax requirements on buffer sequence iterators2017-11 (Albuquerque)|Nothing To Do|
17`LWG2870 <https://wg21.link/LWG2870>`__Default value of parameter theta of polar should be dependent2017-11 (Albuquerque)|Complete|
18`LWG2935 <https://wg21.link/LWG2935>`__What should create_directories do when p already exists but is not a directory?2017-11 (Albuquerque)|Nothing To Do|
19`LWG2941 <https://wg21.link/LWG2941>`__[thread.req.timing] wording should apply to both member and namespace-level functions2017-11 (Albuquerque)|Nothing To Do|
20`LWG2944 <https://wg21.link/LWG2944>`__LWG 2905 accidentally removed requirement that construction of the deleter doesn't throw an exception2017-11 (Albuquerque)|Nothing To Do|
21`LWG2945 <https://wg21.link/LWG2945>`__Order of template parameters in optional comparisons2017-11 (Albuquerque)|Complete|
22`LWG2948 <https://wg21.link/LWG2948>`__unique_ptr does not define operator<< for stream output2017-11 (Albuquerque)|Complete|
23`LWG2950 <https://wg21.link/LWG2950>`__std::byte operations are misspecified2017-11 (Albuquerque)|Complete|
24`LWG2952 <https://wg21.link/LWG2952>`__iterator_traits should work for pointers to cv T2017-11 (Albuquerque)|Complete|
25`LWG2953 <https://wg21.link/LWG2953>`__LWG 2853 should apply to deque::erase too2017-11 (Albuquerque)|Complete|
26`LWG2958 <https://wg21.link/LWG2958>`__Moves improperly defined as deleted2017-11 (Albuquerque)|Complete|
27`LWG2964 <https://wg21.link/LWG2964>`__Apparently redundant requirement for dynamic_pointer_cast2017-11 (Albuquerque)
28`LWG2965 <https://wg21.link/LWG2965>`__Non-existing path::native_string() in filesystem_error::what() specification2017-11 (Albuquerque)|Nothing To Do|
29`LWG2972 <https://wg21.link/LWG2972>`__What is ``is_trivially_destructible_v<int>``\ ?2017-11 (Albuquerque)|Complete|
30`LWG2976 <https://wg21.link/LWG2976>`__Dangling uses_allocator specialization for packaged_task2017-11 (Albuquerque)|Complete|20Originally implemented in LLVM 6 but reverted later. Old documentation incorrectly said it was implemented.
31`LWG2977 <https://wg21.link/LWG2977>`__unordered_meow::merge() has incorrect Throws: clause2017-11 (Albuquerque)|Nothing To Do|
32`LWG2978 <https://wg21.link/LWG2978>`__Hash support for pmr::string and friends2017-11 (Albuquerque)|Complete|16
33`LWG2979 <https://wg21.link/LWG2979>`__aligned_union should require complete object types2017-11 (Albuquerque)|Complete|
34`LWG2980 <https://wg21.link/LWG2980>`__Cannot compare_exchange empty pointers2017-11 (Albuquerque)
35`LWG2981 <https://wg21.link/LWG2981>`__Remove redundant deduction guides from standard library2017-11 (Albuquerque)|Nothing To Do|
36`LWG2982 <https://wg21.link/LWG2982>`__Making size_type consistent in associative container deduction guides2017-11 (Albuquerque)
37`LWG2988 <https://wg21.link/LWG2988>`__Clause 32 cleanup missed one typename2017-11 (Albuquerque)|Complete|13
38`LWG2993 <https://wg21.link/LWG2993>`__reference_wrapper<T> conversion from T&&2017-11 (Albuquerque)|Complete|13
39`LWG2998 <https://wg21.link/LWG2998>`__Requirements on function objects passed to {``forward_``,}list-specific algorithms2017-11 (Albuquerque)|Nothing To Do|
40`LWG3001 <https://wg21.link/LWG3001>`__weak_ptr::element_type needs remove_extent_t2017-11 (Albuquerque)|Complete|14
41`LWG3024 <https://wg21.link/LWG3024>`__variant's copies must be deleted instead of disabled via SFINAE2017-11 (Albuquerque)|Complete|
42
43`LWG2164 <https://wg21.link/LWG2164>`__What are the semantics of ``vector.emplace(vector.begin(), vector.back())``\ ?2018-03 (Jacksonville)|Complete|
44`LWG2243 <https://wg21.link/LWG2243>`__``istream::putback``\ problem2018-03 (Jacksonville)|Complete|
45`LWG2816 <https://wg21.link/LWG2816>`__``resize_file``\ has impossible postcondition2018-03 (Jacksonville)|Nothing To Do|
46`LWG2843 <https://wg21.link/LWG2843>`__Unclear behavior of ``std::pmr::memory_resource::do_allocate()``\ 2018-03 (Jacksonville)|Complete|
47`LWG2849 <https://wg21.link/LWG2849>`__Why does ``!is_regular_file(from)``\ cause ``copy_file``\ to report a "file already exists" error?2018-03 (Jacksonville)|Nothing To Do|
48`LWG2851 <https://wg21.link/LWG2851>`__``std::filesystem``\ enum classes are now underspecified2018-03 (Jacksonville)|Nothing To Do|
49`LWG2946 <https://wg21.link/LWG2946>`__LWG 2758's resolution missed further corrections2018-03 (Jacksonville)|Complete|
50`LWG2969 <https://wg21.link/LWG2969>`__``polymorphic_allocator::construct()``\ shouldn't pass ``resource()``\ 2018-03 (Jacksonville)|Complete|
51`LWG2975 <https://wg21.link/LWG2975>`__Missing case for ``pair``\ construction in scoped and polymorphic allocators2018-03 (Jacksonville)
52`LWG2989 <https://wg21.link/LWG2989>`__``path``\ 's stream insertion operator lets you insert everything under the sun2018-03 (Jacksonville)|Complete|
53`LWG3000 <https://wg21.link/LWG3000>`__``monotonic_memory_resource::do_is_equal``\ uses ``dynamic_cast``\ unnecessarily2018-03 (Jacksonville)|Complete|16
54`LWG3002 <https://wg21.link/LWG3002>`__[networking.ts] ``basic_socket_acceptor::is_open()``\ isn't ``noexcept``\ 2018-03 (Jacksonville)|Nothing To Do|
55`LWG3004 <https://wg21.link/LWG3004>`__|sect|\ [string.capacity] and |sect|\ [vector.capacity] should specify time complexity for ``capacity()``\ 2018-03 (Jacksonville)|Nothing To Do|
56`LWG3005 <https://wg21.link/LWG3005>`__Destruction order of arrays by ``make_shared/allocate_shared``\ only recommended?2018-03 (Jacksonville)
57`LWG3007 <https://wg21.link/LWG3007>`__``allocate_shared``\ should rebind allocator to *cv*-unqualified ``value_type``\ for construction2018-03 (Jacksonville)
58`LWG3009 <https://wg21.link/LWG3009>`__Including ``<string_view>``\ doesn't provide ``std::size/empty/data``\ 2018-03 (Jacksonville)|Complete|
59`LWG3010 <https://wg21.link/LWG3010>`__[networking.ts] ``uses_executor``\ says "if a type ``T::executor_type``\ exists"2018-03 (Jacksonville)|Nothing To Do|
60`LWG3013 <https://wg21.link/LWG3013>`__``(recursive_)directory_iterator``\ construction and traversal should not be ``noexcept``\ 2018-03 (Jacksonville)|Complete|
61`LWG3014 <https://wg21.link/LWG3014>`__More ``noexcept``\ issues with filesystem operations2018-03 (Jacksonville)|Complete|
62`LWG3015 <https://wg21.link/LWG3015>`__``copy_options::*unspecified*``\ underspecified2018-03 (Jacksonville)|Nothing To Do|
63`LWG3017 <https://wg21.link/LWG3017>`__``list splice``\ functions should use ``addressof``\ 2018-03 (Jacksonville)|Complete|
64`LWG3020 <https://wg21.link/LWG3020>`__[networking.ts] Remove spurious nested ``value_type``\ buffer sequence requirement2018-03 (Jacksonville)|Nothing To Do|
65`LWG3026 <https://wg21.link/LWG3026>`__``filesystem::weakly_canonical``\ still defined in terms of ``canonical(p, base)``\ 2018-03 (Jacksonville)|Complete|
66`LWG3030 <https://wg21.link/LWG3030>`__Who shall meet the requirements of ``try_lock``\ ?2018-03 (Jacksonville)|Nothing To Do|
67`LWG3034 <https://wg21.link/LWG3034>`__P0767R1 breaks previously-standard-layout types2018-03 (Jacksonville)|Complete|
68`LWG3035 <https://wg21.link/LWG3035>`__``std::allocator``\ 's constructors should be ``constexpr``\ 2018-03 (Jacksonville)|Complete|
69`LWG3039 <https://wg21.link/LWG3039>`__Unnecessary ``decay``\ in ``thread``\ and ``packaged_task``\ 2018-03 (Jacksonville)|Complete|
70`LWG3041 <https://wg21.link/LWG3041>`__Unnecessary ``decay``\ in ``reference_wrapper``\ 2018-03 (Jacksonville)|Complete|
71`LWG3042 <https://wg21.link/LWG3042>`__``is_literal_type_v``\ should be inline2018-03 (Jacksonville)|Complete|
72`LWG3043 <https://wg21.link/LWG3043>`__Bogus postcondition for ``filesystem_error``\ constructor2018-03 (Jacksonville)|Complete|
73`LWG3045 <https://wg21.link/LWG3045>`__``atomic<floating-point>``\ doesn't have ``value_type``\ or ``difference_type``\ 2018-03 (Jacksonville)|Complete|18
74`LWG3048 <https://wg21.link/LWG3048>`__``transform_reduce(exec, first1, last1, first2, init)``\ discards execution policy2018-03 (Jacksonville)|Complete|17
75`LWG3051 <https://wg21.link/LWG3051>`__Floating point classifications were inadvertently changed in P01752018-03 (Jacksonville)|Nothing To Do|
76`LWG3075 <https://wg21.link/LWG3075>`__``basic_string``\ needs deduction guides from ``basic_string_view``\ 2018-03 (Jacksonville)|Complete|
77
78`LWG2139 <https://wg21.link/LWG2139>`__What is a user-defined type?2018-06 (Rapperswil)
79`LWG2970 <https://wg21.link/LWG2970>`__Return type of std::visit misspecified2018-06 (Rapperswil)|Complete|11
80`LWG3058 <https://wg21.link/LWG3058>`__Parallel adjacent_difference shouldn't require creating temporaries2018-06 (Rapperswil)
81`LWG3062 <https://wg21.link/LWG3062>`__Unnecessary decay_t in is_execution_policy_v should be remove_cvref_t2018-06 (Rapperswil)|Complete|17
82`LWG3067 <https://wg21.link/LWG3067>`__recursive_directory_iterator::pop must invalidate2018-06 (Rapperswil)|Nothing To Do|
83`LWG3071 <https://wg21.link/LWG3071>`__[networking.ts] read_until still refers to "input sequence"2018-06 (Rapperswil)|Nothing To Do|
84`LWG3074 <https://wg21.link/LWG3074>`__Non-member functions for valarray should only deduce from the valarray2018-06 (Rapperswil)
85`LWG3076 <https://wg21.link/LWG3076>`__basic_string CTAD ambiguity2018-06 (Rapperswil)|Complete|
86`LWG3079 <https://wg21.link/LWG3079>`__LWG 2935 forgot to fix the existing_p overloads of create_directory2018-06 (Rapperswil)|Nothing To Do|
87`LWG3080 <https://wg21.link/LWG3080>`__Floating point from_chars pattern specification breaks round-tripping2018-06 (Rapperswil)
88`LWG3083 <https://wg21.link/LWG3083>`__What should ios::iword(-1) do?2018-06 (Rapperswil)|Nothing To Do|
89`LWG3094 <https://wg21.link/LWG3094>`__[time.duration.io]p4 makes surprising claims about encoding2018-06 (Rapperswil)
90`LWG3100 <https://wg21.link/LWG3100>`__Unnecessary and confusing "empty span" wording2018-06 (Rapperswil)|Nothing To Do|
91`LWG3102 <https://wg21.link/LWG3102>`__Clarify span iterator and ``const_iterator`` behavior2018-06 (Rapperswil)|Complete|
92`LWG3104 <https://wg21.link/LWG3104>`__Fixing duration division2018-06 (Rapperswil)|Complete|
93
94`LWG2183 <https://wg21.link/LWG2183>`__Muddled allocator requirements for ``match_results``\ constructors2018-11 (San Diego)|Complete|
95`LWG2184 <https://wg21.link/LWG2184>`__Muddled allocator requirements for ``match_results``\ assignments2018-11 (San Diego)|Complete|
96`LWG2412 <https://wg21.link/LWG2412>`__``promise::set_value()``\ and ``promise::get_future()``\ should not race2018-11 (San Diego)
97`LWG2499 <https://wg21.link/LWG2499>`__``operator>>(basic_istream&, CharT*)``\ makes it hard to avoid buffer overflows2018-11 (San Diego)|Nothing To Do|Resolved by `P0487R1 <https://wg21.link/P0487R1>`__
98`LWG2682 <https://wg21.link/LWG2682>`__``filesystem::copy()``\ won't create a symlink to a directory2018-11 (San Diego)|Nothing To Do|
99`LWG2697 <https://wg21.link/LWG2697>`__[concurr.ts] Behavior of ``future/shared_future``\ unwrapping constructor when given an invalid ``future``\ 2018-11 (San Diego)
100`LWG2797 <https://wg21.link/LWG2797>`__Trait precondition violations2018-11 (San Diego)|Nothing To Do|Resolved by `P1285R0 <https://wg21.link/P1285R0>`__
101`LWG2936 <https://wg21.link/LWG2936>`__Path comparison is defined in terms of the generic format2018-11 (San Diego)|Complete|
102`LWG2943 <https://wg21.link/LWG2943>`__Problematic specification of the wide version of ``basic_filebuf::open``\ 2018-11 (San Diego)|Nothing To Do|
103`LWG2960 <https://wg21.link/LWG2960>`__[fund.ts.v3] ``nonesuch``\ is insufficiently useless2018-11 (San Diego)|Complete|
104`LWG2995 <https://wg21.link/LWG2995>`__``basic_stringbuf``\ default constructor forbids it from using SSO capacity2018-11 (San Diego)|Complete|20
105`LWG2996 <https://wg21.link/LWG2996>`__Missing rvalue overloads for ``shared_ptr``\ operations2018-11 (San Diego)|Complete|17
106`LWG3008 <https://wg21.link/LWG3008>`__``make_shared``\ (sub)object destruction semantics are not specified2018-11 (San Diego)|Complete|16
107`LWG3022 <https://wg21.link/LWG3022>`__``is_convertible<derived*, base*>``\ may lead to ODR2018-11 (San Diego)|Nothing To Do|Resolved by `P1285R0 <https://wg21.link/P1285R0>`__
108`LWG3025 <https://wg21.link/LWG3025>`__Map-like container deduction guides should use ``pair<Key, T>``\ , not ``pair<const Key, T>``\ 2018-11 (San Diego)|Complete|
109`LWG3031 <https://wg21.link/LWG3031>`__Algorithms and predicates with non-const reference arguments2018-11 (San Diego)
110`LWG3037 <https://wg21.link/LWG3037>`__``polymorphic_allocator``\ and incomplete types2018-11 (San Diego)|Complete|16
111`LWG3038 <https://wg21.link/LWG3038>`__``polymorphic_allocator::allocate``\ should not allow integer overflow to create vulnerabilities2018-11 (San Diego)|Complete|14
112`LWG3054 <https://wg21.link/LWG3054>`__``uninitialized_copy``\ appears to not be able to meet its exception-safety guarantee2018-11 (San Diego)|Nothing To Do|
113`LWG3065 <https://wg21.link/LWG3065>`__LWG 2989 missed that all ``path``\ 's other operators should be hidden friends as well2018-11 (San Diego)|Complete|
114`LWG3096 <https://wg21.link/LWG3096>`__``path::lexically_relative``\ is confused by trailing slashes2018-11 (San Diego)|Complete|
115`LWG3116 <https://wg21.link/LWG3116>`__``OUTERMOST_ALLOC_TRAITS``\ needs ``remove_reference_t``\ 2018-11 (San Diego)
116`LWG3122 <https://wg21.link/LWG3122>`__``__cpp_lib_chrono_udls``\ was accidentally dropped2018-11 (San Diego)|Complete|
117`LWG3127 <https://wg21.link/LWG3127>`__``basic_osyncstream::rdbuf``\ needs a ``const_cast``\ 2018-11 (San Diego)|Complete|18
118`LWG3128 <https://wg21.link/LWG3128>`__``strstream::rdbuf``\ needs a ``const_cast``\ 2018-11 (San Diego)|Nothing To Do|
119`LWG3129 <https://wg21.link/LWG3129>`__``regex_token_iterator``\ constructor uses wrong pointer arithmetic2018-11 (San Diego)
120`LWG3130 <https://wg21.link/LWG3130>`__|sect|\ [input.output] needs many ``addressof``\ 2018-11 (San Diego)|Complete|20
121`LWG3131 <https://wg21.link/LWG3131>`__``addressof``\ all the things2018-11 (San Diego)
122`LWG3132 <https://wg21.link/LWG3132>`__Library needs to ban macros named ``expects``\ or ``ensures``\ 2018-11 (San Diego)|Nothing To Do|
123`LWG3134 <https://wg21.link/LWG3134>`__[fund.ts.v3] LFTSv3 contains extraneous [meta] variable templates that should have been deleted by P099612018-11 (San Diego)|Nothing To Do|Resolved by `P1210R0 <https://wg21.link/P1210R0>`__
124`LWG3137 <https://wg21.link/LWG3137>`__Header for ``__cpp_lib_to_chars``\ 2018-11 (San Diego)|Complete|
125`LWG3140 <https://wg21.link/LWG3140>`__``COMMON_REF``\ is unimplementable as specified2018-11 (San Diego)|Nothing To Do|
126`LWG3145 <https://wg21.link/LWG3145>`__``file_clock``\ breaks ABI for C++17 implementations2018-11 (San Diego)|Complete|
127`LWG3147 <https://wg21.link/LWG3147>`__Definitions of "likely" and "unlikely" are likely to cause problems2018-11 (San Diego)|Nothing To Do|
128`LWG3148 <https://wg21.link/LWG3148>`__``<concepts>``\ should be freestanding2018-11 (San Diego)
129`LWG3153 <https://wg21.link/LWG3153>`__``Common``\ and ``common_type``\ have too little in common2018-11 (San Diego)|Complete|13
130`LWG3154 <https://wg21.link/LWG3154>`__``Common``\ and ``CommonReference``\ have a common defect2018-11 (San Diego)|Nothing To Do|
131
132`LWG3012 <https://wg21.link/LWG3012>`__``atomic<T>``\ is unimplementable for non-``is_trivially_copy_constructible T``\ 2019-02 (Kona)
133`LWG3040 <https://wg21.link/LWG3040>`__``basic_string_view::starts_with``\ *Effects* are incorrect2019-02 (Kona)|Complete|
134`LWG3077 <https://wg21.link/LWG3077>`__``(push|emplace)_back``\ should invalidate the ``end``\ iterator2019-02 (Kona)|Nothing To Do|
135`LWG3087 <https://wg21.link/LWG3087>`__One final ``&x``\ in |sect|\ [list.ops]2019-02 (Kona)|Nothing To Do|
136`LWG3101 <https://wg21.link/LWG3101>`__``span``\ 's ``Container``\ constructors need another constraint2019-02 (Kona)|Complete|
137`LWG3112 <https://wg21.link/LWG3112>`__``system_error``\ and ``filesystem_error``\ constructors taking a ``string``\ may not be able to meet their postconditions2019-02 (Kona)|Nothing To Do|
138`LWG3119 <https://wg21.link/LWG3119>`__Program-definedness of closure types2019-02 (Kona)|Nothing To Do|
139`LWG3133 <https://wg21.link/LWG3133>`__Modernizing numeric type requirements2019-02 (Kona)
140`LWG3144 <https://wg21.link/LWG3144>`__``span``\ does not have a ``const_pointer``\ typedef2019-02 (Kona)|Complete|
141`LWG3173 <https://wg21.link/LWG3173>`__Enable CTAD for ``ref-view``\ 2019-02 (Kona)|Complete|15
142`LWG3179 <https://wg21.link/LWG3179>`__``subrange``\ should always model ``Range``\ 2019-02 (Kona)|Nothing To Do|
143`LWG3180 <https://wg21.link/LWG3180>`__Inconsistently named return type for ``ranges::minmax_element``\ 2019-02 (Kona)|Complete|15
144`LWG3182 <https://wg21.link/LWG3182>`__Specification of ``Same``\ could be clearer2019-02 (Kona)|Complete|15
145
146`LWG2899 <https://wg21.link/LWG2899>`__``is_(nothrow_)move_constructible``\ and ``tuple``\ , ``optional``\ and ``unique_ptr``\ 2019-07 (Cologne)
147`LWG3055 <https://wg21.link/LWG3055>`__``path::operator+=(*single-character*)``\ misspecified2019-07 (Cologne)|Complete|7
148`LWG3158 <https://wg21.link/LWG3158>`__``tuple(allocator_arg_t, const Alloc&)``\ should be conditionally explicit2019-07 (Cologne)|Complete|10
149`LWG3169 <https://wg21.link/LWG3169>`__``ranges``\ permutation generators discard useful information2019-07 (Cologne)|Complete|15
150`LWG3183 <https://wg21.link/LWG3183>`__Normative permission to specialize Ranges variable templates2019-07 (Cologne)|Nothing To Do|
151`LWG3184 <https://wg21.link/LWG3184>`__Inconsistencies in ``bind_front``\ wording2019-07 (Cologne)|Complete|13
152`LWG3185 <https://wg21.link/LWG3185>`__Uses-allocator construction functions missing ``constexpr``\ and ``noexcept``\ 2019-07 (Cologne)|Complete|16
153`LWG3186 <https://wg21.link/LWG3186>`__``ranges``\ removal, partition, and ``partial_sort_copy``\ algorithms discard useful information2019-07 (Cologne)|Complete|15
154`LWG3187 <https://wg21.link/LWG3187>`__`P0591R4 <https://wg21.link/p0591r4>`__ reverted DR 2586 fixes to ``scoped_allocator_adaptor::construct()``\ 2019-07 (Cologne)
155`LWG3191 <https://wg21.link/LWG3191>`__``std::ranges::shuffle``\ synopsis does not match algorithm definition2019-07 (Cologne)|Complete|15
156`LWG3196 <https://wg21.link/LWG3196>`__``std::optional<T>``\ is ill-formed is ``T``\ is an array2019-07 (Cologne)|Complete|
157`LWG3198 <https://wg21.link/LWG3198>`__Bad constraint on ``std::span::span()``\ 2019-07 (Cologne)|Complete|
158`LWG3199 <https://wg21.link/LWG3199>`__``istream >> bitset<0>``\ fails2019-07 (Cologne)|Complete|10
159`LWG3202 <https://wg21.link/LWG3202>`__P0318R1 was supposed to be revised2019-07 (Cologne)|Complete|
160`LWG3206 <https://wg21.link/LWG3206>`__``year_month_day``\ conversion to ``sys_days``\ uses not-existing member function2019-07 (Cologne)|Complete|
161`LWG3208 <https://wg21.link/LWG3208>`__``Boolean``\ 's expression requirements are ordered inconsistently2019-07 (Cologne)|Nothing To Do|
162`LWG3209 <https://wg21.link/LWG3209>`__Expression in ``year::ok()``\ returns clause is ill-formed2019-07 (Cologne)|Complete|
163
164`LWG3231 <https://wg21.link/LWG3231>`__``year_month_day_last::day``\ specification does not cover ``!ok()``\ values2019-11 (Belfast)|Nothing To Do|
165`LWG3225 <https://wg21.link/LWG3225>`__``zoned_time``\ converting constructor shall not be ``noexcept``\ 2019-11 (Belfast)|Complete|19
166`LWG3190 <https://wg21.link/LWG3190>`__``std::allocator::allocate``\ sometimes returns too little storage2019-11 (Belfast)|Complete|14
167`LWG3218 <https://wg21.link/LWG3218>`__Modifier for ``%d``\ parse flag does not match POSIX and ``format``\ specification2019-11 (Belfast)
168`LWG3224 <https://wg21.link/LWG3224>`__``zoned_time``\ constructor from ``TimeZonePtr``\ does not specify initialization of ``tp_``\ 2019-11 (Belfast)|Complete|19
169`LWG3230 <https://wg21.link/LWG3230>`__Format specifier ``%y/%Y``\ is missing locale alternative versions2019-11 (Belfast)|Complete|16
170`LWG3232 <https://wg21.link/LWG3232>`__Inconsistency in ``zoned_time``\ deduction guides2019-11 (Belfast)|Complete|19
171`LWG3222 <https://wg21.link/LWG3222>`__P0574R1 introduced preconditions on non-existent parameters2019-11 (Belfast)
172`LWG3221 <https://wg21.link/LWG3221>`__Result of ``year_month``\ arithmetic with ``months``\ is ambiguous2019-11 (Belfast)|Complete|8
173`LWG3235 <https://wg21.link/LWG3235>`__``parse``\ manipulator without abbreviation is not callable2019-11 (Belfast)
174`LWG3246 <https://wg21.link/LWG3246>`__LWG3246: What are the constraints on the template parameter of `basic_format_arg`?2019-11 (Belfast)|Nothing To Do|
175`LWG3253 <https://wg21.link/LWG3253>`__``basic_syncbuf::basic_syncbuf()``\ should not be explicit2019-11 (Belfast)|Complete|20
176`LWG3245 <https://wg21.link/LWG3245>`__Unnecessary restriction on ``'%p'``\ parse specifier2019-11 (Belfast)
177`LWG3244 <https://wg21.link/LWG3244>`__Constraints for ``Source``\ in |sect|\ [fs.path.req] insufficiently constrainty2019-11 (Belfast)
178`LWG3241 <https://wg21.link/LWG3241>`__``chrono-spec``\ grammar ambiguity in |sect|\ [time.format]2019-11 (Belfast)|Complete|16
179`LWG3257 <https://wg21.link/LWG3257>`__Missing feature testing macro update from P08582019-11 (Belfast)|Complete|12
180`LWG3256 <https://wg21.link/LWG3256>`__Feature testing macro for ``constexpr``\ algorithms2019-11 (Belfast)|Complete|13
181`LWG3273 <https://wg21.link/LWG3273>`__Specify ``weekday_indexed``\ to range of ``[0, 7]``\ 2019-11 (Belfast)|Complete|16
182`LWG3070 <https://wg21.link/LWG3070>`__``path::lexically_relative``\ causes surprising results if a filename can also be a *root-name*2019-11 (Belfast)
183`LWG3266 <https://wg21.link/LWG3266>`__``to_chars(bool)``\ should be deleted2019-11 (Belfast)|Complete|14
184`LWG3272 <https://wg21.link/LWG3272>`__``%I%p``\ should parse/format ``duration``\ since midnight2019-11 (Belfast)
185`LWG3259 <https://wg21.link/LWG3259>`__The definition of *constexpr iterators* should be adjusted2019-11 (Belfast)|Nothing To Do|
186`LWG3103 <https://wg21.link/LWG3103>`__Errors in taking subview of ``span``\ should be ill-formed where possible2019-11 (Belfast)|Complete|11
187`LWG3274 <https://wg21.link/LWG3274>`__Missing feature test macro for ``<span>``\ 2019-11 (Belfast)|Complete|11
188`LWG3276 <https://wg21.link/LWG3276>`__Class ``split_view::outer_iterator::value_type``\ should inherit from ``view_interface``\ 2019-11 (Belfast)|Complete|15
189`LWG3277 <https://wg21.link/LWG3277>`__Pre-increment on prvalues is not a requirement of ``weakly_incrementable``\ 2019-11 (Belfast)|Nothing To Do|
190`LWG3149 <https://wg21.link/LWG3149>`__``DefaultConstructible``\ should require default initialization2019-11 (Belfast)|Complete|13
191
192`LWG1203 <https://wg21.link/LWG1203>`__More useful rvalue stream insertion2020-02 (Prague)|Complete|12
193`LWG2859 <https://wg21.link/LWG2859>`__Definition of *reachable* in [ptr.launder] misses pointer arithmetic from pointer-interconvertible object2020-02 (Prague)
194`LWG3018 <https://wg21.link/LWG3018>`__``shared_ptr``\ of function type2020-02 (Prague)|Nothing To Do|
195`LWG3050 <https://wg21.link/LWG3050>`__Conversion specification problem in ``chrono::duration``\ constructor2020-02 (Prague)|Complete|19
196`LWG3141 <https://wg21.link/LWG3141>`__``CopyConstructible``\ doesn't preserve source values2020-02 (Prague)|Nothing To Do|
197`LWG3150 <https://wg21.link/LWG3150>`__``UniformRandomBitGenerator``\ should validate ``min``\ and ``max``\ 2020-02 (Prague)|Complete|13
198`LWG3175 <https://wg21.link/LWG3175>`__The ``CommonReference``\ requirement of concept ``SwappableWith``\ is not satisfied in the example2020-02 (Prague)|Complete|13
199`LWG3194 <https://wg21.link/LWG3194>`__``ConvertibleTo``\ prose does not match code2020-02 (Prague)|Complete|13
200`LWG3200 <https://wg21.link/LWG3200>`__``midpoint``\ should not constrain ``T``\ is complete2020-02 (Prague)|Nothing To Do|
201`LWG3201 <https://wg21.link/LWG3201>`__``lerp``\ should be marked as ``noexcept``\ 2020-02 (Prague)|Complete|
202`LWG3226 <https://wg21.link/LWG3226>`__``zoned_time``\ constructor from ``string_view``\ should accept ``zoned_time<Duration2, TimeZonePtr2>``\ 2020-02 (Prague)|Complete|19
203`LWG3233 <https://wg21.link/LWG3233>`__Broken requirements for ``shared_ptr``\ converting constructors2020-02 (Prague)|Complete|19
204`LWG3237 <https://wg21.link/LWG3237>`__LWG 3038 and 3190 have inconsistent PRs2020-02 (Prague)|Complete|16
205`LWG3238 <https://wg21.link/LWG3238>`__Insufficiently-defined behavior of ``std::function``\ deduction guides2020-02 (Prague)|Nothing To Do|
206`LWG3242 <https://wg21.link/LWG3242>`__``std::format``\ : missing rules for ``arg-id``\ in ``width``\ and ``precision``\ 2020-02 (Prague)|Complete|14
207`LWG3243 <https://wg21.link/LWG3243>`__``std::format``\ and negative zeroes2020-02 (Prague)|Complete|14
208`LWG3247 <https://wg21.link/LWG3247>`__``ranges::iter_move``\ should perform ADL-only lookup of ``iter_move``\ 2020-02 (Prague)|Complete|15
209`LWG3248 <https://wg21.link/LWG3248>`__``std::format``\ ``#b``\ , ``#B``\ , ``#o``\ , ``#x``\ , and ``#X``\ presentation types misformat negative numbers2020-02 (Prague)|Complete|14
210`LWG3250 <https://wg21.link/LWG3250>`__``std::format``\ : ``#``\ (alternate form) for NaN and inf2020-02 (Prague)|Complete|14
211`LWG3251 <https://wg21.link/LWG3251>`__Are ``std::format``\ alignment specifiers applied to string arguments?2020-02 (Prague)|Complete|14
212`LWG3252 <https://wg21.link/LWG3252>`__Parse locale's aware modifiers for commands are not consistent with POSIX spec2020-02 (Prague)
213`LWG3254 <https://wg21.link/LWG3254>`__Strike ``stop_token``\ 's ``operator!=``\ 2020-02 (Prague)|Complete|17
214`LWG3255 <https://wg21.link/LWG3255>`__``span``\ 's ``array``\ constructor is too strict2020-02 (Prague)|Complete|
215`LWG3260 <https://wg21.link/LWG3260>`__``year_month*``\ arithmetic rejects durations convertible to years2020-02 (Prague)
216`LWG3262 <https://wg21.link/LWG3262>`__Formatting of negative durations is not specified2020-02 (Prague)|Complete|16
217`LWG3264 <https://wg21.link/LWG3264>`__``sized_range``\ and ``ranges::size``\ redundantly use ``disable_sized_range``\ 2020-02 (Prague)|Complete|15
218`LWG3269 <https://wg21.link/LWG3269>`__Parse manipulators do not specify the result of the extraction from stream2020-02 (Prague)
219`LWG3270 <https://wg21.link/LWG3270>`__Parsing and formatting ``%j``\ with ``duration``\ s2020-02 (Prague)|Partial|
220`LWG3280 <https://wg21.link/LWG3280>`__View converting constructors can cause constraint recursion and are unneeded2020-02 (Prague)|Complete|15
221`LWG3281 <https://wg21.link/LWG3281>`__Conversion from ``*pair-like*``\ types to ``subrange``\ is a silent semantic promotion2020-02 (Prague)|Complete|13
222`LWG3282 <https://wg21.link/LWG3282>`__``subrange``\ converting constructor should disallow derived to base conversions2020-02 (Prague)|Complete|15
223`LWG3284 <https://wg21.link/LWG3284>`__``random_access_iterator``\ semantic constraints accidentally promote difference type using unary negate2020-02 (Prague)|Nothing To Do|
224`LWG3285 <https://wg21.link/LWG3285>`__The type of a customization point object shall satisfy ``semiregular``\ 2020-02 (Prague)|Nothing To Do|
225`LWG3286 <https://wg21.link/LWG3286>`__``ranges::size``\ is not required to be valid after a call to ``ranges::begin``\ on an input range2020-02 (Prague)|Complete|15
226`LWG3291 <https://wg21.link/LWG3291>`__``iota_view::iterator``\ has the wrong ``iterator_category``\ 2020-02 (Prague)|Complete|15
227`LWG3292 <https://wg21.link/LWG3292>`__``iota_view``\ is under-constrained2020-02 (Prague)|Complete|15
228`LWG3294 <https://wg21.link/LWG3294>`__``zoned_time``\ deduction guides misinterprets ``string``\ /``char*``\ 2020-02 (Prague)|Complete|19
229`LWG3296 <https://wg21.link/LWG3296>`__Inconsistent default argument for ``basic_regex<>::assign``\ 2020-02 (Prague)|Complete|
230`LWG3299 <https://wg21.link/LWG3299>`__Pointers don't need customized iterator behavior2020-02 (Prague)|Complete|15
231`LWG3300 <https://wg21.link/LWG3300>`__Non-array ``ssize``\ overload is underconstrained2020-02 (Prague)|Nothing To Do|
232`LWG3301 <https://wg21.link/LWG3301>`__``transform_view::iterator``\ has incorrect ``iterator_category``\ 2020-02 (Prague)|Complete|15
233`LWG3302 <https://wg21.link/LWG3302>`__Range adaptor objects ``keys``\ and ``values``\ are unspecified2020-02 (Prague)|Complete|16
234`LWG3303 <https://wg21.link/LWG3303>`__Bad "``constexpr``\ " marker for ``destroy/destroy_n``\ 2020-02 (Prague)
235`LWG3304 <https://wg21.link/LWG3304>`__Allocate functions of ``std::polymorphic_allocator``\ should require ``[[nodiscard]]``\ 2020-02 (Prague)|Complete|16
236`LWG3307 <https://wg21.link/LWG3307>`__``std::allocator<void>().allocate(n)``\ 2020-02 (Prague)|Complete|20
237`LWG3310 <https://wg21.link/LWG3310>`__Replace ``SIZE_MAX``\ with ``numeric_limits<size_t>::max()``\ 2020-02 (Prague)|Complete|16
238`LWG3313 <https://wg21.link/LWG3313>`__``join_view::iterator::operator--``\ is incorrectly constrained2020-02 (Prague)|Complete|14
239`LWG3314 <https://wg21.link/LWG3314>`__Is stream insertion behavior locale dependent when ``Period::type``\ is ``micro``\ ?2020-02 (Prague)|Complete|16
240`LWG3315 <https://wg21.link/LWG3315>`__Correct Allocator Default Behavior2020-02 (Prague)|Complete|
241`LWG3316 <https://wg21.link/LWG3316>`__Correctly define epoch for ``utc_clock``\ / ``utc_timepoint``\ 2020-02 (Prague)
242`LWG3317 <https://wg21.link/LWG3317>`__Incorrect ``operator<<``\ for floating-point durations2020-02 (Prague)|Complete|16
243`LWG3318 <https://wg21.link/LWG3318>`__Clarify whether clocks can represent time before their epoch2020-02 (Prague)
244`LWG3319 <https://wg21.link/LWG3319>`__Properly reference specification of IANA time zone database2020-02 (Prague)|Nothing To Do|
245`LWG3320 <https://wg21.link/LWG3320>`__``span::cbegin/cend``\ methods produce different results than ``std::[ranges::]cbegin/cend``\ 2020-02 (Prague)|Complete|
246`LWG3321 <https://wg21.link/LWG3321>`__``uninitialized_construct_using_allocator``\ should use ``construct_at``\ 2020-02 (Prague)|Complete|16
247`LWG3323 <https://wg21.link/LWG3323>`__``*has-tuple-element*``\ helper concept needs ``convertible_to``\ 2020-02 (Prague)|Complete|16
248`LWG3324 <https://wg21.link/LWG3324>`__Special-case ``std::strong/weak/partial_order``\ for pointers2020-02 (Prague)|Complete|14
249`LWG3325 <https://wg21.link/LWG3325>`__Constrain return type of transformation function for ``transform_view``\ 2020-02 (Prague)|Complete|15
250`LWG3326 <https://wg21.link/LWG3326>`__``enable_view``\ has false positives2020-02 (Prague)|Complete|15
251`LWG3327 <https://wg21.link/LWG3327>`__Format alignment specifiers vs. text direction2020-02 (Prague)|Nothing To Do|
252`LWG3328 <https://wg21.link/LWG3328>`__Clarify that ``std::string``\ is not good for UTF-82020-02 (Prague)|Nothing To Do|
253`LWG3329 <https://wg21.link/LWG3329>`__``totally_ordered_with``\ both directly and indirectly requires ``common_reference_with``\ 2020-02 (Prague)|Complete|13
254`LWG3330 <https://wg21.link/LWG3330>`__Include ``<compare>``\ from most library headers2020-02 (Prague)|Complete|13
255`LWG3331 <https://wg21.link/LWG3331>`__Define ``totally_ordered/_with``\ in terms of ``partially-ordered-with``\ 2020-02 (Prague)|Complete|13
256`LWG3332 <https://wg21.link/LWG3332>`__Issue in |sect|\ [time.format]2020-02 (Prague)|Complete|16
257`LWG3334 <https://wg21.link/LWG3334>`__``basic_osyncstream``\ move assignment and destruction calls ``basic_syncbuf::emit()``\ twice2020-02 (Prague)|Complete|18
258`LWG3335 <https://wg21.link/LWG3335>`__Resolve C++20 NB comments US 273 and GB 2742020-02 (Prague)|Complete|15
259`LWG3338 <https://wg21.link/LWG3338>`__Rename ``default_constructible``\ to ``default_initializable``\ 2020-02 (Prague)|Complete|13
260`LWG3340 <https://wg21.link/LWG3340>`__Formatting functions should throw on argument/format string mismatch in |sect|\ [format.functions]2020-02 (Prague)|Complete|14
261`LWG3346 <https://wg21.link/LWG3346>`__``pair``\ and ``tuple``\ copy and move constructor have backwards specification2020-02 (Prague)|Nothing To Do|
262`LWG3347 <https://wg21.link/LWG3347>`__``std::pair<T, U>``\ now requires ``T``\ and ``U``\ to be less-than-comparable2020-02 (Prague)|Complete|17
263`LWG3348 <https://wg21.link/LWG3348>`__``__cpp_lib_unwrap_ref``\ in wrong header2020-02 (Prague)|Complete|12
264`LWG3349 <https://wg21.link/LWG3349>`__Missing ``__cpp_lib_constexpr_complex``\ for P0415R12020-02 (Prague)|Complete|16
265`LWG3350 <https://wg21.link/LWG3350>`__Simplify return type of ``lexicographical_compare_three_way``\ 2020-02 (Prague)|Complete|17
266`LWG3351 <https://wg21.link/LWG3351>`__``ranges::enable_safe_range``\ should not be constrained2020-02 (Prague)|Complete|15
267`LWG3352 <https://wg21.link/LWG3352>`__``strong_equality``\ isn't a thing2020-02 (Prague)|Complete|19
268`LWG3354 <https://wg21.link/LWG3354>`__``has_strong_structural_equality``\ has a meaningless definition2020-02 (Prague)|Nothing To Do|
269`LWG3355 <https://wg21.link/LWG3355>`__The memory algorithms should support move-only input iterators introduced by P12072020-02 (Prague)|Complete|15
270`LWG3356 <https://wg21.link/LWG3356>`__``__cpp_lib_nothrow_convertible``\ should be ``__cpp_lib_is_nothrow_convertible``\ 2020-02 (Prague)|Complete|12
271`LWG3358 <https://wg21.link/LWG3358>`__|sect|\ [span.cons] is mistaken that ``to_address``\ can throw2020-02 (Prague)|Complete|17
272`LWG3359 <https://wg21.link/LWG3359>`__``<chrono>``\ leap second support should allow for negative leap seconds2020-02 (Prague)|Complete|21
273`LWG3360 <https://wg21.link/LWG3360>`__``three_way_comparable_with``\ is inconsistent with similar concepts2020-02 (Prague)|Nothing To Do|
274`LWG3362 <https://wg21.link/LWG3362>`__Strike ``stop_source``\ 's ``operator!=``\ 2020-02 (Prague)|Complete|17
275`LWG3363 <https://wg21.link/LWG3363>`__``drop_while_view``\ should opt-out of ``sized_range``\ 2020-02 (Prague)|Nothing To Do|
276`LWG3364 <https://wg21.link/LWG3364>`__Initialize data members of ranges and their iterators2020-02 (Prague)|Complete|16
277`LWG3367 <https://wg21.link/LWG3367>`__Integer-class conversions should not throw2020-02 (Prague)|Nothing To Do|
278`LWG3369 <https://wg21.link/LWG3369>`__``span``\ 's deduction-guide for built-in arrays doesn't work2020-02 (Prague)|Complete|14
279`LWG3371 <https://wg21.link/LWG3371>`__``visit_format_arg``\ and ``make_format_args``\ are not hidden friends2020-02 (Prague)|Complete|14
280`LWG3372 <https://wg21.link/LWG3372>`__``vformat_to``\ should not try to deduce ``Out``\ twice2020-02 (Prague)|Complete|14
281`LWG3373 <https://wg21.link/LWG3373>`__``{to,from}_chars_result``\ and ``format_to_n_result``\ need the "we really mean what we say" wording2020-02 (Prague)|Complete|14
282`LWG3374 <https://wg21.link/LWG3374>`__P0653 + P1006 should have made the other ``std::to_address``\ overload ``constexpr``\ 2020-02 (Prague)|Complete|12
283`LWG3375 <https://wg21.link/LWG3375>`__``decay``\ in ``viewable_range``\ should be ``remove_cvref``\ 2020-02 (Prague)|Complete|15
284`LWG3377 <https://wg21.link/LWG3377>`__``elements_view::iterator``\ befriends a specialization of itself2020-02 (Prague)|Nothing To Do|
285`LWG3379 <https://wg21.link/LWG3379>`__"``safe``\ " in several library names is misleading2020-02 (Prague)|Complete|15
286`LWG3380 <https://wg21.link/LWG3380>`__``common_type``\ and comparison categories2020-02 (Prague)|Complete|15
287`LWG3381 <https://wg21.link/LWG3381>`__``begin``\ and ``data``\ must agree for ``contiguous_range``\ 2020-02 (Prague)|Nothing To Do|
288`LWG3382 <https://wg21.link/LWG3382>`__NTTP for ``pair``\ and ``array``\ 2020-02 (Prague)|Nothing To Do|
289`LWG3383 <https://wg21.link/LWG3383>`__|sect|\ [time.zone.leap.nonmembers] ``sys_seconds``\ should be replaced with ``seconds``\ 2020-02 (Prague)|Complete|19
290`LWG3384 <https://wg21.link/LWG3384>`__``transform_view::*sentinel*``\ has an incorrect ``operator-``\ 2020-02 (Prague)|Complete|15
291`LWG3385 <https://wg21.link/LWG3385>`__``common_iterator``\ is not sufficiently constrained for non-copyable iterators2020-02 (Prague)|Complete|15
292`LWG3387 <https://wg21.link/LWG3387>`__|sect|\ [range.reverse.view] ``reverse_view<V>``\ unintentionally requires ``range<const V>``\ 2020-02 (Prague)|Complete|15
293`LWG3388 <https://wg21.link/LWG3388>`__``view``\ iterator types have ill-formed ``<=>``\ operators2020-02 (Prague)|Complete|16
294`LWG3389 <https://wg21.link/LWG3389>`__A move-only iterator still does not have a ``counted_iterator``\ 2020-02 (Prague)|Complete|15
295`LWG3390 <https://wg21.link/LWG3390>`__``make_move_iterator()``\ cannot be used to construct a ``move_iterator``\ for a move-only iterator2020-02 (Prague)|Complete|14
296`LWG3393 <https://wg21.link/LWG3393>`__Missing/incorrect feature test macro for coroutines2020-02 (Prague)|Complete|14
297`LWG3395 <https://wg21.link/LWG3395>`__Definition for three-way comparison needs to be updated (US 152)2020-02 (Prague)|Nothing To Do|
298`LWG3396 <https://wg21.link/LWG3396>`__Clarify point of reference for ``source_location::current()``\ (DE 169)2020-02 (Prague)|Nothing To Do|16
299`LWG3397 <https://wg21.link/LWG3397>`__``ranges::basic_istream_view::iterator``\ should not provide ``iterator_category``\ 2020-02 (Prague)|Complete|16
300`LWG3398 <https://wg21.link/LWG3398>`__``tuple_element_t``\ is also wrong for ``const subrange``\ 2020-02 (Prague)|Complete|14
301
302`LWG3446 <https://wg21.link/LWG3446>`__``indirectly_readable_traits``\ ambiguity for types with both ``value_type``\ and ``element_type``\ 2020-11 (Virtual)|Complete|13