Files
clang-p2996/libcxx/docs/Status/Cxx2bIssues.csv
Mark de Wever 853059a150 [libc++] Addresses LWG3782.
3782. Should <math.h> declare ::lerp?

Libc++ doesn't declare ::lerp, adds tests to validate the requirement.

Reviewed By: #libc, philnik

Differential Revision: https://reviews.llvm.org/D142817
2023-02-28 18:31:17 +01:00

42 KiB

1Issue #Issue NameMeetingStatusFirst released versionLabels
2`2839 <https://wg21.link/LWG2839>`__Self-move-assignment of library types, againNovember 2020|Nothing To Do|
3`3117 <https://wg21.link/LWG3117>`__Missing ``packaged_task`` deduction guidesNovember 2020|Complete|16.0
4`3143 <https://wg21.link/LWG3143>`__``monotonic_buffer_resource`` growth policy is unclearNovember 2020
5`3195 <https://wg21.link/LWG3195>`__What is the stored pointer value of an empty ``weak_ptr``?November 2020|Nothing To Do|
6`3211 <https://wg21.link/LWG3211>`__``std::tuple<>`` should be trivially constructibleNovember 2020|Complete|9.0
7`3236 <https://wg21.link/LWG3236>`__Random access iterator requirements lack limiting relational operators domain to comparing those from the same rangeNovember 2020|Nothing To Do|
8`3265 <https://wg21.link/LWG3265>`__``move_iterator``'s conversions are more broken after P1207November 2020Fixed by `LWG3435 <https://wg21.link/LWG3435>`__
9`3435 <https://wg21.link/LWG3435>`__``three_way_comparable_with<reverse_iterator<int*>, reverse_iterator<const int*>>``November 2020|Complete|13.0
10`3432 <https://wg21.link/LWG3432>`__Missing requirement for ``comparison_category``November 2020|Complete|16.0|spaceship|
11`3447 <https://wg21.link/LWG3447>`__Deduction guides for ``take_view`` and ``drop_view`` have different constraintsNovember 2020|Complete|14.0|ranges|
12`3450 <https://wg21.link/LWG3450>`__The const overloads of ``take_while_view::begin/end`` are underconstrainedNovember 2020|Complete|16.0|ranges|
13`3464 <https://wg21.link/LWG3464>`__``istream::gcount()`` can overflowNovember 2020
14`2731 <https://wg21.link/LWG2731>`__Existence of ``lock_guard<MutexTypes...>::mutex_type`` typedef unclearNovember 2020|Complete|5.0
15`2743 <https://wg21.link/LWG2743>`__P0083R3 ``node_handle`` private members missing "exposition only" commentNovember 2020|Nothing To Do|
16`2820 <https://wg21.link/LWG2820>`__Clarify ``<cstdint>`` macrosNovember 2020|Nothing To Do|
17`3120 <https://wg21.link/LWG3120>`__Unclear behavior of ``monotonic_buffer_resource::release()``November 2020
18`3170 <https://wg21.link/LWG3170>`__``is_always_equal`` added to ``std::allocator`` makes the standard library treat derived types as always equalNovember 2020
19`3036 <https://wg21.link/LWG3036>`__``polymorphic_allocator::destroy`` is extraneousNovember 2020
20`3171 <https://wg21.link/LWG3171>`__LWG2989 breaks ``directory_entry`` stream insertionNovember 2020|Complete|14.0
21`3306 <https://wg21.link/LWG3306>`__``ranges::advance`` violates its preconditionsNovember 2020|Complete|14.0|ranges|
22`3403 <https://wg21.link/LWG3403>`__Domain of ``ranges::ssize(E)`` doesn't ``match ranges::size(E)``November 2020|ranges|
23`3404 <https://wg21.link/LWG3404>`__Finish removing subrange's conversions from pair-likeNovember 2020|ranges|
24`3405 <https://wg21.link/LWG3405>`__``common_view``'s converting constructor is bad, tooNovember 2020|Complete|14.0|ranges|
25`3406 <https://wg21.link/LWG3406>`__``elements_view::begin()`` and ``elements_view::end()`` have incompatible constraintsNovember 2020|Complete|16.0|ranges|
26`3419 <https://wg21.link/LWG3419>`__[algorithms.requirements]/15 doesn't reserve as many rights as it intends toNovember 2020|Nothing To Do|
27`3420 <https://wg21.link/LWG3420>`__cpp17-iterator should check that the type looks like an iterator firstNovember 2020|Complete|14.0|ranges|
28`3421 <https://wg21.link/LWG3421>`__Imperfect ADL emulation for boolean-testableNovember 2020|Nothing To Do||ranges|
29`3425 <https://wg21.link/LWG3425>`__``condition_variable_any`` fails to constrain its Lock parametersNovember 2020|Nothing To Do|
30`3426 <https://wg21.link/LWG3426>`__``operator<=>(const unique_ptr<T, D>&, nullptr_t)`` can't get no satisfactionNovember 2020|Complete|16.0|spaceship|
31`3427 <https://wg21.link/LWG3427>`__``operator<=>(const shared_ptr<T>&, nullptr_t)`` definition ill-formedNovember 2020|Complete|16.0|spaceship|
32`3428 <https://wg21.link/LWG3428>`__``single_view``'s in place constructor should be explicitNovember 2020|Complete|14.0|ranges|
33`3434 <https://wg21.link/LWG3434>`__``ios_base`` never reclaims memory for iarray and parrayNovember 2020|Nothing To Do|
34`3437 <https://wg21.link/LWG3437>`__``__cpp_lib_polymorphic_allocator`` is in the wrong headerNovember 2020|Complete|14.0
35`3446 <https://wg21.link/LWG3446>`__``indirectly_readable_traits`` ambiguity for types with both ``value_type`` and ``element_type``November 2020|Complete|14.0|ranges|
36`3448 <https://wg21.link/LWG3448>`__``transform_view``'s ``sentinel<false>`` not comparable with ``iterator<true>``November 2020|ranges|
37`3449 <https://wg21.link/LWG3449>`__``take_view`` and ``take_while_view``'s ``sentinel<false>`` not comparable with their ``const iterator``November 2020|Complete|16.0|ranges|
38`3453 <https://wg21.link/LWG3453>`__Generic code cannot call ``ranges::advance(i, s)``November 2020|Nothing To Do||ranges|
39`3455 <https://wg21.link/LWG3455>`__Incorrect Postconditions on ``unique_ptr`` move assignmentNovember 2020|Nothing To Do|
40`3460 <https://wg21.link/LWG3460>`__Unimplementable ``noop_coroutine_handle`` guaranteesNovember 2020|Complete|14.0
41`3461 <https://wg21.link/LWG3461>`__``convertible_to``'s description mishandles cv-qualified ``void``November 2020|Nothing To Do|
42`3465 <https://wg21.link/LWG3465>`__``compare_partial_order_fallback`` requires ``F < E``November 2020|Complete|14.0|spaceship|
43`3466 <https://wg21.link/LWG3466>`__Specify the requirements for ``promise``/``future``/``shared_future`` consistentlyNovember 2020|Nothing To Do|
44`3467 <https://wg21.link/LWG3467>`__``bool`` can't be an integer-like typeNovember 2020|Complete|14.0|ranges|
45`3472 <https://wg21.link/LWG3472>`__``counted_iterator`` is missing preconditionsNovember 2020|Complete|14.0|ranges|
46`3473 <https://wg21.link/LWG3473>`__Normative encouragement in non-normative noteNovember 2020|Complete|15.0|format|
47`3474 <https://wg21.link/LWG3474>`__Nesting ``join_views`` is broken because of CTADNovember 2020|Complete|15.0|ranges|
48`3476 <https://wg21.link/LWG3476>`__``thread`` and ``jthread`` constructors require that the parameters be move-constructible but never move construct the parametersNovember 2020
49`3477 <https://wg21.link/LWG3477>`__Simplify constraints for ``semiregular-box``November 2020|ranges|
50`3482 <https://wg21.link/LWG3482>`__``drop_view``'s const begin should additionally require ``sized_range``November 2020|Complete|14.0|ranges|
51`3483 <https://wg21.link/LWG3483>`__``transform_view::iterator``'s difference is overconstrainedNovember 2020|Complete|14.0|ranges|
52
53`3391 <https://wg21.link/LWG3391>`__Problems with ``counted_iterator``/``move_iterator::base() const &``February 2021|ranges|
54`3433 <https://wg21.link/LWG3433>`__``subrange::advance(n)`` has UB when ``n < 0``February 2021|Complete|14.0|ranges|
55`3490 <https://wg21.link/LWG3490>`__``ranges::drop_while_view::begin()`` is missing a preconditionFebruary 2021|Nothing To Do||ranges|
56`3492 <https://wg21.link/LWG3492>`__Minimal improvements to ``elements_view::iterator``February 2021|Complete|16.0|ranges|
57`3494 <https://wg21.link/LWG3494>`__Allow ranges to be conditionally borrowedFebruary 2021Superseded by `P2017R1 <https://wg21.link/P2017R1>`__|ranges|
58`3495 <https://wg21.link/LWG3495>`__``constexpr launder`` makes pointers to inactive members of unions usableFebruary 2021|Nothing To Do|
59`3500 <https://wg21.link/LWG3500>`__``join_view::iterator::operator->()`` is bogusFebruary 2021|Complete|14.0|ranges|
60`3502 <https://wg21.link/LWG3502>`__``elements_view`` should not be allowed to return dangling referenceFebruary 2021|Complete|16.0|ranges|
61`3505 <https://wg21.link/LWG3505>`__``split_view::outer-iterator::operator++`` misspecifiedFebruary 2021|ranges|
62
63`2774 <https://wg21.link/LWG2774>`__``std::function`` construction vs assignmentJune 2021
64`2818 <https://wg21.link/LWG2818>`__``::std::`` everywhere rule needs tweakingJune 2021|Nothing To Do|
65`2997 <https://wg21.link/LWG2997>`__LWG 491 and the specification of ``{forward_,}list::unique``June 2021
66`3410 <https://wg21.link/LWG3410>`__``lexicographical_compare_three_way`` is overspecifiedJune 2021|Complete|17.0|spaceship|
67`3430 <https://wg21.link/LWG3430>`__``std::fstream`` & co. should be constructible from string_viewJune 2021
68`3462 <https://wg21.link/LWG3462>`__§[formatter.requirements]: Formatter requirements forbid use of ``fc.arg()``June 2021|format|
69`3481 <https://wg21.link/LWG3481>`__``viewable_range`` mishandles lvalue move-only viewsJune 2021Superseded by `P2415R2 <https://wg21.link/P2415R2>`__|ranges|
70`3506 <https://wg21.link/LWG3506>`__Missing allocator-extended constructors for ``priority_queue``June 2021|Complete|14.0
71`3517 <https://wg21.link/LWG3517>`__``join_view::iterator``'s ``iter_swap`` is underconstrainedJune 2021|Complete|14.0|ranges|
72`3518 <https://wg21.link/LWG3518>`__Exception requirements on char trait operations unclearJune 2021|Nothing To Do|
73`3519 <https://wg21.link/LWG3519>`__Incomplete synopses for ``<random>`` classesJune 2021
74`3520 <https://wg21.link/LWG3520>`__``iter_move`` and ``iter_swap`` are inconsistent for ``transform_view::iterator``June 2021|Complete|14.0|ranges|
75`3521 <https://wg21.link/LWG3521>`__Overly strict requirements on ``qsort`` and ``bsearch``June 2021|Nothing To Do|
76`3522 <https://wg21.link/LWG3522>`__Missing requirement on ``InputIterator`` template parameter for ``priority_queue`` constructorsJune 2021|Complete|14.0
77`3523 <https://wg21.link/LWG3523>`__``iota_view::sentinel`` is not always ``iota_view``'s sentinelJune 2021|ranges|
78`3526 <https://wg21.link/LWG3526>`__Return types of ``uses_allocator_construction_args`` unspecifiedJune 2021
79`3527 <https://wg21.link/LWG3527>`__``uses_allocator_construction_args`` handles rvalue pairs of rvalue references incorrectlyJune 2021
80`3528 <https://wg21.link/LWG3528>`__``make_from_tuple`` can perform (the equivalent of) a C-style castJune 2021
81`3529 <https://wg21.link/LWG3529>`__``priority_queue(first, last)`` should construct ``c`` with ``(first, last)``June 2021|Complete|14.0
82`3530 <https://wg21.link/LWG3530>`__``BUILTIN-PTR-MEOW`` should not opt the type out of syntactic checksJune 2021
83`3532 <https://wg21.link/LWG3532>`__``split_view<V, P>::inner-iterator<true>::operator++(int)`` should depend on ``Base``June 2021|ranges|
84`3533 <https://wg21.link/LWG3533>`__Make ``base() const &`` consistent across iterator wrappers that supports ``input_iterators``June 2021|Complete|14.0|ranges|
85`3536 <https://wg21.link/LWG3536>`__Should ``chrono::from_stream()`` assign zero to duration for failure?June 2021|chrono|
86`3539 <https://wg21.link/LWG3539>`__``format_to`` must not copy models of ``output_iterator<const charT&>``June 2021|Complete|14.0|format|
87`3540 <https://wg21.link/LWG3540>`__§[format.arg] There should be no const in ``basic_format_arg(const T* p)``June 2021|Complete|14.0|format|
88`3541 <https://wg21.link/LWG3541>`__``indirectly_readable_traits`` should be SFINAE-friendly for all typesJune 2021|Complete|14.0|ranges|
89`3542 <https://wg21.link/LWG3542>`__``basic_format_arg`` mishandles ``basic_string_view`` with custom traitsJune 2021|Complete|14.0|format|
90`3543 <https://wg21.link/LWG3543>`__Definition of when ``counted_iterators`` refer to the same sequence isn't quite rightJune 2021|Nothing To Do||ranges|
91`3544 <https://wg21.link/LWG3544>`__``format-arg-store::args`` is unintentionally not exposition-onlyJune 2021|Complete|14.0|format|
92`3546 <https://wg21.link/LWG3546>`__``common_iterator``'s postfix-proxy is not quite rightJune 2021|ranges|
93`3548 <https://wg21.link/LWG3548>`__``shared_ptr`` construction from ``unique_ptr`` should move (not copy) the deleterJune 2021|Complete|15.0
94`3549 <https://wg21.link/LWG3549>`__``view_interface`` is overspecified to derive from ``view_base``June 2021|Complete|14.0|ranges|
95`3551 <https://wg21.link/LWG3551>`__``borrowed_{iterator,subrange}_t`` are overspecifiedJune 2021|Nothing To Do||ranges|
96`3552 <https://wg21.link/LWG3552>`__Parallel specialized memory algorithms should require forward iteratorsJune 2021
97`3553 <https://wg21.link/LWG3553>`__Useless constraint in ``split_view::outer-iterator::value_type::begin()``June 2021|ranges|
98`3555 <https://wg21.link/LWG3555>`__``{transform,elements}_view::iterator::iterator_concept`` should consider const-qualification of the underlying rangeJune 2021|ranges|
99
100`2191 <https://wg21.link/LWG2191>`__Incorrect specification of ``match_results(match_results&&)``October 2021|Nothing To Do|
101`2381 <https://wg21.link/LWG2381>`__Inconsistency in parsing floating point numbersOctober 2021
102`2762 <https://wg21.link/LWG2762>`__``unique_ptr operator*()`` should be ``noexcept``October 2021
103`3121 <https://wg21.link/LWG3121>`__``tuple`` constructor constraints for ``UTypes&&...`` overloadsOctober 2021
104`3123 <https://wg21.link/LWG3123>`__``duration`` constructor from representation shouldn't be effectively non-throwingOctober 2021|chrono|
105`3146 <https://wg21.link/LWG3146>`__Excessive unwrapping in ``std::ref/cref``October 2021|Complete|14.0
106`3152 <https://wg21.link/LWG3152>`__``common_type`` and ``common_reference`` have flaws in commonOctober 2021
107`3293 <https://wg21.link/LWG3293>`__``move_iterator operator+()`` has incorrect constraintsOctober 2021|Complete|15.0
108`3361 <https://wg21.link/LWG3361>`__``safe_range<SomeRange&>`` caseOctober 2021|Nothing To Do||ranges|
109`3392 <https://wg21.link/LWG3392>`__``ranges::distance()`` cannot be used on a move-only iterator with a sized sentinelOctober 2021|Complete|14.0|ranges|
110`3407 <https://wg21.link/LWG3407>`__Some problems with the wording changes of P1739R4October 2021|Complete|15.0|ranges|
111`3422 <https://wg21.link/LWG3422>`__Issues of ``seed_seq``'s constructorsOctober 2021|Complete|14.0
112`3470 <https://wg21.link/LWG3470>`__``convertible-to-non-slicing`` seems to reject valid caseOctober 2021|Complete|14.0|ranges|
113`3480 <https://wg21.link/LWG3480>`__``directory_iterator`` and ``recursive_directory_iterator`` are not C++20 rangesOctober 2021|Complete|14.0|ranges|
114`3498 <https://wg21.link/LWG3498>`__Inconsistent ``noexcept``-specifiers for ``basic_syncbuf``October 2021
115`3535 <https://wg21.link/LWG3535>`__``join_view::iterator::iterator_category`` and ``::iterator_concept`` lieOctober 2021|Complete|15.0|ranges|
116`3554 <https://wg21.link/LWG3554>`__``chrono::parse`` needs ``const charT*`` and ``basic_string_view<charT>`` overloadsOctober 2021|chrono|
117`3557 <https://wg21.link/LWG3557>`__The ``static_cast`` expression in ``convertible_to`` has the wrong operandOctober 2021|Complete|14.0
118`3559 <https://wg21.link/LWG3559>`__Semantic requirements of ``sized_range`` is circularOctober 2021|Nothing To Do||ranges|
119`3560 <https://wg21.link/LWG3560>`__``ranges::equal`` and ``ranges::is_permutation`` should short-circuit for ``sized_ranges``October 2021|ranges|
120`3561 <https://wg21.link/LWG3561>`__Issue with internal counter in ``discard_block_engine``October 2021
121`3563 <https://wg21.link/LWG3563>`__``keys_view`` example is brokenOctober 2021|ranges|
122`3566 <https://wg21.link/LWG3566>`__Constraint recursion for ``operator<=>(optional<T>, U)``October 2021|spaceship|
123`3567 <https://wg21.link/LWG3567>`__Formatting move-only iterators take twoOctober 2021|Complete|16.0|format| |ranges|
124`3568 <https://wg21.link/LWG3568>`__``basic_istream_view`` needs to initialize ``value_``October 2021|Complete|16.0|ranges|
125`3570 <https://wg21.link/LWG3570>`__``basic_osyncstream::emit`` should be an unformatted output functionOctober 2021
126`3571 <https://wg21.link/LWG3571>`__``flush_emit`` should set ``badbit`` if the ``emit`` call failsOctober 2021
127`3572 <https://wg21.link/LWG3572>`__``copyable-box`` should be fully ``constexpr``October 2021|Complete|14.0|ranges|
128`3573 <https://wg21.link/LWG3573>`__Missing Throws element for ``basic_string_view(It begin, End end)``October 2021|Complete|14.0
129`3574 <https://wg21.link/LWG3574>`__``common_iterator`` should be completely ``constexpr``-ableOctober 2021|Complete|14.0|ranges|
130`3580 <https://wg21.link/LWG3580>`__``iota_view``'s ``iterator``'s binary ``operator+`` should be improvedOctober 2021|Complete|14.0|ranges|
131`3581 <https://wg21.link/LWG3581>`__The range constructor makes ``basic_string_view`` not trivially move constructibleOctober 2021|Complete|14.0|ranges|
132`3585 <https://wg21.link/LWG3585>`__``variant`` converting assignment with immovable alternativeOctober 2021
133`3589 <https://wg21.link/LWG3589>`__The ``const`` lvalue reference overload of ``get`` for ``subrange`` does not constrain ``I`` to be ``copyable`` when ``N == 0``October 2021|Complete|14.0|ranges|
134`3590 <https://wg21.link/LWG3590>`__``split_view::base() const &`` is overconstrainedOctober 2021|Complete|16.0|ranges|
135`3591 <https://wg21.link/LWG3591>`__``lazy_split_view<input_view>::inner-iterator::base() &&`` invalidates outer iteratorsOctober 2021|ranges|
136`3592 <https://wg21.link/LWG3592>`__``lazy_split_view`` needs to check the simpleness of PatternOctober 2021|ranges|
137`3593 <https://wg21.link/LWG3593>`__Several iterators' ``base() const &`` and ``lazy_split_view::outer-iterator::value_type::end()`` missing ``noexcept``October 2021|ranges|
138`3595 <https://wg21.link/LWG3595>`__Exposition-only classes proxy and postfix-proxy for ``common_iterator`` should be fully ``constexpr``October 2021|Complete|14.0|ranges|
139
140`3088 <https://wg21.link/LWG3088>`__``forward_list::merge`` behaviour unclear when passed ``*this``February 2022
141`3471 <https://wg21.link/LWG3471>`__``polymorphic_allocator::allocate`` does not satisfy ``Cpp17Allocator`` requirementsFebruary 2022
142`3525 <https://wg21.link/LWG3525>`__``uses_allocator_construction_args`` fails to handle types convertible to ``pair``February 2022
143`3598 <https://wg21.link/LWG3598>`__``system_category().default_error_condition(0)`` is underspecifiedFebruary 2022
144`3601 <https://wg21.link/LWG3601>`__common_iterator's postfix-proxy needs ``indirectly_readable`` February 2022|ranges|
145`3607 <https://wg21.link/LWG3607>`__``contiguous_iterator`` should not be allowed to have custom ``iter_move`` and ``iter_swap`` behaviorFebruary 2022|Nothing to do||ranges|
146`3610 <https://wg21.link/LWG3610>`__``iota_view::size`` sometimes rejects integer-class typesFebruary 2022|ranges|
147`3612 <https://wg21.link/LWG3612>`__Inconsistent pointer alignment in ``std::format`` February 2022|Complete|14.0|format|
148`3616 <https://wg21.link/LWG3616>`__LWG 3498 seems to miss the non-member ``swap`` for ``basic_syncbuf`` February 2022
149`3618 <https://wg21.link/LWG3618>`__Unnecessary ``iter_move`` for ``transform_view::iterator`` February 2022|ranges|
150`3619 <https://wg21.link/LWG3619>`__Specification of ``vformat_to`` contains ill-formed ``formatted_size`` callsFebruary 2022|Nothing to do||format|
151`3621 <https://wg21.link/LWG3621>`__Remove feature-test macro ``__cpp_lib_monadic_optional`` February 2022|Complete|15.0
152`3632 <https://wg21.link/LWG3632>`__``unique_ptr`` "Mandates: This constructor is not selected by class template argument deduction"February 2022|Nothing to do|
153`3643 <https://wg21.link/LWG3643>`__Missing ``constexpr`` in ``std::counted_iterator`` February 2022|ranges|
154`3648 <https://wg21.link/LWG3648>`__``format`` should not print ``bool`` with ``'c'`` February 2022|Complete|15.0|format|
155`3649 <https://wg21.link/LWG3649>`__[fund.ts.v2] Reinstate and bump ``__cpp_lib_experimental_memory_resource`` feature test macroFebruary 2022
156`3650 <https://wg21.link/LWG3650>`__Are ``std::basic_string`` 's ``iterator`` and ``const_iterator`` constexpr iterators?February 2022|Nothing to do|
157`3654 <https://wg21.link/LWG3654>`__``basic_format_context::arg(size_t)`` should be ``noexcept`` February 2022|Complete|15.0|format|
158`3657 <https://wg21.link/LWG3657>`__``std::hash<std::filesystem::path>`` is not enabledFebruary 2022|Complete|17.0
159`3660 <https://wg21.link/LWG3660>`__``iterator_traits<common_iterator>::pointer`` should conform to §[iterator.traits]February 2022|Complete|14.0|ranges|
160`3661 <https://wg21.link/LWG3661>`__``constinit atomic<shared_ptr<T>> a(nullptr);`` should workFebruary 2022
161
162`3564 <https://wg21.link/LWG3564>`__``transform_view::iterator<true>::value_type`` and ``iterator_category`` should use ``const F&``July 2022|ranges|
163`3617 <https://wg21.link/LWG3617>`__``function``/``packaged_task`` deduction guides and deducing ``this``July 2022
164`3656 <https://wg21.link/LWG3656>`__Inconsistent bit operations returning a countJuly 2022|Complete|15.0
165`3659 <https://wg21.link/LWG3659>`__Consider ``ATOMIC_FLAG_INIT`` undeprecationJuly 2022|Complete|15.0
166`3670 <https://wg21.link/LWG3670>`__``Cpp17InputIterators`` don't have integer-class difference typesJuly 2022|ranges|
167`3671 <https://wg21.link/LWG3671>`__``atomic_fetch_xor`` missing from ``stdatomic.h``July 2022
168`3672 <https://wg21.link/LWG3672>`__``common_iterator::operator->()`` should return by valueJuly 2022|ranges|
169`3683 <https://wg21.link/LWG3683>`__``operator==`` for ``polymorphic_allocator`` cannot deduce template argument in common casesJuly 2022
170`3687 <https://wg21.link/LWG3687>`__``expected<cv void, E>`` move constructor should moveJuly 2022|Complete|16.0
171`3692 <https://wg21.link/LWG3692>`__``zip_view::iterator``'s ``operator<=>`` is overconstrainedJuly 2022|ranges| |spaceship|
172`3701 <https://wg21.link/LWG3701>`__Make ``formatter<remove_cvref_t<const charT[N]>, charT>`` requirement explicitJuly 2022|format|
173`3702 <https://wg21.link/LWG3702>`__Should ``zip_transform_view::iterator`` remove ``operator<``July 2022|ranges| |spaceship|
174`3703 <https://wg21.link/LWG3703>`__Missing requirements for ``expected<T, E>`` requires ``is_void<T>``July 2022|Complete|16.0
175`3704 <https://wg21.link/LWG3704>`__LWG 2059 added overloads that might be ill-formed for setsJuly 2022
176`3705 <https://wg21.link/LWG3705>`__Hashability shouldn't depend on basic_string's allocatorJuly 2022|Complete|16.0
177`3707 <https://wg21.link/LWG3707>`__chunk_view::outer-iterator::value_type::size should return unsigned typeJuly 2022|ranges|
178`3708 <https://wg21.link/LWG3708>`__``take_while_view::sentinel``'s conversion constructor should moveJuly 2022|Complete|16.0|ranges|
179`3709 <https://wg21.link/LWG3709>`__LWG-3703 was underly ambitiousJuly 2022
180`3710 <https://wg21.link/LWG3710>`__The ``end`` of ``chunk_view`` for input ranges can be ``const``July 2022|ranges|
181`3711 <https://wg21.link/LWG3711>`__Missing preconditions for slide_view constructorJuly 2022|ranges|
182`3712 <https://wg21.link/LWG3712>`__``chunk_view`` and ``slide_view`` should not be ``default_initializable``July 2022|ranges|
183`3713 <https://wg21.link/LWG3713>`__Sorted with respect to comparator (only)July 2022
184`3715 <https://wg21.link/LWG3715>`__``view_interface::empty`` is overconstrainedJuly 2022|ranges|
185`3719 <https://wg21.link/LWG3719>`__Directory iterators should be usable with default sentinelJuly 2022|ranges|
186`3721 <https://wg21.link/LWG3721>`__Allow an ``arg-id`` with a value of zero for ``width`` in ``std-format-spec``July 2022|Complete|16.0|format|
187`3724 <https://wg21.link/LWG3724>`__``decay-copy`` should be constrainedJuly 2022|Complete|14.0
188
189`3028 <https://wg21.link/LWG3028>`__Container requirements tables should distinguish ``const`` and non-``const`` variablesNovember 2022
190`3118 <https://wg21.link/LWG3118>`__``fpos`` equality comparison unspecifiedNovember 2022
191`3177 <https://wg21.link/LWG3177>`__Limit permission to specialize variable templates to program-defined typesNovember 2022|Nothing to do|
192`3515 <https://wg21.link/LWG3515>`__§[stacktrace.basic.nonmem]: ``operator<<`` should be less templatizedNovember 2022
193`3545 <https://wg21.link/LWG3545>`__``std::pointer_traits`` should be SFINAE-friendlyNovember 2022
194`3569 <https://wg21.link/LWG3569>`__``join_view`` fails to support ranges of ranges with non-default_initializable iteratorsNovember 2022|ranges|
195`3594 <https://wg21.link/LWG3594>`__``inout_ptr`` — inconsistent ``release()`` in destructorNovember 2022
196`3597 <https://wg21.link/LWG3597>`__Unsigned integer types don't model advanceableNovember 2022|ranges|
197`3600 <https://wg21.link/LWG3600>`__Making ``istream_iterator`` copy constructor trivial is an ABI breakNovember 2022
198`3629 <https://wg21.link/LWG3629>`__``make_error_code`` and ``make_error_condition`` are customization pointsNovember 2022|Complete|16.0
199`3636 <https://wg21.link/LWG3636>`__``formatter<T>::format`` should be ``const``-qualifiedNovember 2022|Complete|16.0|format|
200`3646 <https://wg21.link/LWG3646>`__``std::ranges::view_interface::size`` returns a signed typeNovember 2022|Complete|16.0|ranges|
201`3677 <https://wg21.link/LWG3677>`__Is a cv-qualified ``pair`` specially handled in uses-allocator construction?November 2022
202`3717 <https://wg21.link/LWG3717>`__``common_view::end`` should improve ``random_access_range`` caseNovember 2022|ranges|
203`3732 <https://wg21.link/LWG3732>`__``prepend_range`` and ``append_range`` can't be amortized constant timeNovember 2022|Nothing to do||ranges|
204`3736 <https://wg21.link/LWG3736>`__``move_iterator`` missing ``disable_sized_sentinel_for`` specializationNovember 2022|ranges|
205`3737 <https://wg21.link/LWG3737>`__``take_view::sentinel`` should provide ``operator-``November 2022|ranges|
206`3738 <https://wg21.link/LWG3738>`__Missing preconditions for ``take_view`` constructorNovember 2022|Complete|16.0|ranges|
207`3743 <https://wg21.link/LWG3743>`__``ranges::to``'s reserve may be ill-formedNovember 2022|ranges|
208`3745 <https://wg21.link/LWG3745>`__``std::atomic_wait`` and its friends lack ``noexcept``November 2022|Complete|16.0
209`3746 <https://wg21.link/LWG3746>`__``optional``'s spaceship with ``U`` with a type derived from optional causes infinite constraint meta-recursionNovember 2022|spaceship|
210`3747 <https://wg21.link/LWG3747>`__``ranges::uninitialized_copy_n``, ``ranges::uninitialized_move_n``, and ``ranges::destroy_n`` should use ``std::move``November 2022|ranges|
211`3750 <https://wg21.link/LWG3750>`__Too many papers bump ``__cpp_lib_format``November 2022|format|
212`3751 <https://wg21.link/LWG3751>`__Missing feature macro for ``flat_set``November 2022|flat_containers|
213`3753 <https://wg21.link/LWG3753>`__Clarify entity vs. freestanding entityNovember 2022
214`3754 <https://wg21.link/LWG3754>`__Class template expected synopsis contains declarations that do not match the detailed descriptionNovember 2022|Nothing to do|
215`3755 <https://wg21.link/LWG3755>`__``tuple-for-each`` can call ``user-defined`` ``operator,``November 2022|Complete|17.0
216`3757 <https://wg21.link/LWG3757>`__What's the effect of ``std::forward_like<void>(x)``?November 2022
217`3759 <https://wg21.link/LWG3759>`__``ranges::rotate_copy`` should use ``std::move``November 2022|ranges|
218`3760 <https://wg21.link/LWG3760>`__``cartesian_product_view::iterator``'s ``parent_`` is never validNovember 2022|ranges|
219`3761 <https://wg21.link/LWG3761>`__``cartesian_product_view::iterator::operator-`` should pass by referenceNovember 2022|ranges|
220`3762 <https://wg21.link/LWG3762>`__``generator::iterator::operator==`` should pass by referenceNovember 2022
221`3764 <https://wg21.link/LWG3764>`__``reference_wrapper::operator()`` should propagate noexceptNovember 202217.0|Complete|
222`3765 <https://wg21.link/LWG3765>`__``const_sentinel`` should be constrainedNovember 2022|ranges|
223`3766 <https://wg21.link/LWG3766>`__``view_interface::cbegin`` is underconstrainedNovember 2022|ranges|
224`3770 <https://wg21.link/LWG3770>`__``const_sentinel_t`` is missingNovember 2022|ranges|
225`3773 <https://wg21.link/LWG3773>`__``views::zip_transform`` still requires ``F`` to be ``copy_constructible`` when empty packNovember 2022|ranges|
226`3774 <https://wg21.link/LWG3774>`__``<flat_set>`` should include ``<compare>``November 2022|flat_containers|
227`3775 <https://wg21.link/LWG3775>`__Broken dependencies in the ``Cpp17Allocator`` requirementsNovember 2022
228`3778 <https://wg21.link/LWG3778>`__``vector<bool>`` missing exception specificationsNovember 2022
229`3781 <https://wg21.link/LWG3781>`__The exposition-only alias templates ``cont-key-type`` and ``cont-mapped-type`` should be removedNovember 2022|Nothing to do|
230`3782 <https://wg21.link/LWG3782>`__Should ``<math.h>`` declare ``::lerp``?November 2022|Complete|17.0
231`3784 <https://wg21.link/LWG3784>`__std.compat should not provide ``::byte`` and its friendsNovember 2022
232`3785 <https://wg21.link/LWG3785>`__``ranges::to`` is over-constrained on the destination type being a rangeNovember 2022|ranges|
233`3788 <https://wg21.link/LWG3788>`__``jthread::operator=(jthread&&)`` postconditions are unimplementable under self-assignmentNovember 2022
234`3792 <https://wg21.link/LWG3792>`__``__cpp_lib_constexpr_algorithms`` should also be defined in ``<utility>``November 2022|Complete|16.0
235`3795 <https://wg21.link/LWG3795>`__Self-move-assignment of ``std::future`` and ``std::shared_future`` have unimplementable postconditionsNovember 2022
236`3796 <https://wg21.link/LWG3796>`__``movable-box`` as member should use ``default-initialization`` instead of ``copy-initialization``November 2022|ranges|
237`3798 <https://wg21.link/LWG3798>`__Rvalue reference and ``iterator_category``November 2022|Partial| [#note-LWG3798]_|ranges|
238`3801 <https://wg21.link/LWG3801>`__``cartesian_product_view::iterator::distance-from`` ignores the size of last underlying rangeNovember 2022|ranges|
239`3814 <https://wg21.link/LWG3814>`__Add freestanding items requested by NB commentsNovember 2022
240`3816 <https://wg21.link/LWG3816>`__``flat_map`` and ``flat_multimap`` should impose sequence container requirementsNovember 2022|flat_containers|
241`3817 <https://wg21.link/LWG3817>`__Missing preconditions on ``forward_list`` modifiersNovember 2022
242`3818 <https://wg21.link/LWG3818>`__Exposition-only concepts are not described in library introNovember 2022|Nothing to do|
243`3822 <https://wg21.link/LWG3822>`__Avoiding normalization in ``filesystem::weakly_canonical``November 2022
244`3823 <https://wg21.link/LWG3823>`__Unnecessary precondition for ``is_aggregate``November 2022
245`3824 <https://wg21.link/LWG3824>`__Number of ``bind`` placeholders is underspecifiedNovember 2022|Nothing to do|
246`3826 <https://wg21.link/LWG3826>`__Redundant specification [for overload of yield_value]November 2022
247
248`2195 <https://wg21.link/LWG2195>`__Missing constructors for ``match_results``February 2023
249`2295 <https://wg21.link/LWG2295>`__Locale name when the provided ``Facet`` is a ``nullptr``February 2023
250`3032 <https://wg21.link/LWG3032>`__``ValueSwappable`` requirement missing for ``push_heap`` and ``make_heap``February 2023
251`3085 <https://wg21.link/LWG3085>`__``char_traits::copy`` precondition too weakFebruary 2023
252`3664 <https://wg21.link/LWG3664>`__`LWG 3392 <https://wg21.link/LWG3392>`__ ``broke std::ranges::distance(a, a+3)``February 2023|ranges|
253`3720 <https://wg21.link/LWG3720>`__Restrict the valid types of ``arg-id`` for width and precision in ``std-format-spec``February 2023|format|
254`3756 <https://wg21.link/LWG3756>`__Is the ``std::atomic_flag`` class signal-safe?February 2023
255`3769 <https://wg21.link/LWG3769>`__``basic_const_iterator::operator==`` causes infinite constraint recursionFebruary 2023|spaceship|
256`3807 <https://wg21.link/LWG3807>`__The feature test macro for ``ranges::find_last`` should be renamedFebruary 2023|ranges|
257`3811 <https://wg21.link/LWG3811>`__``views::as_const`` on ``ref_view<T>`` should return ``ref_view<const T>``February 2023|ranges|
258`3820 <https://wg21.link/LWG3820>`__``cartesian_product_view::iterator::prev`` is not quite rightFebruary 2023|ranges|
259`3825 <https://wg21.link/LWG3825>`__Missing compile-time argument ``id`` check in ``basic_format_parse_context::next_arg_id``February 2023|format|
260`3204 <https://wg21.link/LWG3204>`__``sub_match::swap`` only swaps the base classFebruary 2023|Complete|17.0
261`3733 <https://wg21.link/LWG3733>`__``ranges::to`` misuses ``cpp17-input-iterator``February 2023|ranges|
262`3742 <https://wg21.link/LWG3742>`__``deque::prepend_range`` needs to permuteFebruary 2023|ranges|
263`3790 <https://wg21.link/LWG3790>`__`P1467 <https://wg21.link/P1467>`__ accidentally changed ``nexttoward``'s signatureFebruary 2023
264`3819 <https://wg21.link/LWG3819>`__``reference_meows_from_temporary`` should not use ``is_meowible``February 2023
265`3821 <https://wg21.link/LWG3821>`__``uses_allocator_construction_args`` should have overload for ``pair-like``February 2023
266`3834 <https://wg21.link/LWG3834>`__Missing ``constexpr`` for ``std::intmax_t`` math functions in ``<cinttypes>``February 2023
267`3839 <https://wg21.link/LWG3839>`__``range_formatter``'s ``set_separator``, ``set_brackets``, and ``underlying`` functions should be ``noexcept``February 2023|format|
268`3841 <https://wg21.link/LWG3841>`__``<version>`` should not be "all freestanding"February 2023
269`3842 <https://wg21.link/LWG3842>`__Unclear wording for ``precision`` in ``chrono-format-spec``February 2023|format|
270`3848 <https://wg21.link/LWG3848>`__``adjacent_view``, ``adjacent_transform_view`` and ``slide_view`` missing ``base`` accessorFebruary 2023|ranges|
271`3849 <https://wg21.link/LWG3849>`__``cartesian_product_view::iterator``'s default constructor is overconstrainedFebruary 2023|ranges|
272`3850 <https://wg21.link/LWG3850>`__``views::as_const`` on ``empty_view<T>`` should return ``empty_view<const T>``February 2023|ranges|
273`3851 <https://wg21.link/LWG3851>`__``chunk_view::inner-iterator`` missing custom ``iter_move`` and ``iter_swap``February 2023|ranges|
274`3853 <https://wg21.link/LWG3853>`__``basic_const_iterator<volatile int*>::operator->`` is ill-formedFebruary 2023
275`3857 <https://wg21.link/LWG3857>`__``basic_string_view`` should allow explicit conversion when only traits varyFebruary 2023|Complete|17.0
276`3860 <https://wg21.link/LWG3860>`__``range_common_reference_t`` is missingFebruary 2023|Complete|17.0|ranges|
277`3866 <https://wg21.link/LWG3866>`__Bad Mandates for ``expected::transform_error`` overloadsFebruary 2023
278`3867 <https://wg21.link/LWG3867>`__Should ``std::basic_osyncstream``'s move assignment operator be ``noexcept``?February 2023
279`3441 <https://wg21.link/LWG3441>`__Misleading note about calls to customization pointsFebruary 2023
280`3622 <https://wg21.link/LWG3622>`__Misspecified transitivity of equivalence in §[unord.req.general]February 2023
281`3631 <https://wg21.link/LWG3631>`__``basic_format_arg(T&&)`` should use ``remove_cvref_t<T>`` throughoutFebruary 2023|Complete|15.0
282`3645 <https://wg21.link/LWG3645>`__``resize_and_overwrite`` is overspecified to call its callback with lvaluesFebruary 2023|Complete|14.0
283`3655 <https://wg21.link/LWG3655>`__The ``INVOKE`` operation and union typesFebruary 2023
284`3723 <https://wg21.link/LWG3723>`__``priority_queue::push_range`` needs to ``append_range``February 2023|ranges|
285`3734 <https://wg21.link/LWG3734>`__Inconsistency in ``inout_ptr`` and ``out_ptr`` for empty caseFebruary 2023
286`3772 <https://wg21.link/LWG3772>`__``repeat_view``'s ``piecewise`` constructor is missing PostconditionsFebruary 2023|ranges|
287`3786 <https://wg21.link/LWG3786>`__Flat maps' deduction guide needs to default ``Allocator`` to be usefulFebruary 2023
288`3803 <https://wg21.link/LWG3803>`__``flat_foo`` constructors taking ``KeyContainer`` lack ``KeyCompare`` parameterFebruary 2023
289`3810 <https://wg21.link/LWG3810>`__CTAD for ``std::basic_format_args``February 2023|Complete|17.0|format|
290`3827 <https://wg21.link/LWG3827>`__Deprecate ``<stdalign.h>`` and ``<stdbool.h>`` macrosFebruary 2023
291`3828 <https://wg21.link/LWG3828>`__Sync ``intmax_t`` and ``uintmax_t`` with C2xFebruary 2023
292`3833 <https://wg21.link/LWG3833>`__Remove specialization ``template<size_t N> struct formatter<const charT[N], charT>``February 2023|format|
293`3836 <https://wg21.link/LWG3836>`__``std::expected<bool, E1>`` conversion constructor ``expected(const expected<U, G>&)`` should take precedence over ``expected(U&&)`` with operator ``bool``February 2023
294`3843 <https://wg21.link/LWG3843>`__``std::expected<T,E>::value() &`` assumes ``E`` is copy constructibleFebruary 2023
295`3847 <https://wg21.link/LWG3847>`__``ranges::to`` can still return viewsFebruary 2023|ranges|
296`3862 <https://wg21.link/LWG3862>`__``basic_const_iterator``'s ``common_type`` specialization is underconstrainedFebruary 2023
297`3865 <https://wg21.link/LWG3865>`__Sorting a range of ``pairs``February 2023|ranges|
298`3869 <https://wg21.link/LWG3869>`__Deprecate ``std::errc`` constants related to UNIX STREAMSFebruary 2023
299`3870 <https://wg21.link/LWG3870>`__Remove ``voidify``February 2023
300`3871 <https://wg21.link/LWG3871>`__Adjust note about ``terminate``February 2023
301`3872 <https://wg21.link/LWG3872>`__``basic_const_iterator`` should have custom ``iter_move``February 2023
302`3875 <https://wg21.link/LWG3875>`__``std::ranges::repeat_view<T, IntegerClass>::iterator`` may be ill-formedFebruary 2023|ranges|
303`3876 <https://wg21.link/LWG3876>`__Default constructor of ``std::layout_XX::mapping`` misses preconditionFebruary 2023
304`3877 <https://wg21.link/LWG3877>`__Incorrect constraints on ``const``-qualified monadic overloads for ``std::expected``February 2023
305`3878 <https://wg21.link/LWG3878>`__import ``std;`` should guarantee initialization of standard iostreams objectsFebruary 2023
306`3879 <https://wg21.link/LWG3879>`__``erase_if`` for ``flat_{,multi}set`` is incorrectly specifiedFebruary 2023
307`3880 <https://wg21.link/LWG3880>`__Clarify ``operator+=`` complexity for ``{chunk,stride}_view::iterator``February 2023|ranges|
308`3881 <https://wg21.link/LWG3881>`__Incorrect formatting of container adapters backed by ``std::string``February 2023|format|
309
310`3343 <https://wg21.link/LWG3343>`__Ordering of calls to ``unlock()`` and ``notify_all()`` in Effects element of ``notify_all_at_thread_exit()`` should be reversedNot Yet Adopted|Complete|16.0