1"Number","Name","Status","First released version" 2`P0896R4 <https://wg21.link/P0896R4>`__,<ranges>,, 3`P1035R7 <https://wg21.link/P1035R7>`__,Input Range Adaptors,, 4`P1207R4 <https://wg21.link/P1207R4>`__,Movability Of Single-Pass Iterators,, 5`P1243R4 <https://wg21.link/P1243R4>`__,Rangify New Algorithms,, 6`P1248R1 <https://wg21.link/P1248R1>`__,Fixing Relations,, 7`P1252R2 <https://wg21.link/P1252R2>`__,Ranges Design Cleanup,, 8`P1391R4 <https://wg21.link/P1391R4>`__,Range Constructor For string_view,, 9`P1456R1 <https://wg21.link/P1456R1>`__,Move-Only Views,, 10`P1474R1 <https://wg21.link/P1474R1>`__,Helpful Pointers For contiguous_iterator,, 11`P1522R1 <https://wg21.link/P1522R1>`__,Iterator Difference Type And Integer Overflow,, 12`P1523R1 <https://wg21.link/P1523R1>`__,Views And Size Types,, 13`P1638R1 <https://wg21.link/P1638R1>`__,basic_istream_view::iterator Should Not Be Copyable,, 14`P1716R3 <https://wg21.link/P1716R3>`__,Range Comparison Algorithms Are Over-Constrained,, 15`P1739R4 <https://wg21.link/P1739R4>`__,Avoiding Template Bloat For Ranges,, 16`P1862R1 <https://wg21.link/P1862R1>`__,Range Adaptors For Non-Copyable Iterators,, 17`P1870R1 <https://wg21.link/P1870R1>`__,safe_range,, 18`P1871R1 <https://wg21.link/P1871R1>`__,disable_sized_sentinel_for,, 19`P1878R1 <https://wg21.link/P1878R1>`__,Constraining Readable Types,, 20`P1970R2 <https://wg21.link/P1970R2>`__,ranges::ssize,, 21`P1983R0 <https://wg21.link/P1983R0>`__,Fixing Minor Ranges Issues,, 22`P1994R1 <https://wg21.link/P1994R1>`__,elements_view Needs Its Own sentinel,, 23`P2091R0 <https://wg21.link/P2091R0>`__,Fixing Issues With Range Access CPOs,, 24`P2106R0 <https://wg21.link/P2106R0>`__,Range Algorithm Result Types,, 25 26`P2325R3 <https://wg21.link/P2325R3>`__,Views should not be required to be default constructible ,, 27`P2328R1 <https://wg21.link/P2328R1>`__,join_view should join all views of ranges,, 28`P2210R2 <https://wg21.link/P2210R2>`__,Superior String Splitting,, 29`P2281R1 <https://wg21.link/P2281R1>`__,Clarifying range adaptor objects,, 30`P2367R0 <https://wg21.link/P2367R0>`__,Remove misuses of list-initialization from Clause 24,, 31 32`P2415 <https://wg21.link/P2415>`__,"What is a ``view``",, 33`P2432 <https://wg21.link/P2432>`__,"Fix ``istream_view``",, 34 35`LWG3169 <https://wg21.link/lwg3169>`__, ranges permutation generators discard useful information,, 36`LWG3173 <https://wg21.link/lwg3173>`__, Enable CTAD for ref-view,, 37`LWG3179 <https://wg21.link/lwg3179>`__, subrange should always model Range,, 38`LWG3180 <https://wg21.link/lwg3180>`__, Inconsistently named return type for ranges::minmax_element,, 39`LWG3183 <https://wg21.link/lwg3183>`__, Normative permission to specialize Ranges variable templates,, 40`LWG3186 <https://wg21.link/lwg3186>`__, "ranges removal, partition, and partial_sort_copy algorithms discard useful information",, 41`LWG3191 <https://wg21.link/lwg3191>`__, std::ranges::shuffle synopsis does not match algorithm definition,, 42`LWG3276 <https://wg21.link/lwg3276>`__, Class split_view::outer_iterator::value_type should inherit from view_interface,, 43`LWG3280 <https://wg21.link/lwg3280>`__, View converting constructors can cause constraint recursion and are unneeded,, 44`LWG3281 <https://wg21.link/lwg3281>`__, Conversion from pair-like types to subrange is a silent semantic promotion,, 45`LWG3282 <https://wg21.link/lwg3282>`__, subrange converting constructor should disallow derived to base conversions,, 46`LWG3286 <https://wg21.link/lwg3286>`__, ranges::size is not required to be valid after a call to ranges::begin on an input range,, 47`LWG3291 <https://wg21.link/lwg3291>`__, iota_view::iterator has the wrong iterator_category,, 48`LWG3292 <https://wg21.link/lwg3292>`__, iota_view is under-constrained,, 49`LWG3299 <https://wg21.link/lwg3299>`__, Pointers don't need customized iterator behavior,, 50`LWG3301 <https://wg21.link/lwg3301>`__, transform_view::iterator has incorrect iterator_category,, 51`LWG3302 <https://wg21.link/lwg3302>`__, Range adaptor objects keys and values are unspecified,, 52`LWG3313 <https://wg21.link/lwg3313>`__, join_view::iterator::operator-- is incorrectly constrained,, 53`LWG3323 <https://wg21.link/lwg3323>`__, has-tuple-element helper concept needs convertible_to,, 54`LWG3325 <https://wg21.link/lwg3325>`__, Constrain return type of transformation function for transform_view,, 55`LWG3335 <https://wg21.link/lwg3335>`__, range_size_t and views::all_t,, 56`LWG3355 <https://wg21.link/lwg3355>`__, The memory algorithms should support move-only input iterators introduced by P1207,, 57`LWG3363 <https://wg21.link/lwg3363>`__, drop_while_view should opt-out of sized_range,, 58`LWG3364 <https://wg21.link/lwg3364>`__, Initialize data members of ranges and their iterators,, 59`LWG3381 <https://wg21.link/lwg3381>`__, begin and data must agree for contiguous_range,, 60`LWG3384 <https://wg21.link/lwg3384>`__, transform_view::sentinel has an incorrect operator-,, 61`LWG3385 <https://wg21.link/lwg3385>`__, common_iterator is not sufficiently constrained for non-copyable iterators,, 62`LWG3387 <https://wg21.link/lwg3387>`__, [range.reverse.view] reverse_view<V> unintentionally requires range<const V>,, 63`LWG3388 <https://wg21.link/lwg3388>`__, view iterator types have ill-formed <=> operators,, 64`LWG3389 <https://wg21.link/lwg3389>`__, A move-only iterator still does not have a counted_iterator,, 65`LWG3397 <https://wg21.link/lwg3397>`__, ranges::basic_istream_view::iterator should not provide iterator_category,, 66`LWG3398 <https://wg21.link/lwg3398>`__, tuple_element_t is also wrong for const subrange,, 67`LWG3474 <https://wg21.link/lwg3474>`__, Nesting join_views is broken because of CTAD,, 68`LWG3481 <https://wg21.link/LWG3481>`__,"viewable_range mishandles lvalue move-only views",, 69`LWG3500 <https://wg21.link/lwg3500>`__, join_view::iterator::operator->() is bogus,, 70`LWG3505 <https://wg21.link/lwg3505>`__, split_view::outer-iterator::operator++ misspecified,, 71`LWG3517 <https://wg21.link/LWG3517>`__,"join_view::iterator's iter_swap is underconstrained",, 72`LWG3520 <https://wg21.link/LWG3520>`__,"iter_move and iter_swap are inconsistent for transform_view::iterator",, 73`LWG3522 <https://wg21.link/LWG3522>`__,"Missing requirement on InputIterator template parameter for priority_queue constructors","|Complete|","14.0" 74`LWG3523 <https://wg21.link/LWG3523>`__,"iota_view::sentinel is not always iota_view's sentinel",, 75`LWG3532 <https://wg21.link/LWG3532>`__,"split_view<V, P>::inner-iterator<true>::operator++(int) should depend on Base",, 76`LWG3533 <https://wg21.link/LWG3533>`__,"Make base() const & consistent across iterator wrappers that supports input_iterators",, 77`LWG3541 <https://wg21.link/LWG3541>`__,"indirectly_readable_traits should be SFINAE-friendly for all types",, 78`LWG3543 <https://wg21.link/LWG3543>`__,"Definition of when counted_iterators refer to the same sequence isn't quite right",, 79`LWG3546 <https://wg21.link/LWG3546>`__,"common_iterator's postfix-proxy is not quite right",, 80`LWG3549 <https://wg21.link/LWG3549>`__,"view_interface is overspecified to derive from view_base",, 81`LWG3551 <https://wg21.link/LWG3551>`__,"borrowed_{iterator,subrange}_t are overspecified",, 82`LWG3553 <https://wg21.link/LWG3553>`__,"Useless constraint in split_view::outer-iterator::value_type::begin()",, 83`LWG3555 <https://wg21.link/LWG3555>`__,"{transform,elements}_view::iterator::iterator_concept should consider const-qualification of the underlying range",, 84`LWG3361 <https://wg21.link/LWG3361>`__,"``safe_range<SomeRange&>`` case",, 85`LWG3392 <https://wg21.link/LWG3392>`__,"``ranges::distance()`` cannot be used on a move-only iterator with a sized sentinel",, 86`LWG3407 <https://wg21.link/LWG3407>`__,"Some problems with the wording changes of P1739R4",, 87`LWG3470 <https://wg21.link/LWG3470>`__,"``convertible-to-non-slicing`` seems to reject valid case",, 88`LWG3480 <https://wg21.link/LWG3480>`__,"``directory_iterator`` and ``recursive_directory_iterator`` are not C++20 ranges",, 89`LWG3535 <https://wg21.link/LWG3535>`__,"``join_view::iterator::iterator_category`` and ``::iterator_concept`` lie",, 90`LWG3559 <https://wg21.link/LWG3559>`__,"Semantic requirements of ``sized_range`` is circular",, 91`LWG3560 <https://wg21.link/LWG3560>`__,"``ranges::equal`` and ``ranges::is_permutation`` should short-circuit for ``sized_ranges``",, 92`LWG3563 <https://wg21.link/LWG3563>`__,"``keys_view`` example is broken",, 93`LWG3568 <https://wg21.link/LWG3568>`__,"``basic_istream_view`` needs to initialize ``value_``",, 94`LWG3572 <https://wg21.link/LWG3572>`__,"``copyable-box`` should be fully ``constexpr``",, 95`LWG3580 <https://wg21.link/LWG3580>`__,"``iota_view``'s ``iterator``'s binary ``operator+`` should be improved",, 96`LWG3581 <https://wg21.link/LWG3581>`__,"The range constructor makes ``basic_string_view`` not trivially move constructible",, 97`LWG3589 <https://wg21.link/LWG3589>`__,"The ``const`` lvalue reference overload of ``get`` for ``subrange`` does not constrain ``I`` to be ``copyable`` when ``N == 0``",, 98`LWG3590 <https://wg21.link/LWG3590>`__,"``split_view::base() const &`` is overconstrained",, 99`LWG3591 <https://wg21.link/LWG3591>`__,"``lazy_split_view<input_view>::inner-iterator::base() &&`` invalidates outer iterators",, 100`LWG3592 <https://wg21.link/LWG3592>`__,"``lazy_split_view`` needs to check the simpleness of Pattern",, 101`LWG3593 <https://wg21.link/LWG3593>`__,"Several iterators' ``base() const &`` and ``lazy_split_view::outer-iterator::value_type::end()`` missing ``noexcept``",, 102