Marshall Clow
2f116c432d
Mark 'constexpr char_traits' as complete.
...
llvm-svn: 292000
2017-01-14 05:55:17 +00:00
Marshall Clow
8fd58a6be8
Implement P0403R1 - 'Literal suffixes for basic_string_view'. Requires clang 4.0 (specifically, r290744)
...
llvm-svn: 291457
2017-01-09 18:07:34 +00:00
Marshall Clow
dbf7ca9ce6
Implement P0505: 'Wording for GB 50'
...
llvm-svn: 291028
2017-01-04 23:03:24 +00:00
Marshall Clow
020b623a3b
Implement the last bit of P0031: 'A Proposal to Add Constexpr Modifiers to reverse_iterator, move_iterator, array and Range Access' for C++17
...
llvm-svn: 290976
2017-01-04 17:58:17 +00:00
Eric Fiselier
649dcec527
Update year to 2017
...
llvm-svn: 290876
2017-01-03 11:20:43 +00:00
Eric Fiselier
28727b81ef
Update "Making Optional Greater Equal Again" paper status
...
llvm-svn: 290742
2016-12-30 04:16:30 +00:00
Eric Fiselier
14b1bcc14b
Implement P0435R1 - Resolving LWG issues for common_type
...
llvm-svn: 290627
2016-12-27 21:16:48 +00:00
Eric Fiselier
fec6be9c81
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.
llvm-svn: 289708
2016-12-14 21:22:48 +00:00
Eric Fiselier
11b932b0d9
Update status page for variant implementation
...
llvm-svn: 288625
2016-12-04 22:14:53 +00:00
Eric Fiselier
9a0b4abbba
Mark various <variant> items as complete
...
llvm-svn: 288574
2016-12-03 02:47:40 +00:00
Vedant Kumar
50d161ce0f
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
llvm-svn: 287004
2016-11-15 18:48:36 +00:00
Marshall Clow
48b520a7b6
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.
...
llvm-svn: 286884
2016-11-14 20:41:17 +00:00
Marshall Clow
065b3af096
Implement P0516: 'Clarify That shared_future’s Copy Operations have Wide Contracts' which was adopted last week in Issaquah
...
llvm-svn: 286877
2016-11-14 19:58:05 +00:00
Marshall Clow
87f2f1687e
Implement P0510 'Make future_error Constructible' adopted in Issaquah
...
llvm-svn: 286864
2016-11-14 18:56:24 +00:00
Marshall Clow
1c7fe126ee
Fixes for LWG 2598, 2686, 2739, 2742, 2747, and 2759, which were adopted last week in Issaquah
...
llvm-svn: 286858
2016-11-14 18:22:19 +00:00
Marshall Clow
539dd132ef
Update C++1z status with LWG papers from Issaquah.
...
llvm-svn: 286835
2016-11-14 15:09:45 +00:00
Marshall Clow
1d44f0fb46
Update C++1z status with LFTS issues from Issaquah.
...
llvm-svn: 286834
2016-11-14 14:53:07 +00:00
Marshall Clow
c0681d2b0e
Update C++1z status with C++17 issues from Issaquah. Still to come: LFTS issues and papers
...
llvm-svn: 286828
2016-11-14 14:41:33 +00:00
Marshall Clow
1b8f260ed9
Implement constexpr support for reverse_iterator. Reviewed as https://reviews.llvm.org/D25534
...
llvm-svn: 284602
2016-10-19 15:12:50 +00:00
Marshall Clow
3baae885e1
Update the status of three papers that do not require library changes
...
llvm-svn: 284165
2016-10-13 21:15:09 +00:00
Marshall Clow
6ecac73019
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.
...
llvm-svn: 284164
2016-10-13 21:06:03 +00:00
Eric Fiselier
e6364a35fd
Fix LWG2683 - filesystem::copy() should always clear the user-provided error_code
...
llvm-svn: 283951
2016-10-11 22:18:09 +00:00
Eric Fiselier
040411762f
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.
llvm-svn: 279947
2016-08-28 21:55:00 +00:00
Eric Fiselier
2fc65041be
Implement LWG 2711. Constrain path members.
...
llvm-svn: 279945
2016-08-28 21:26:01 +00:00
Eric Fiselier
324506b9f3
[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
llvm-svn: 278310
2016-08-11 03:13:11 +00:00
Eric Fiselier
da178822c2
Mark LWG 2726 as complete. No code change needed.
...
llvm-svn: 277964
2016-08-07 21:47:06 +00:00
Marshall Clow
19b4035f29
Implement LCM and GCD for C++17. Same code as for Library Fundamentals TS.
...
llvm-svn: 276751
2016-07-26 14:29:45 +00:00
Eric Fiselier
4927c29577
Implement the std::pair parts of "Improving pair and tuple". Completes N4387.
...
llvm-svn: 276605
2016-07-25 04:32:07 +00:00
Eric Fiselier
790df14543
Implement LWG 2393. Check for LValue-callability.
...
llvm-svn: 276546
2016-07-24 04:16:40 +00:00
Eric Fiselier
63c69ef49c
Implement LWG2328. Rvalue stream extraction should perfect forward.
...
llvm-svn: 276545
2016-07-24 04:07:22 +00:00
Eric Fiselier
e4d9c316d2
Implement P0040r3: Extending memory management tools
...
llvm-svn: 276544
2016-07-24 03:51:39 +00:00
Eric Fiselier
0fdab5eb69
Implement P0392r0. Integrate filesystem::path and string_view.
...
llvm-svn: 276511
2016-07-23 03:10:56 +00:00
Eric Fiselier
38136197bb
Mark P0358r1 as complete. It is already implemented
...
llvm-svn: 276233
2016-07-21 03:28:52 +00:00
Eric Fiselier
7efa5e4b5f
Mark P0337r0 as complete. It was already implemented in std::experimental
...
llvm-svn: 276231
2016-07-21 03:24:43 +00:00
Eric Fiselier
0e411641a3
Implement P0084r2. Changing emplace return types.
...
llvm-svn: 276230
2016-07-21 03:20:17 +00:00
Eric Fiselier
03e29a2964
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.
llvm-svn: 275745
2016-07-18 00:35:56 +00:00
Marshall Clow
10e8bef1d4
Add more tests for LWG#2582. No code changes needed, just tests.
...
llvm-svn: 275211
2016-07-12 20:15:46 +00:00
Marshall Clow
ced86bf736
mark issue #2422 as complete; this was just a wording clarification
...
llvm-svn: 275177
2016-07-12 15:29:35 +00:00
Marshall Clow
191cbb2406
mark issue #2181 as complete; this was just a wording clarification
...
llvm-svn: 275176
2016-07-12 15:15:55 +00:00
Marshall Clow
92aa427bb8
Put the status in the right column
...
llvm-svn: 275171
2016-07-12 14:38:59 +00:00
Marshall Clow
7658df4bcd
Mark P0067 as 'postponed', because it will be revised before the next meeting
...
llvm-svn: 275170
2016-07-12 14:37:39 +00:00
Marshall Clow
f7aaf31c53
Mark issues 2550, 2551, 2555, 2685, 2698 as complete. These issues are wording clarifications; no code changes required.
...
llvm-svn: 274255
2016-06-30 18:05:19 +00:00
Marshall Clow
2f63da2887
Mark issues 2667, 2669, 2670, 2671, 2673 as complete. These issues are wording clarifications; no code changes required.
...
llvm-svn: 274253
2016-06-30 17:59:01 +00:00
Marshall Clow
e46c0885ff
Implement LWG#2688: 'clamp misses preconditions and has extraneous condition on result'. We already did this, just added tests
...
llvm-svn: 274252
2016-06-30 17:52:51 +00:00
Marshall Clow
c8afc869b0
Implement LWG#2684: 'priority_queue lacking comparator typedef'. We already did this, just added tests
...
llvm-svn: 274243
2016-06-30 16:03:50 +00:00
Marshall Clow
81fce9729c
Implement LWG#2596: 'vector::data() should use addressof'
...
llvm-svn: 274241
2016-06-30 15:50:55 +00:00
Marshall Clow
e766a87b01
Implement LWG#2441: 'Exact-width atomic typedefs should be provided'
...
llvm-svn: 274236
2016-06-30 15:28:38 +00:00
Marshall Clow
497677449b
Implement LWG#2436: 'Comparators for associative containers should always be CopyConstructible'
...
llvm-svn: 274235
2016-06-30 15:11:53 +00:00
Eric Fiselier
b4fe59b595
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.
llvm-svn: 274214
2016-06-30 06:59:29 +00:00
Marshall Clow
91bd7dda3a
Use WG21.link reflector to get to issues, rather than linking directly
...
llvm-svn: 274018
2016-06-28 14:13:28 +00:00