diff --git a/libcxx/docs/ReleaseNotes.rst b/libcxx/docs/ReleaseNotes.rst --- a/libcxx/docs/ReleaseNotes.rst +++ b/libcxx/docs/ReleaseNotes.rst @@ -35,6 +35,19 @@ What's New in Libc++ 16.0.0? ============================ +The main focus of the libc++ team has been to implement new C++20 and C++23 +features. + +The C++20 format library has improved but it not yet considered stable. The +main improvements are additional formatters for the chrono calendar types. Work +on formatting ranges has started. + +The C++20 ranges library has been completed and is no longer experimental. Some +``views`` have not been implemented yet. Work on C++23 ranges has started. + +The C++20 spaceship operator has been added to more types, the work is still +ongoing. + Implemented Papers ------------------ - P2499R0 - ``string_view`` range constructor should be ``explicit`` @@ -52,6 +65,7 @@ - P1169R4 - ``static operator()`` - P0415R1 - ``constexpr`` for ``std::complex`` - P1208R6 - ``std::source_location`` +- P0323R12 - ``std::expected`` Improvements and New Features ----------------------------- @@ -59,6 +73,7 @@ now provided when implementations in the global namespace are provided by the C library. - Implemented ```` header from C++17 +- `D122780 `_ Improved the performance of std::sort Deprecations and Removals ------------------------- @@ -69,8 +84,7 @@ includes are removed based on the language version used. Incidental transitive inclusions of the following headers have been removed: - - C++11, C++14, and C++17: ``chrono`` - - C++20: ``chrono`` + - C++11, C++14, C++17, and C++20: ``chrono`` - C++2b: ``algorithm``, ``array``, ``atomic``, ``bit``, ``chrono``, ``climits``, ``cmath``, ``compare``, ``concepts``, ``cstdarg``, ``cstddef``, ``cstdint``, ``cstdlib``, ``cstring``, ``ctime``, ``exception``, @@ -85,7 +99,7 @@ incidental transitive includes more aggressively, in particular regardless of the language version in use. -- The legacy testing system for libc++, libc++abi and libunwind has been removed. +- The legacy testing system for libc++, libc++abi, and libunwind has been removed. All known clients have been migrated to the new configuration system, but please reach out to the libc++ developers if you find something missing in the new configuration system. diff --git a/libcxx/docs/Status/Cxx20Papers.csv b/libcxx/docs/Status/Cxx20Papers.csv --- a/libcxx/docs/Status/Cxx20Papers.csv +++ b/libcxx/docs/Status/Cxx20Papers.csv @@ -114,7 +114,7 @@ "`P1207R4 `__","LWG","Movability of Single-pass Iterators","Cologne","|Complete|","15.0","|ranges|" "`P1208R6 `__","LWG","Adopt source_location for C++20","Cologne","|Complete|","16.0" "`P1355R2 `__","LWG","Exposing a narrow contract for ceil2","Cologne","|Complete|","9.0" -"`P1361R2 `__","LWG","Integration of chrono with text formatting","Cologne","|In Progress|","" +"`P1361R2 `__","LWG","Integration of chrono with text formatting","Cologne","|Partial|","" "`P1423R3 `__","LWG","char8_t backward compatibility remediation","Cologne","|Complete|","15.0" "`P1424R1 `__","LWG","'constexpr' feature macro concerns","Cologne","Superseded by `P1902 `__","" "`P1466R3 `__","LWG","Miscellaneous minor fixes for chrono","Cologne","","" diff --git a/libcxx/docs/Status/Cxx2bPapers.csv b/libcxx/docs/Status/Cxx2bPapers.csv --- a/libcxx/docs/Status/Cxx2bPapers.csv +++ b/libcxx/docs/Status/Cxx2bPapers.csv @@ -89,7 +89,7 @@ "`P2549R1 `__","LWG","``std::unexpected`` should have ``error()`` as member accessor","July 2022","|Complete|","16.0" "`P2553R1 `__","LWG","Make ``mdspan`` ``size_type`` controllable","July 2022","","" "`P2554R0 `__","LWG","C-Array Interoperability of MDSpan","July 2022","","" -"`P2585R0 `__","LWG","Improving default container formatting","July 2022","","" +"`P2585R0 `__","LWG","Improving default container formatting","July 2022","|Partial|","" "`P2590R2 `__","LWG","Explicit lifetime management","July 2022","","" "`P2599R2 `__","LWG","``mdspan::size_type`` should be ``index_type``","July 2022","","" "`P2604R0 `__","LWG","mdspan: rename pointer and contiguous","July 2022","",""