Marshall Clow
3df90c94a3
Implement P0505: 'Wording for GB 50'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@291028 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-04 23:03:24 +00:00
Marshall Clow
e22af6b758
Implement the last bit of P0031: 'A Proposal to Add Constexpr Modifiers to reverse_iterator, move_iterator, array and Range Access' for C++17
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@290976 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-04 17:58:17 +00:00
Eric Fiselier
d28b523b58
Update year to 2017
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@290876 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-03 11:20:43 +00:00
Eric Fiselier
9f988e6e4e
Update "Making Optional Greater Equal Again" paper status
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@290742 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-30 04:16:30 +00:00
Eric Fiselier
046a71be67
Implement P0435R1 - Resolving LWG issues for common_type
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@290627 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-27 21:16:48 +00:00
Eric Fiselier
6d95982406
Recommit r286884: P0503R0, adopted in Issaquah, rewords some requirements on nullptr_t and istream_iterator.
...
No code changes were needed, but I updated a few tests.
Also resolved P0509 and P0521, which required no changes to the library or tests.
This patch was reverted due to llvm.org/PR31016. There is a bug in Clang 3.7
which causes default.pass.cpp to fails. That test is now marked as XFAIL for that
clang version.
This patch was originally authored by Marshall Clow.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@289708 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-14 21:22:48 +00:00
Eric Fiselier
b5c2c47fb6
Update status page for variant implementation
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@288625 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-04 22:14:53 +00:00
Eric Fiselier
dd74cd25d5
Mark various <variant> items as complete
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@288574 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-03 02:47:40 +00:00
Vedant Kumar
e3cb222597
Revert "P0503R0, adopted in Issaquah, rewords some requirements on nullptr_t and istream_iterator. No code changes were needed, but I updated a few tests. Also resolved P0509 and P0521, which required no changes to the library or tests."
...
This reverts commit r286884, because it breaks the Xcode 7 builders:
http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-expensive/1583
Here is a PR that tracks the issue:
https://llvm.org/bugs/show_bug.cgi?id=31016
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@287004 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-15 18:48:36 +00:00
Marshall Clow
506f7fcee5
P0503R0, adopted in Issaquah, rewords some requirements on nullptr_t and istream_iterator. No code changes were needed, but I updated a few tests. Also resolved P0509 and P0521, which required no changes to the library or tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286884 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 20:41:17 +00:00
Marshall Clow
3d7c49b7b0
Implement P0516: 'Clarify That shared_future’s Copy Operations have Wide Contracts' which was adopted last week in Issaquah
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286877 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 19:58:05 +00:00
Marshall Clow
5ec20dfb48
Implement P0510 'Make future_error Constructible' adopted in Issaquah
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286864 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 18:56:24 +00:00
Marshall Clow
db7fa111ab
Fixes for LWG 2598, 2686, 2739, 2742, 2747, and 2759, which were adopted last week in Issaquah
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286858 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 18:22:19 +00:00
Marshall Clow
59368dd5fe
Update C++1z status with LWG papers from Issaquah.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286835 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 15:09:45 +00:00
Marshall Clow
496fc7ff0c
Update C++1z status with LFTS issues from Issaquah.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286834 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 14:53:07 +00:00
Marshall Clow
d521adc297
Update C++1z status with C++17 issues from Issaquah. Still to come: LFTS issues and papers
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@286828 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-14 14:41:33 +00:00
Marshall Clow
4414a6a911
Implement constexpr support for reverse_iterator. Reviewed as https://reviews.llvm.org/D25534
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284602 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-19 15:12:50 +00:00
Marshall Clow
426eb5dd44
Update the status of three papers that do not require library changes
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284165 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-13 21:15:09 +00:00
Marshall Clow
e29fb4c411
Implement http://wg21.link/p0302r1 : Removing Allocator Support in std::function. These functions never worked, and as far as I know, no one ever called them.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284164 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-13 21:06:03 +00:00
Eric Fiselier
508f208ae9
Fix LWG2683 - filesystem::copy() should always clear the user-provided error_code
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283951 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-11 22:18:09 +00:00
Eric Fiselier
17c38db650
Mark LWG 2716 as complete - shuffle and sample disallows lvalue URNGs.
...
Libc++'s implementation of shuffle and sample already support lvalue and rvalue
RNG's. This patch adds tests for both categories and marks the issue as complete.
This patch also contains drive-by change for std::experimental::sample which
improves the diagnostics produced when the correct iterator categories are
not supplied.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@279947 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-28 21:55:00 +00:00
Eric Fiselier
113315b9a4
Implement LWG 2711. Constrain path members.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@279945 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-28 21:26:01 +00:00
Eric Fiselier
e739d54f86
[libcxx] Add std::any
...
Summary:
This patch adds std::any by moving/adapting <experimental/any>.
This patch also implements the std::any parts of p0032r3 (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0032r3.pdf )
and LWG 2509 (http://cplusplus.github.io/LWG/lwg-defects.html#2509 ).
I plan to push it in a day or two if there are no comments.
Reviewers: mclow.lists, EricWF
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D22733
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@278310 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-11 03:13:11 +00:00
Eric Fiselier
83e9013655
Mark LWG 2726 as complete. No code change needed.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@277964 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-07 21:47:06 +00:00
Marshall Clow
1c1e91d9a3
Implement LCM and GCD for C++17. Same code as for Library Fundamentals TS.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276751 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-26 14:29:45 +00:00
Eric Fiselier
e1445fd8ed
Implement the std::pair parts of "Improving pair and tuple". Completes N4387.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276605 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-25 04:32:07 +00:00
Eric Fiselier
e1a41a9f4d
Implement LWG 2393. Check for LValue-callability.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276546 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-24 04:16:40 +00:00
Eric Fiselier
7f630e8ffa
Implement LWG2328. Rvalue stream extraction should perfect forward.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276545 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-24 04:07:22 +00:00
Eric Fiselier
c672a7453d
Implement P0040r3: Extending memory management tools
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276544 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-24 03:51:39 +00:00
Eric Fiselier
2645dbe87f
Implement P0392r0. Integrate filesystem::path and string_view.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276511 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-23 03:10:56 +00:00
Eric Fiselier
f50841f3ac
Mark P0358r1 as complete. It is already implemented
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276233 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-21 03:28:52 +00:00
Eric Fiselier
4a2b9335bb
Mark P0337r0 as complete. It was already implemented in std::experimental
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276231 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-21 03:24:43 +00:00
Eric Fiselier
3816ef98b1
Implement P0084r2. Changing emplace return types.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276230 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-21 03:20:17 +00:00
Eric Fiselier
5839fedf28
Implement C++17 tuple bits. Including apply and make_from_tuple.
...
This patch upgrades <tuple> to be C++17 compliant by implementing:
* tuple_size_v: This was forgotten when implementing the other _v traits.
* std::apply: This was added via LFTS v1 in p0220r1.
* std::make_from_tuple: This was added in p0209r2.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@275745 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-18 00:35:56 +00:00
Marshall Clow
211f9a485c
Add more tests for LWG#2582. No code changes needed, just tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@275211 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-12 20:15:46 +00:00
Marshall Clow
3384fa62f2
mark issue #2422 as complete; this was just a wording clarification
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@275177 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-12 15:29:35 +00:00
Marshall Clow
d7a7384e04
mark issue #2181 as complete; this was just a wording clarification
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@275176 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-12 15:15:55 +00:00
Marshall Clow
6f4713b2d5
Put the status in the right column
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@275171 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-12 14:38:59 +00:00
Marshall Clow
683272df82
Mark P0067 as 'postponed', because it will be revised before the next meeting
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@275170 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-12 14:37:39 +00:00
Marshall Clow
dd18d90adf
Mark issues 2550, 2551, 2555, 2685, 2698 as complete. These issues are wording clarifications; no code changes required.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274255 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 18:05:19 +00:00
Marshall Clow
d94c7765c6
Mark issues 2667, 2669, 2670, 2671, 2673 as complete. These issues are wording clarifications; no code changes required.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274253 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 17:59:01 +00:00
Marshall Clow
0b02cf8cf1
Implement LWG#2688: 'clamp misses preconditions and has extraneous condition on result'. We already did this, just added tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274252 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 17:52:51 +00:00
Marshall Clow
256814f751
Implement LWG#2684: 'priority_queue lacking comparator typedef'. We already did this, just added tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274243 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 16:03:50 +00:00
Marshall Clow
f0419f1dcc
Implement LWG#2596: 'vector::data() should use addressof'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274241 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 15:50:55 +00:00
Marshall Clow
ca894508f9
Implement LWG#2441: 'Exact-width atomic typedefs should be provided'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274236 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 15:28:38 +00:00
Marshall Clow
0c99f18af4
Implement LWG#2436: 'Comparators for associative containers should always be CopyConstructible'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274235 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 15:11:53 +00:00
Eric Fiselier
3e9545e035
Update status of already completed Oulu issues.
...
* P0163r0: Implemented in r273839.
* LWG 2309: pthread_mutex_lock only returns this error if certain debug flags
were passed during construction. libc++ does not pass these flags. There is
nothing to do.
* LWG 2310: Wording fix. No impact on libc++'s implementation.
* LWG 2312: libc++'s std::tuple implementation already constrains the overloads
based on the number of arguments.
* LWG 2549: libc++'s std::tuple already applied this fix.
* LWG 2674: libc++ already depends on this relaxed wording.
* LWG 2704, 2706, 2707, 2719, 2720, 2721, 2723, 2725, 2728: All of these filesystem were either
submitted by me and fixed before submission, or have already been applied.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274214 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-30 06:59:29 +00:00
Marshall Clow
05d5c05fe8
Use WG21.link reflector to get to issues, rather than linking directly
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274018 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-28 14:13:28 +00:00
Marshall Clow
01ac037a5b
Updated C++1Z status page with new work from Oulu WG21 meeting
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@274016 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-28 14:11:54 +00:00
Marshall Clow
871506f9c2
Fix bad link for P0006
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@273861 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-27 11:14:34 +00:00