[libcxx-commits] [PATCH] D139900: [libc++][ranges] Mark completed Ranges papers and issues as done, bump version macro

Mark de Wever via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Dec 20 11:17:18 PST 2022


Mordante accepted this revision as: Mordante.
Mordante added a comment.

Thanks for working on this! In general LGTM, but I didn't verify all papers. I leave the final approval to @philnik.



================
Comment at: libcxx/docs/Status/Cxx20Issues.csv:247
 "`3321 <https://wg21.link/LWG3321>`__","``uninitialized_construct_using_allocator``\  should use ``construct_at``\ ","Prague","|Complete|","16.0"
-"`3323 <https://wg21.link/LWG3323>`__","``*has-tuple-element*``\  helper concept needs ``convertible_to``\ ","Prague","","","|ranges|"
+"`3323 <https://wg21.link/LWG3323>`__","``*has-tuple-element*``\  helper concept needs ``convertible_to``\ ","Prague","|Nothing To Do|","","|ranges|"
 "`3324 <https://wg21.link/LWG3324>`__","Special-case ``std::strong/weak/partial_order``\  for pointers","Prague","|Complete|","14.0","|spaceship|"
----------------
var-const wrote:
> It looks like `has-tuple-element`'s definition has been completely revamped in the Standard since that paper. I haven't done too much archeology on this, just verified that what we have is same as the current draft of the Standard.
Should the then mark it as `Complete` instead. `Nothing to do` implies nothing was ever done.


================
Comment at: libcxx/include/__ranges/join_view.h:231
     _LIBCPP_HIDE_FROM_ABI
-    __iterator() requires default_initializable<_Outer> = default;
+    __iterator() requires default_initializable<_Outer> && default_initializable<_Inner> = default;
 
----------------
var-const wrote:
> tcanens wrote:
> > var-const wrote:
> > > This is the only thing I found that was missing.
> > https://cplusplus.github.io/LWG/issue3569
> Thanks a lot! I missed that issue, reverted the constraint now.
FYI D140407 adds that LWG issue to the status table.


================
Comment at: libcxx/include/version:139
 __cpp_lib_quoted_string_io                              201304L <iomanip>
-__cpp_lib_ranges                                        201811L <algorithm> <functional> <iterator>
+__cpp_lib_ranges                                        202106L <algorithm> <functional> <iterator>
                                                                 <memory> <ranges>
----------------
var-const wrote:
> philnik wrote:
> > var-const wrote:
> > > If we follow the suggestion from https://github.com/cplusplus/papers/issues/1007 to apply the change to C++20 retroactively, I presume it means we don't need different values of the macro for C++20 and C++23.
> > > 
> > > (Unfortunately, we missed the previous version bump of this macro to `201911L` that should have happened when we marked P1716R3 as implemented)
> > Well, we'll need different values once we implement P2415R2 (which seems to be missing from the status page?), P2387R3 and P2494R2.
> Looking at https://github.com/cplusplus/papers/issues/1085, it appears that `P2415R2` was also adopted as a DR against C++20. It is listed in `docs/Status/Cxx20Papers.csv`. But yeah, for the latter papers looks like we'll need different values.
I applied the same logic to the DR papers for format, so I agree that's what we should do.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D139900/new/

https://reviews.llvm.org/D139900



More information about the libcxx-commits mailing list