llvm-project/libcxx/docs/Status/Cxx2bIssues.csv
Mark de Wever 9e5c293492 [libc++] Removes __cpp_lib_monadic_optional.
P0798R8 "Monadic operations for std::optional" has been implemented, so
this LWG issue can be adopted.

During review it was discovered another paper bumped the macro. The
part affecting optional of this paper is done, the variant isn't. The
status page is updated to reflect the current state.

Implements
- LWG 3621 Remove feature-test macro __cpp_lib_monadic_optional

Updates status of
- P2231R1 Missing constexpr in std::optional and std::variant

Reviewed By: #libc, philnik, ldionne

Differential Revision: https://reviews.llvm.org/D125813
2022-05-31 19:18:34 +02:00

22 KiB

1Issue #Issue NameMeetingStatusFirst released versionLabels
2`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||ranges|
3`3432 <https://wg21.link/LWG3432>`__Missing requirement for ``comparison_category``November 2020|spaceship|
4`3450 <https://wg21.link/LWG3450>`__The const overloads of ``take_while_view::begin/end`` are underconstrainedNovember 2020|ranges|
5`3306 <https://wg21.link/LWG3306>`__``ranges::advance`` violates its preconditionsNovember 2020|Complete|14.0|ranges|
6`3403 <https://wg21.link/LWG3403>`__Domain of ``ranges::ssize(E)`` doesn't ``match ranges::size(E)``November 2020|ranges|
7`3404 <https://wg21.link/LWG3404>`__Finish removing subrange's conversions from pair-likeNovember 2020|ranges|
8`3405 <https://wg21.link/LWG3405>`__``common_view``'s converting constructor is bad, tooNovember 2020|Complete|14.0|ranges|
9`3406 <https://wg21.link/LWG3406>`__``elements_view::begin()`` and ``elements_view::end()`` have incompatible constraintsNovember 2020|ranges|
10`3420 <https://wg21.link/LWG3420>`__cpp17-iterator should check that the type looks like an iterator firstNovember 2020|Complete|14.0|ranges|
11`3421 <https://wg21.link/LWG3421>`__Imperfect ADL emulation for boolean-testableNovember 2020|Nothing To Do||ranges|
12`3426 <https://wg21.link/LWG3426>`__``operator<=>(const unique_ptr<T, D>&, nullptr_t)`` can't get no satisfactionNovember 2020|spaceship|
13`3427 <https://wg21.link/LWG3427>`__``operator<=>(const shared_ptr<T>&, nullptr_t)`` definition ill-formedNovember 2020|spaceship|
14`3428 <https://wg21.link/LWG3428>`__``single_view``'s in place constructor should be explicitNovember 2020|Complete|14.0|ranges|
15`3446 <https://wg21.link/LWG3446>`__``indirectly_readable_traits`` ambiguity for types with both ``value_type`` and ``element_type``November 2020|Complete|14.0|ranges|
16`3448 <https://wg21.link/LWG3448>`__``transform_view``'s ``sentinel<false>`` not comparable with ``iterator<true>``November 2020|ranges|
17`3449 <https://wg21.link/LWG3449>`__``take_view`` and ``take_while_view``'s ``sentinel<false>`` not comparable with their ``const iterator``November 2020|ranges|
18`3453 <https://wg21.link/LWG3453>`__Generic code cannot call ``ranges::advance(i, s)``November 2020|Nothing To Do||ranges|
19`3465 <https://wg21.link/LWG3465>`__``compare_partial_order_fallback`` requires ``F < E``November 2020|Complete|14.0|spaceship|
20`3472 <https://wg21.link/LWG3472>`__``counted_iterator`` is missing preconditionsNovember 2020|Complete|14.0|ranges|
21`3473 <https://wg21.link/LWG3473>`__Normative encouragement in non-normative noteNovember 2020|Complete|15.0|format|
22`3474 <https://wg21.link/LWG3474>`__Nesting ``join_views`` is broken because of CTADNovember 2020|Complete|15.0|ranges|
23`3477 <https://wg21.link/LWG3477>`__Simplify constraints for ``semiregular-box``November 2020|ranges|
24`3482 <https://wg21.link/LWG3482>`__``drop_view``'s const begin should additionally require ``sized_range``November 2020|Complete|14.0|ranges|
25`3483 <https://wg21.link/LWG3483>`__``transform_view::iterator``'s difference is overconstrainedNovember 2020|Complete|14.0|ranges|
26`3391 <https://wg21.link/LWG3391>`__Problems with ``counted_iterator``/``move_iterator::base() const &``February 2021|ranges|
27`3433 <https://wg21.link/LWG3433>`__``subrange::advance(n)`` has UB when ``n < 0``February 2021|Complete|14.0|ranges|
28`3490 <https://wg21.link/LWG3490>`__``ranges::drop_while_view::begin()`` is missing a preconditionFebruary 2021|Nothing To Do||ranges|
29`3492 <https://wg21.link/LWG3492>`__Minimal improvements to ``elements_view::iterator``February 2021|ranges|
30`3494 <https://wg21.link/LWG3494>`__Allow ranges to be conditionally borrowedFebruary 2021Superseded by `P2017R1 <https://wg21.link/P2017R1>`__|ranges|
31`3500 <https://wg21.link/LWG3500>`__``join_view::iterator::operator->()`` is bogusFebruary 2021|Complete|14.0|ranges|
32`3502 <https://wg21.link/LWG3502>`__``elements_view`` should not be allowed to return dangling referenceFebruary 2021|ranges|
33`3505 <https://wg21.link/LWG3505>`__``split_view::outer-iterator::operator++`` misspecifiedFebruary 2021|ranges|
34`3410 <https://wg21.link/LWG3410>`__``lexicographical_compare_three_way`` is overspecifiedJune 2021|spaceship|
35`3462 <https://wg21.link/LWG3462>`__§[formatter.requirements]: Formatter requirements forbid use of ``fc.arg()``June 2021|format|
36`3481 <https://wg21.link/LWG3481>`__``viewable_range`` mishandles lvalue move-only viewsJune 2021Superseded by `P2415R2 <https://wg21.link/P2415R2>`__|ranges|
37`3517 <https://wg21.link/LWG3517>`__``join_view::iterator``'s ``iter_swap`` is underconstrainedJune 2021|Complete|14.0|ranges|
38`3520 <https://wg21.link/LWG3520>`__``iter_move`` and ``iter_swap`` are inconsistent for ``transform_view::iterator``June 2021|Complete|14.0|ranges|
39`3522 <https://wg21.link/LWG3522>`__Missing requirement on ``InputIterator`` template parameter for ``priority_queue`` constructorsJune 2021|Complete|14.0|ranges|
40`3523 <https://wg21.link/LWG3523>`__``iota_view::sentinel`` is not always ``iota_view``'s sentinelJune 2021|ranges|
41`3532 <https://wg21.link/LWG3532>`__``split_view<V, P>::inner-iterator<true>::operator++(int)`` should depend on ``Base``June 2021|ranges|
42`3533 <https://wg21.link/LWG3533>`__Make ``base() const &`` consistent across iterator wrappers that supports ``input_iterators``June 2021|Complete|14.0|ranges|
43`3536 <https://wg21.link/LWG3536>`__Should ``chrono::from_stream()`` assign zero to duration for failure?June 2021|chrono|
44`3539 <https://wg21.link/LWG3539>`__``format_to`` must not copy models of ``output_iterator<const charT&>``June 2021|format|
45`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|
46`3541 <https://wg21.link/LWG3541>`__``indirectly_readable_traits`` should be SFINAE-friendly for all typesJune 2021|Complete|14.0|ranges|
47`3542 <https://wg21.link/LWG3542>`__``basic_format_arg`` mishandles ``basic_string_view`` with custom traitsJune 2021|Complete|14.0|format|
48`3543 <https://wg21.link/LWG3543>`__Definition of when ``counted_iterators`` refer to the same sequence isn't quite rightJune 2021|Nothing To Do||ranges|
49`3544 <https://wg21.link/LWG3544>`__``format-arg-store::args`` is unintentionally not exposition-onlyJune 2021|Complete|14.0|format|
50`3546 <https://wg21.link/LWG3546>`__``common_iterator``'s postfix-proxy is not quite rightJune 2021|ranges|
51`3549 <https://wg21.link/LWG3549>`__``view_interface`` is overspecified to derive from ``view_base``June 2021|Complete|14.0|ranges|
52`3551 <https://wg21.link/LWG3551>`__``borrowed_{iterator,subrange}_t`` are overspecifiedJune 2021|Nothing To Do||ranges|
53`3553 <https://wg21.link/LWG3553>`__Useless constraint in ``split_view::outer-iterator::value_type::begin()``June 2021|ranges|
54`3555 <https://wg21.link/LWG3555>`__``{transform,elements}_view::iterator::iterator_concept`` should consider const-qualification of the underlying rangeJune 2021|ranges|
55`3123 <https://wg21.link/LWG3123>`__``duration`` constructor from representation shouldn't be effectively non-throwingOctober 2021|chrono|
56`3293 <https://wg21.link/LWG3293>`__``move_iterator operator+()`` has incorrect constraintsOctober 2021|Complete|15.0|ranges|
57`3361 <https://wg21.link/LWG3361>`__``safe_range<SomeRange&>`` caseOctober 2021|Nothing To Do||ranges|
58`3392 <https://wg21.link/LWG3392>`__``ranges::distance()`` cannot be used on a move-only iterator with a sized sentinelOctober 2021|Complete|14.0|ranges|
59`3407 <https://wg21.link/LWG3407>`__Some problems with the wording changes of P1739R4October 2021|Complete|15.0|ranges|
60`3470 <https://wg21.link/LWG3470>`__``convertible-to-non-slicing`` seems to reject valid caseOctober 2021|Complete|14.0|ranges|
61`3480 <https://wg21.link/LWG3480>`__``directory_iterator`` and ``recursive_directory_iterator`` are not C++20 rangesOctober 2021|Complete|14.0|ranges|
62`3535 <https://wg21.link/LWG3535>`__``join_view::iterator::iterator_category`` and ``::iterator_concept`` lieOctober 2021|Complete|15.0|ranges|
63`3554 <https://wg21.link/LWG3554>`__``chrono::parse`` needs ``const charT*`` and ``basic_string_view<charT>`` overloadsOctober 2021|chrono|
64`3559 <https://wg21.link/LWG3559>`__Semantic requirements of ``sized_range`` is circularOctober 2021|Nothing To Do||ranges|
65`3560 <https://wg21.link/LWG3560>`__``ranges::equal`` and ``ranges::is_permutation`` should short-circuit for ``sized_ranges``October 2021|ranges|
66`3563 <https://wg21.link/LWG3563>`__``keys_view`` example is brokenOctober 2021|ranges|
67`3566 <https://wg21.link/LWG3566>`__Constraint recursion for ``operator<=>(optional<T>, U)``October 2021|spaceship|
68`3567 <https://wg21.link/LWG3567>`__Formatting move-only iterators take twoOctober 2021|format|
69`3568 <https://wg21.link/LWG3568>`__``basic_istream_view`` needs to initialize ``value_``October 2021|ranges|
70`3572 <https://wg21.link/LWG3572>`__``copyable-box`` should be fully ``constexpr``October 2021|Complete|14.0|ranges|
71`3574 <https://wg21.link/LWG3574>`__``common_iterator`` should be completely ``constexpr``-ableOctober 2021|Complete|14.0|ranges|
72`3580 <https://wg21.link/LWG3580>`__``iota_view``'s ``iterator``'s binary ``operator+`` should be improvedOctober 2021|Complete|14.0|ranges|
73`3581 <https://wg21.link/LWG3581>`__The range constructor makes ``basic_string_view`` not trivially move constructibleOctober 2021|Complete|14.0|ranges|
74`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|
75`3590 <https://wg21.link/LWG3590>`__``split_view::base() const &`` is overconstrainedOctober 2021|ranges|
76`3591 <https://wg21.link/LWG3591>`__``lazy_split_view<input_view>::inner-iterator::base() &&`` invalidates outer iteratorsOctober 2021|ranges|
77`3592 <https://wg21.link/LWG3592>`__``lazy_split_view`` needs to check the simpleness of PatternOctober 2021|ranges|
78`3593 <https://wg21.link/LWG3593>`__Several iterators' ``base() const &`` and ``lazy_split_view::outer-iterator::value_type::end()`` missing ``noexcept``October 2021|ranges|
79`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|
80`3601 <https://wg21.link/LWG3601>`__common_iterator's postfix-proxy needs ``indirectly_readable`` February 2022|ranges|
81`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|
82`3610 <https://wg21.link/LWG3610>`__``iota_view::size`` sometimes rejects integer-class typesFebruary 2022|ranges|
83`3612 <https://wg21.link/LWG3612>`__Inconsistent pointer alignment in ``std::format`` February 2022|Complete|14.0|format|
84`3618 <https://wg21.link/LWG3618>`__Unnecessary ``iter_move`` for ``transform_view::iterator`` February 2022|ranges|
85`3619 <https://wg21.link/LWG3619>`__Specification of ``vformat_to`` contains ill-formed ``formatted_size`` callsFebruary 2022|Nothing to do||format|
86`3648 <https://wg21.link/LWG3648>`__``format`` should not print ``bool`` with ``'c'`` February 2022|Complete|15.0|format|
87`3654 <https://wg21.link/LWG3654>`__``basic_format_context::arg(size_t)`` should be ``noexcept`` February 2022|Complete|15.0|format|
88`3645 <https://wg21.link/LWG3645>`__``resize_and_overwrite`` is overspecified to call its callback with lvaluesNot voted in|Complete|14.0
89`3656 <https://wg21.link/LWG3656>`__Inconsistent bit operations returning a countNot voted in|Complete|15.0