|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2 |
|
| #
1c4ee5de |
| 05-Aug-2022 |
Konstantin Varlamov <[email protected]> |
[libc++][ranges][NFC] Mark the completed Ranges papers and issues as done.
The newly-completed papers: - P0896R4 ("The One Ranges Proposal"); - P1243R4 ("Rangify New Algorithms"); - P1252R2 ("Ranges
[libc++][ranges][NFC] Mark the completed Ranges papers and issues as done.
The newly-completed papers: - P0896R4 ("The One Ranges Proposal"); - P1243R4 ("Rangify New Algorithms"); - P1252R2 ("Ranges Design Cleanup"); - P1716R3 ("Range Comparison Algorithms Are Over-Constrained"); - P1871R1 ("Concept traits should be named after concepts"); - P2106R0 ("Alternative wording for GB315 and GB316").
Differential Revision: https://reviews.llvm.org/D131234
(cherry picked from commit 3fa291fa925dad4bae215fbcbc64db5ce66f0d9f)
show more ...
|
|
Revision tags: llvmorg-15.0.0-rc1, llvmorg-16-init |
|
| #
79a2b4ba |
| 28-Jun-2022 |
Konstantin Varlamov <[email protected]> |
[libc++][ranges] Finish LWG issues directly related to the One Ranges Proposal.
- P1252 ("Ranges Design Cleanup") -- deprecate `move_iterator::operator->` starting from C++20; add range comparison
[libc++][ranges] Finish LWG issues directly related to the One Ranges Proposal.
- P1252 ("Ranges Design Cleanup") -- deprecate `move_iterator::operator->` starting from C++20; add range comparisons to the `<functional>` synopsis. This restores `move_iterator::operator->` that was incorrectly deleted in D117656; it's still defined in the latest draft, see http://eel.is/c++draft/depr.move.iter.elem. Note that changes to `*_result` types from 6.1 in the paper are no longer relevant now that these types are aliases; - P2106 ("Alternative wording for GB315 and GB316") -- add a few `*_result` types to the synopsis in `<algorithm>` (some algorithms are not implemented yet and thus some of the proposal still cannot be marked as done);
Also mark already done issues as done (or as nothing to do): - P2091 ("Fixing Issues With Range Access CPOs") was already implemented (this patch adds tests for some ill-formed cases); - LWG 3247 ("`ranges::iter_move` should perform ADL-only lookup of `iter_move`") was already implemented; - LWG 3300 ("Non-array ssize overload is underconstrained") doesn't affect the implementation; - LWG 3335 ("Resolve C++20 NB comments US 273 and GB 274") was already implemented; - LWG 3355 ("The memory algorithms should support move-only input iterators introduced by P1207") was already implemented (except for testing).
Differential Revision: https://reviews.llvm.org/D126053
show more ...
|
| #
e7d1cc92 |
| 27-Jun-2022 |
Mark de Wever <[email protected]> |
[libc++][doc] Fixes a broken table entry.
|
|
Revision tags: llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4 |
|
| #
44ae09d7 |
| 14-May-2022 |
varconst <[email protected]> |
[libc++][ranges][NFC] Mark completed issues related to the One Ranges Proposal.
Quite a few C++20 LWG issues/papers related to the One Ranges Proposal were already effectively implemented (or contai
[libc++][ranges][NFC] Mark completed issues related to the One Ranges Proposal.
Quite a few C++20 LWG issues/papers related to the One Ranges Proposal were already effectively implemented (or contain semantic-only wording changes that don't affect the implementation), mark them as such.
Differential Revision: https://reviews.llvm.org/D125065
show more ...
|
| #
8200e125 |
| 10-May-2022 |
Konstantin Varlamov <[email protected]> |
[libc++][ranges] Implement `views::drop`.
The view itself has been implemented previously -- this patch only adds the ability to pipe it.
Also finishes the implementation of [P1739](https://wg21.li
[libc++][ranges] Implement `views::drop`.
The view itself has been implemented previously -- this patch only adds the ability to pipe it.
Also finishes the implementation of [P1739](https://wg21.link/p1739) and [LWG3407](https://wg21.link/lwg3407).
Differential Revision: https://reviews.llvm.org/D125156
show more ...
|
|
Revision tags: llvmorg-14.0.3, llvmorg-14.0.2 |
|
| #
3d3103b7 |
| 21-Apr-2022 |
Hui Xie <[email protected]> |
[libcxx][ranges] add views::join adaptor object. added test coverage to join_view
- added views::join adaptor object - added test for the adaptor object - fixed some join_view's tests. e.g iter_swap
[libcxx][ranges] add views::join adaptor object. added test coverage to join_view
- added views::join adaptor object - added test for the adaptor object - fixed some join_view's tests. e.g iter_swap test - added some negative tests for join_view to test that operations do not exist when constraints aren't met - added tests that locks down issues that were already addressed in previous change - LWG3500 `join_view::iterator::operator->()` is bogus - LWG3313 `join_view::iterator::operator--` is incorrectly constrained - LWG3517 `join_view::iterator`'s `iter_swap` is underconstrained - P2328R1 join_view should join all views of ranges - fixed some issues in join_view and added tests - LWG3535 `join_view::iterator::iterator_category` and `::iterator_concept` lie - LWG3474 Nesting ``join_views`` is broken because of CTAD - added tests for an LWG issue that isn't resolved in the standard yet, but the previous code has workaround. - LWG3569 Inner iterator not default_initializable
Reviewed By: #libc, var-const
Spies: var-const, libcxx-commits
Differential Revision: https://reviews.llvm.org/D123466
show more ...
|
|
Revision tags: llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init |
|
| #
2e7532c0 |
| 31-Jan-2022 |
Louis Dionne <[email protected]> |
[libc++][NFC] Mark a few issues and papers as implemented
Differential Revision: https://reviews.llvm.org/D118638
|
|
Revision tags: llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2 |
|
| #
67151d02 |
| 09-Jan-2022 |
Arthur O'Dwyer <[email protected]> |
[libc++] [ranges] Implement P2415R2 owning_view.
"What is a view?" http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2415r2.html https://github.com/cplusplus/draft/pull/5010/files
This was a
[libc++] [ranges] Implement P2415R2 owning_view.
"What is a view?" http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2415r2.html https://github.com/cplusplus/draft/pull/5010/files
This was a late-breaking (Oct 2021) change to C++20. The only thing missing from this patch is that we're supposed to bump the feature-test macro from #define __cpp_lib_ranges 202106L to #define __cpp_lib_ranges 202110L but we can't do that because we don't implement all of 202106 Ranges yet.
Differential Revision: https://reviews.llvm.org/D116894
show more ...
|
|
Revision tags: llvmorg-13.0.1-rc1 |
|
| #
cef99780 |
| 08-Oct-2021 |
Mark de Wever <[email protected]> |
[libc++][doc] Use issue labels.
During the review of D111166 I had a private discussion with @ldionne to avoid the duplication of the C++2b issues in the Ranges and Format status pages. The main rea
[libc++][doc] Use issue labels.
During the review of D111166 I had a private discussion with @ldionne to avoid the duplication of the C++2b issues in the Ranges and Format status pages. The main reason for duplicating them is to make it easier to find them. The title of the paper may not always make it clear to which project the paper belongs.
This commit removes all LWG-issues from the Ranges and Format status page and adds labels for these issue in the C++20/C++23 issues list.
A quick scan revealed there are some issues that are missing a label since they weren't on the ranges issue list. These can be labelled in a separate commit. In that commit I'll also look for issues for the spaceship operator and chrono.
Reviewed By: Quuxplusone, ldionne, #libc
Differential Revision: https://reviews.llvm.org/D111458
show more ...
|
| #
1fa27f2a |
| 14-Oct-2021 |
Joe Loser <[email protected]> |
[libc++] LWG3480: make (recursive_)directory_iterator C++20 ranges
Implement LWG3480 which enables `directory_iterator` and `recursive_directory_iterator` to be both a `borrowed_range` and a `view`.
[libc++] LWG3480: make (recursive_)directory_iterator C++20 ranges
Implement LWG3480 which enables `directory_iterator` and `recursive_directory_iterator` to be both a `borrowed_range` and a `view`.
Reviewed By: ldionne, #libc
Differential Revision: https://reviews.llvm.org/D111644
show more ...
|
| #
352c3af3 |
| 05-Oct-2021 |
Mark de Wever <[email protected]> |
[libc++][doc] Update paper status.
Update the status with the approved papers and LWG-issues in the October 2021 plenary.
Reviewed By: #libc, ldionne
Differential Revision: https://reviews.llvm.or
[libc++][doc] Update paper status.
Update the status with the approved papers and LWG-issues in the October 2021 plenary.
Reviewed By: #libc, ldionne
Differential Revision: https://reviews.llvm.org/D111166
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3 |
|
| #
3894a8a4 |
| 02-Mar-2021 |
Arthur O'Dwyer <[email protected]> |
[libc++] Implement the resolutions of LWG3506 and LWG3522.
Implement the changes in all language modes.
LWG3506 "Missing allocator-extended constructors for priority_queue" makes the following chan
[libc++] Implement the resolutions of LWG3506 and LWG3522.
Implement the changes in all language modes.
LWG3506 "Missing allocator-extended constructors for priority_queue" makes the following changes: - New allocator-extended constructors for priority_queue. - New deduction guides targeting those constructors.
LWG3522: "Missing requirement on InputIterator template parameter for priority_queue constructors". The iterator parameter should be constrained to actually be an iterator type. `priority_queue{1,2}` should be SFINAE-friendly ill-formed.
Also, do a drive-by fix in the allocator-extended move constructor: there's no need to do a `make_heap` after moving from `__q.c` into our own `c`, because that container was already heapified when it was part of `__q`. [priqueue.cons.alloc] actually specifies the behavior and does *not* mention calling `make_heap`. I think this was just a copy-paste thinko. It dates back to the initial import of libc++.
Differential Revision: https://reviews.llvm.org/D106824 Differential Revision: https://reviews.llvm.org/D106827
show more ...
|
| #
678601ec |
| 22-Jul-2021 |
Mark de Wever <[email protected]> |
[libc++][doc] Update the LWG issues.
Updates the status pages with the LWG issues accepted in the Standard during the June 2021 plenary session. The LWG papers for this meeting have been added in D1
[libc++][doc] Update the LWG issues.
Updates the status pages with the LWG issues accepted in the Standard during the June 2021 plenary session. The LWG papers for this meeting have been added in D105103.
Differential Revision: https://reviews.llvm.org/D106529
show more ...
|
| #
cf005c4c |
| 06-Jul-2021 |
Louis Dionne <[email protected]> |
[libc++] NFC: Move the status docs to their own subdirectory
This cleans up the libcxx/doc directory quite a bit and will avoid the proliferation of status files in that directory as new standards a
[libc++] NFC: Move the status docs to their own subdirectory
This cleans up the libcxx/doc directory quite a bit and will avoid the proliferation of status files in that directory as new standards are voted.
show more ...
|