forked from OSchip/llvm-project
19 KiB
19 KiB
1 | Issue # | Issue Name | Meeting | Status | First released version | Labels |
---|---|---|---|---|---|---|
2 | `3236 <https://wg21.link/LWG3236>`__ | Random access iterator requirements lack limiting relational operators domain to comparing those from the same range | November 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 underconstrained | November 2020 | |ranges| | ||
5 | `3306 <https://wg21.link/LWG3306>`__ | ``ranges::advance`` violates its preconditions | November 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-like | November 2020 | |ranges| | ||
8 | `3405 <https://wg21.link/LWG3405>`__ | ``common_view``'s converting constructor is bad, too | November 2020 | |Complete| | 14.0 | |ranges| |
9 | `3406 <https://wg21.link/LWG3406>`__ | ``elements_view::begin()`` and ``elements_view::end()`` have incompatible constraints | November 2020 | |ranges| | ||
10 | `3420 <https://wg21.link/LWG3420>`__ | cpp17-iterator should check that the type looks like an iterator first | November 2020 | |Complete| | 14.0 | |ranges| |
11 | `3421 <https://wg21.link/LWG3421>`__ | Imperfect ADL emulation for boolean-testable | November 2020 | |Nothing To Do| | |ranges| | |
12 | `3426 <https://wg21.link/LWG3426>`__ | ``operator<=>(const unique_ptr<T, D>&, nullptr_t)`` can't get no satisfaction | November 2020 | |spaceship| | ||
13 | `3427 <https://wg21.link/LWG3427>`__ | ``operator<=>(const shared_ptr<T>&, nullptr_t)`` definition ill-formed | November 2020 | |spaceship| | ||
14 | `3428 <https://wg21.link/LWG3428>`__ | ``single_view``'s in place constructor should be explicit | November 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 preconditions | November 2020 | |Complete| | 14.0 | |ranges| |
21 | `3473 <https://wg21.link/LWG3473>`__ | Normative encouragement in non-normative note | November 2020 | |Nothing To Do| | |format| | |
22 | `3474 <https://wg21.link/LWG3474>`__ | Nesting ``join_views`` is broken because of CTAD | November 2020 | |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 overconstrained | November 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 precondition | February 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 borrowed | February 2021 | Superseded by `P2017R1 <https://wg21.link/P2017R1>`__ | |ranges| | |
31 | `3500 <https://wg21.link/LWG3500>`__ | ``join_view::iterator::operator->()`` is bogus | February 2021 | |ranges| | ||
32 | `3502 <https://wg21.link/LWG3502>`__ | ``elements_view`` should not be allowed to return dangling reference | February 2021 | |ranges| | ||
33 | `3505 <https://wg21.link/LWG3505>`__ | ``split_view::outer-iterator::operator++`` misspecified | February 2021 | |ranges| | ||
34 | `3410 <https://wg21.link/LWG3410>`__ | ``lexicographical_compare_three_way`` is overspecified | June 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 views | June 2021 | Superseded by `P2415R2 <https://wg21.link/P2415R2>`__ | |ranges| | |
37 | `3517 <https://wg21.link/LWG3517>`__ | ``join_view::iterator``'s ``iter_swap`` is underconstrained | June 2021 | |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`` constructors | June 2021 | |Complete| | 14.0 | |ranges| |
40 | `3523 <https://wg21.link/LWG3523>`__ | ``iota_view::sentinel`` is not always ``iota_view``'s sentinel | June 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 types | June 2021 | |Complete| | 14.0 | |ranges| |
47 | `3542 <https://wg21.link/LWG3542>`__ | ``basic_format_arg`` mishandles ``basic_string_view`` with custom traits | June 2021 | |Complete| | 14.0 | |format| |
48 | `3543 <https://wg21.link/LWG3543>`__ | Definition of when ``counted_iterators`` refer to the same sequence isn't quite right | June 2021 | |Nothing To Do| | |ranges| | |
49 | `3544 <https://wg21.link/LWG3544>`__ | ``format-arg-store::args`` is unintentionally not exposition-only | June 2021 | |Complete| | 14.0 | |format| |
50 | `3546 <https://wg21.link/LWG3546>`__ | ``common_iterator``'s postfix-proxy is not quite right | June 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 overspecified | June 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 range | June 2021 | |ranges| | ||
55 | `3123 <https://wg21.link/LWG3123>`__ | ``duration`` constructor from representation shouldn't be effectively non-throwing | October 2021 | |chrono| | ||
56 | `3293 <https://wg21.link/LWG3293>`__ | ``move_iterator operator+()`` has incorrect constraints | October 2021 | |ranges| | ||
57 | `3361 <https://wg21.link/LWG3361>`__ | ``safe_range<SomeRange&>`` case | October 2021 | |Nothing To Do| | |ranges| | |
58 | `3392 <https://wg21.link/LWG3392>`__ | ``ranges::distance()`` cannot be used on a move-only iterator with a sized sentinel | October 2021 | |Complete| | 14.0 | |ranges| |
59 | `3407 <https://wg21.link/LWG3407>`__ | Some problems with the wording changes of P1739R4 | October 2021 | |ranges| | ||
60 | `3470 <https://wg21.link/LWG3470>`__ | ``convertible-to-non-slicing`` seems to reject valid case | October 2021 | |Complete| | 14.0 | |ranges| |
61 | `3480 <https://wg21.link/LWG3480>`__ | ``directory_iterator`` and ``recursive_directory_iterator`` are not C++20 ranges | October 2021 | |Complete| | 14.0 | |ranges| |
62 | `3535 <https://wg21.link/LWG3535>`__ | ``join_view::iterator::iterator_category`` and ``::iterator_concept`` lie | October 2021 | |ranges| | ||
63 | `3554 <https://wg21.link/LWG3554>`__ | ``chrono::parse`` needs ``const charT*`` and ``basic_string_view<charT>`` overloads | October 2021 | |chrono| | ||
64 | `3559 <https://wg21.link/LWG3559>`__ | Semantic requirements of ``sized_range`` is circular | October 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 broken | October 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 two | October 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``-able | October 2021 | |Complete| | 14.0 | |ranges| |
72 | `3580 <https://wg21.link/LWG3580>`__ | ``iota_view``'s ``iterator``'s binary ``operator+`` should be improved | October 2021 | |Complete| | 14.0 | |ranges| |
73 | `3581 <https://wg21.link/LWG3581>`__ | The range constructor makes ``basic_string_view`` not trivially move constructible | October 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 | |ranges| | ||
75 | `3590 <https://wg21.link/LWG3590>`__ | ``split_view::base() const &`` is overconstrained | October 2021 | |ranges| | ||
76 | `3591 <https://wg21.link/LWG3591>`__ | ``lazy_split_view<input_view>::inner-iterator::base() &&`` invalidates outer iterators | October 2021 | |ranges| | ||
77 | `3592 <https://wg21.link/LWG3592>`__ | ``lazy_split_view`` needs to check the simpleness of Pattern | October 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 | `3645 <https://wg21.link/LWG3645>`__ | ``resize_and_overwrite`` is overspecified to call its callback with lvalues | Not voted in | |Complete| | 14.0 |