Marshall Clow
4a6f3c4710
Implement LWG3034: P0767R1 breaks previously-standard-layout types
...
llvm-svn: 328064
2018-03-21 00:36:05 +00:00
Marshall Clow
c8faf3a93c
Updated C++2a status with changes from Jacksonville WG21 meeting
...
llvm-svn: 327806
2018-03-18 19:29:21 +00:00
Marshall Clow
6d1aec1260
Implement LWG#2518 - Non-member swap for propagate_const should call member swap
...
llvm-svn: 327005
2018-03-08 15:01:50 +00:00
Marshall Clow
042f07eed8
Implement P0767R1 - Deprecate POD
...
llvm-svn: 326801
2018-03-06 15:01:19 +00:00
Marshall Clow
aadaabe649
Added P0805 to the list of ready bits
...
llvm-svn: 326485
2018-03-01 21:16:07 +00:00
Marshall Clow
5012793e05
Implement LWG 2835 - fix <tgmath.h>
...
llvm-svn: 324923
2018-02-12 19:13:24 +00:00
Marshall Clow
c0db07299e
Implement LWG#2908 - The less-than operator for shared pointers could do more, and mark 2878 as complete as well (we already do that)
...
llvm-svn: 324911
2018-02-12 17:26:40 +00:00
Eric Fiselier
6808a59244
Mark two issues as complete
...
llvm-svn: 324852
2018-02-11 21:57:25 +00:00
Marshall Clow
2583976e81
Update the status of removed components
...
llvm-svn: 324609
2018-02-08 14:51:22 +00:00
Marshall Clow
6d9f750dec
Implement deduction guide for basic_string as described in P0433
...
llvm-svn: 324569
2018-02-08 06:34:03 +00:00
Marshall Clow
1d4546c0ad
Comment on 'Review' issues
...
llvm-svn: 324503
2018-02-07 19:24:37 +00:00
Marshall Clow
f9ab87e9cc
Mark P0777 as complete
...
llvm-svn: 324399
2018-02-06 21:00:58 +00:00
Marshall Clow
cefa05d39f
No, really this time mark 3034 as 'Patch Ready'
...
llvm-svn: 324312
2018-02-06 03:24:21 +00:00
Marshall Clow
4d170c801b
Mark issue 3034 as 'Patch Ready'
...
llvm-svn: 324310
2018-02-06 03:23:16 +00:00
Marshall Clow
0fc039df1e
More patches ready
...
llvm-svn: 324307
2018-02-06 01:59:28 +00:00
Marshall Clow
50dd98cb2b
Add issues in 'Review'
...
llvm-svn: 324292
2018-02-05 23:50:49 +00:00
Eric Fiselier
4f0c85310d
Mark LWG 3014 as complete. No code changes needed
...
llvm-svn: 324193
2018-02-04 07:37:09 +00:00
Eric Fiselier
e3690ba586
Implement LWG 3014 - Fix more noexcept issues in filesystem.
...
This patch removes the noexcept declaration from filesystem
operations which require creating temporary paths or
creating a directory iterator. Either of these operations
can throw.
llvm-svn: 324192
2018-02-04 07:35:36 +00:00
Eric Fiselier
309f8b1168
Mark LWG 3013 as already complete. See r316941
...
llvm-svn: 324191
2018-02-04 07:29:53 +00:00
Eric Fiselier
be71d336bd
Implement LWG2989: path's streaming operators allow everything under the sun.
...
Because path can be constructed from a ton of different types, including string
and wide strings, this caused it's streaming operators to suck up all sorts
of silly types via silly conversions. For example:
using namespace std::experimental::filesystem::v1;
std::wstring w(L"wide");
std::cout << w; // converts to path.
This patch tentatively adopts the resolution to LWG2989 and fixes the issue
by making the streaming operators friends of path.
llvm-svn: 324189
2018-02-04 03:10:53 +00:00
Eric Fiselier
21f2004991
Mark issue 2851 as complete
...
llvm-svn: 324188
2018-02-04 02:45:33 +00:00
Eric Fiselier
0f8c8f59df
Address LWG 2849 and fix missing failure condition in copy_file.
...
Previously copy_file didn't handle the case where the input and
output were the same file.
llvm-svn: 324187
2018-02-04 02:43:32 +00:00
Marshall Clow
0551d83ed5
Implement LWG2870: Default value of parameter theta of polar should be dependent
...
llvm-svn: 323918
2018-01-31 21:42:39 +00:00
Marshall Clow
9eb338c42e
Add LWG3051
...
llvm-svn: 323822
2018-01-30 21:49:17 +00:00
Marshall Clow
d0eb3092ac
First cut at issue statuses for JAX
...
llvm-svn: 323720
2018-01-30 00:48:39 +00:00
Marshall Clow
6f73cf45df
Minor updated to the main libcxx page; add a link to the deprecation page
...
llvm-svn: 323694
2018-01-29 21:28:46 +00:00
Marshall Clow
8abbc96c18
Mark 2903 as complete; we already do this
...
llvm-svn: 323479
2018-01-25 22:33:17 +00:00
Marshall Clow
e34f5ffe4b
Implement LWG2783: stack::emplace() and queue::emplace() should return decltype(auto)
...
llvm-svn: 323385
2018-01-24 22:42:25 +00:00
Marshall Clow
d161ac9ea6
Update cxx2a status
...
llvm-svn: 323160
2018-01-22 23:17:20 +00:00
Marshall Clow
49c7643c39
First part of P0202: Adding constexpr modifiers to functions in <algorithm> and <utility>. This commit is all the is_XXX algorithms.
...
llvm-svn: 322489
2018-01-15 16:16:32 +00:00
Marshall Clow
86de37aee6
Document upcoming TS feature removal
...
llvm-svn: 322011
2018-01-08 17:43:46 +00:00
Marshall Clow
12e17b19ba
Mark LWG2824 as complete. We already did it, but I added a test to be sure
...
llvm-svn: 321689
2018-01-03 04:37:30 +00:00
Marshall Clow
bae5d279ed
Mark issue #2866 as "nothing to do"
...
llvm-svn: 321687
2018-01-03 03:43:32 +00:00
Marshall Clow
dd74d83f84
Implement p0258r2: has_unique_object_representations
...
llvm-svn: 321685
2018-01-03 02:32:28 +00:00
Marshall Clow
28f1dfcbfe
A couple more inlined variables that I missed the first time
...
llvm-svn: 321661
2018-01-02 18:41:01 +00:00
Marshall Clow
40a01d5314
Implement most of P0607: Inline Variables for the Standard Library. This involved marking a lot of variables as inline (but only for C++17 and later).
...
llvm-svn: 321658
2018-01-02 17:17:01 +00:00
Marshall Clow
c78e12eaf8
Add issue 2587, which was missed
...
llvm-svn: 319734
2017-12-05 03:51:16 +00:00
Marshall Clow
5dd9220974
Implement more of P0600: '[[nodiscard]] in the library' for C++2a
...
llvm-svn: 319710
2017-12-04 23:03:42 +00:00
Marshall Clow
800259c98d
Implement P0457R2: 'String Prefix and Suffix Checking' for c++2a
...
llvm-svn: 319687
2017-12-04 20:11:38 +00:00
Marshall Clow
d42db7e083
Implement LWG#2921 and LWG#2976 - removing allocator support from packaged_task.
...
llvm-svn: 319080
2017-11-27 19:43:28 +00:00
Marshall Clow
48f3653999
Implement LWG#2948: unique_ptr does not define operator<< for stream output
...
llvm-svn: 319038
2017-11-27 15:51:36 +00:00
Marshall Clow
2365c7814a
Update C++2a status and add Glen to CREDITS.TXT. Reviewed as https://reviews.llvm.org/D40379
...
llvm-svn: 318919
2017-11-23 14:50:56 +00:00
Marshall Clow
9180eb1f4a
Implement p0137r1 - std::launder. Reviewed as https://reviews.llvm.org/D40144
...
llvm-svn: 318864
2017-11-22 19:49:03 +00:00
Marshall Clow
12de6e9c11
Implement LWG2950: std::byte operations are misspecified
...
llvm-svn: 318125
2017-11-14 01:14:53 +00:00
Marshall Clow
ffcfd923d7
Implement LWG2952: iterator_traits should work for pointers to cv T
...
llvm-svn: 318119
2017-11-14 00:03:10 +00:00
Marshall Clow
843ec14af4
Put the status in the wrong column
...
llvm-svn: 318012
2017-11-13 04:15:39 +00:00
Marshall Clow
fbb0a5aa3f
Implement P0550R2: Transformation Trait remove_cvref
...
llvm-svn: 318011
2017-11-13 03:59:22 +00:00
Marshall Clow
199216376a
Two more papers from Albuquerque
...
llvm-svn: 318000
2017-11-12 18:52:16 +00:00
Marshall Clow
952d249987
Updated C++2a status page with new features/defects approved in Albuquerque.
...
llvm-svn: 317996
2017-11-12 18:48:42 +00:00
Marshall Clow
c83386cad8
Mark Endian as 'in progress'
...
llvm-svn: 317209
2017-11-02 14:53:08 +00:00
Marshall Clow
3293ddb7ad
More statuses, a new patch, too
...
llvm-svn: 317074
2017-11-01 04:03:35 +00:00
Marshall Clow
336c30e299
Fix broken links; update more issues.
...
llvm-svn: 316970
2017-10-31 00:19:47 +00:00
Marshall Clow
ccbb496b56
Initial triage
...
llvm-svn: 316874
2017-10-29 21:57:58 +00:00
Marshall Clow
4a9ee9caaa
Update status of 2950
...
llvm-svn: 316873
2017-10-29 21:43:30 +00:00
Marshall Clow
4e18fe9ac8
Issues to be voted on in ABQ
...
llvm-svn: 316867
2017-10-29 19:02:00 +00:00
Stephan T. Lavavej
6f297ba8a9
[libcxx] [www] Change an absolute link to cxx1z_status.html to be relative.
...
Fixes D37318.
llvm-svn: 312263
2017-08-31 17:59:51 +00:00
Stephan T. Lavavej
9c88eeb68d
[libcxx] [www] Strip trailing whitespace.
...
Fixes D37318.
llvm-svn: 312262
2017-08-31 17:59:48 +00:00
Stephan T. Lavavej
98fa5d4a97
[libcxx] [www] Fix broken link for LLVM Bugzilla.
...
Fixes D37318.
llvm-svn: 312261
2017-08-31 17:59:46 +00:00
Stephan T. Lavavej
69c2e1336f
[libcxx] [www] Manually change http links to https.
...
Fixes D37318.
llvm-svn: 312260
2017-08-31 17:59:42 +00:00
Stephan T. Lavavej
907c1ab603
[libcxx] [www] Semi-manually change http://www.open-std.org and http://isocpp.org papers to https://wg21.link .
...
Fixes D37318.
llvm-svn: 312259
2017-08-31 17:59:39 +00:00
Stephan T. Lavavej
1dc1fa2347
[libcxx] [www] Change http://cplusplus.github.io/LWG/lwg-defects.html# to https://wg21.link/lwg .
...
Fixes D37318.
llvm-svn: 312258
2017-08-31 17:59:36 +00:00
Stephan T. Lavavej
2956ea46cd
[libcxx] [www] Change http://wg21.link to https://wg21.link .
...
Fixes D37318.
llvm-svn: 312257
2017-08-31 17:59:33 +00:00
Eric Fiselier
6301546b3d
Mark LWG 2942 as complete
...
llvm-svn: 309528
2017-07-30 22:28:08 +00:00
Eric Fiselier
1190335f9d
Mark LWG 2961 as complete
...
llvm-svn: 309527
2017-07-30 22:16:30 +00:00
Marshall Clow
88c893cc33
Implement P0739R0: 'Some improvements to class template argument deduction integration into the standard library' This is an API change (not ABI change) due to a late change in the c++17 standard
...
llvm-svn: 309296
2017-07-27 17:44:03 +00:00
Marshall Clow
5820ae49ab
Update libc++ status pages with results of the Toronto Meeting - and for C++2a
...
llvm-svn: 308153
2017-07-16 23:59:23 +00:00
Marshall Clow
d994e3f35d
Update issues moved in Toronto
...
llvm-svn: 308097
2017-07-15 15:22:21 +00:00
Eric Fiselier
459877388b
Implement LWG 2937 - equivalent("dne", "exists") is not an error
...
This patch speculatively implements the PR for LWG 2937, which fixes
two issues with equivalent.
(1) It makes equivalent("dne", "exists") an error. Previously only
equivalent("dne", "dne") was an error and the former case was not (it returned false).
Now equivalent reports an error when either input doesn't exist.
(2) It makes equivalent(p1, p2) well-formed when `is_other(p1) && is_other(p2)`.
Previously this was an error, but there is seemingly no reason why it should be on POSIX system.
llvm-svn: 307117
2017-07-05 03:37:05 +00:00
Marshall Clow
797bcb40e3
Updated notest on 2974
...
llvm-svn: 306581
2017-06-28 18:19:34 +00:00
Marshall Clow
77957d19f8
Updated for the Toronto meeting
...
llvm-svn: 306269
2017-06-26 04:25:15 +00:00
Michael Park
aeb2c881ce
Mark LWG 2904 as complete.
...
llvm-svn: 304893
2017-06-07 10:27:17 +00:00
Marshall Clow
91a091cc00
Mark LWG#2900 as complete - we already do this, and I checked the tests in a couple days ago (r303268 & r303824)
...
llvm-svn: 303876
2017-05-25 16:05:54 +00:00
Eric Fiselier
c81c8cbe77
Fix broken links on C++1z status page
...
llvm-svn: 303835
2017-05-25 04:09:07 +00:00
Marshall Clow
c44a727ee4
Implement LWG#2790: Remove istreambuf_iterator::operator->. It never did anything useful.
...
llvm-svn: 303675
2017-05-23 18:55:32 +00:00
Marshall Clow
35f62e3228
Mark LWG#2782 as complete. No functionality change; we already do this. Just added a few more tests.
...
llvm-svn: 302802
2017-05-11 14:25:45 +00:00
Marshall Clow
afda4a9af9
Mark LWG#2850 as complete. No functionality change; we had tests that covered it already. Just added comments to the tests. Thanks to K-ballo for the heads up.
...
llvm-svn: 302799
2017-05-11 13:55:20 +00:00
Marshall Clow
9630f46dde
Mark LWG#2796 as complete. No functionality change; we had tests that covered it already. Just added comments to the tests
...
llvm-svn: 302798
2017-05-11 13:51:09 +00:00
Eric Fiselier
d75e451471
Implement LWG 2591 - Patch from K-Ballo
...
llvm-svn: 302724
2017-05-10 20:37:43 +00:00
Marshall Clow
ea9c5465dc
Mark LWG#2788 as complete - we already do this
...
llvm-svn: 300568
2017-04-18 17:22:49 +00:00
Marshall Clow
f0d59405f0
Mark LWG#2853 as complete. No code changes required, but added a couple of extra tests
...
llvm-svn: 300449
2017-04-17 13:19:14 +00:00
Eric Fiselier
4727272254
Overhaul unique_ptr - Implement LWG 2801, 2905, 2520.
...
This patch overhauls both specializations of unique_ptr while implementing
the following LWG issues:
* LWG 2801 - This issue constrains unique_ptr's constructors when the deleter type
is not default constructible. Additionally it adds SFINAE conditions
to unique_ptr<T[]>::unique_ptr(Up).
* LWG 2905 - This issue reworks the unique_ptr(pointer, /* see below */ deleter)
constructors so that they correctly SFINAE when the deleter argument cannot
be used to construct the stored deleter.
* LWG 2520 - This issue fixes initializing unique_ptr<T[]> from nullptr.
Libc++ had previously implemented this issue, but the suggested resolution
still broke initialization from NULL. This patch re-works the
unique_ptr<T[]>(Up, deleter) overloads so that they accept NULL as well
as nullptr.
llvm-svn: 300406
2017-04-16 01:51:04 +00:00
Eric Fiselier
2551475596
Implement LWG 2857 for variant. Tests from Casey Carter @ Microsoft.
...
Also mark LWG 2857 as complete, since the changes to optional and
any were completed by Marshall earlier.
llvm-svn: 300403
2017-04-15 19:32:02 +00:00
Marshall Clow
5948e39297
Implement LWG#2855 - made easy by previous refactoring
...
llvm-svn: 300218
2017-04-13 16:57:42 +00:00
Eric Fiselier
da04d79a1f
[libc++] Implement LWG 2911 - add an is_aggregate type-trait
...
Summary:
This patch implements http://cplusplus.github.io/LWG/lwg-defects.html#2911 .
I'm putting this up for review until __is_aggregate is added to clang (See D31513)
Reviewers: mclow.lists
Reviewed By: mclow.lists
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D31515
llvm-svn: 300126
2017-04-12 23:08:46 +00:00
Marshall Clow
36bc71782d
Implement LWG#2873: 'Add noexcept to several shared_ptr related functions' This issue missed a couple, so I added those as well (see LWG#2942)
...
llvm-svn: 299963
2017-04-11 17:08:53 +00:00
Marshall Clow
220706cd6d
Mark P0599 as complete. It was implemented in r298573
...
llvm-svn: 299941
2017-04-11 14:04:03 +00:00
Eric Fiselier
dc808af38d
Fix LWG 2934 - optional<const T> doesn't compare with T
...
llvm-svn: 299105
2017-03-30 20:06:52 +00:00
Eric Fiselier
d3209f932f
Implement LWG 2842 - optional(U&&) needs to SFINAE on decay_t<in_place_t>
...
llvm-svn: 299100
2017-03-30 19:43:50 +00:00
Marshall Clow
c97d8aa866
Implement P0298R3: 'std::byte'. Reviewed as https://reviews.llvm.org/D31022
...
llvm-svn: 298689
2017-03-24 05:45:39 +00:00
Marshall Clow
6015dd11c8
Implement Pp0156r2: 'Variadic Lock Guard, version 5' Reviewed as https://reviews.llvm.org/D31163 .
...
llvm-svn: 298681
2017-03-24 03:40:36 +00:00
Marshall Clow
9bd9ed4d23
Implement P0548: 'common_type and duration' This involves a subtle change in the return type of the unary +/- operators for std::chrono::duration, though I expect that no one will notice.
...
llvm-svn: 298416
2017-03-21 18:38:57 +00:00
Marshall Clow
b49e06221c
Add two more papers from Kona, and sort them
...
llvm-svn: 298284
2017-03-20 18:18:09 +00:00
Marshall Clow
4069c2bc48
Implement LWG#2761: 'basic_string should require that charT match traits::char_type'. Tests for string_view, too
...
llvm-svn: 297872
2017-03-15 18:41:11 +00:00
Marshall Clow
47cc7e684f
Mark LWG issues 2868, 2872, and 2890 as complete. There's nothing we need to do for them.
...
llvm-svn: 297758
2017-03-14 17:35:56 +00:00
Marshall Clow
e1a292eafd
Also mark LWG#2785 as complete, because we already implemented that
...
llvm-svn: 297753
2017-03-14 17:24:29 +00:00
Marshall Clow
55cfe4c16b
Implement LWG2784, and mark 2786, 2795, 2804, 2812, 2826, 2834, 2837 and 2838 as complete - since we do them already
...
llvm-svn: 297752
2017-03-14 17:08:47 +00:00
Eric Fiselier
2c36b40a4b
Mark LWG 2806 as complete. Libc++ speculatively shiped this change in 4.0
...
llvm-svn: 297074
2017-03-06 21:09:02 +00:00
Eric Fiselier
ef7c5a6b9a
Mark LWG 2789 as complete. No changes required
...
llvm-svn: 297073
2017-03-06 21:07:18 +00:00
Eric Fiselier
bc9cbcedc1
Implement LWG 2787 - [file_status.cons] is inconsistent
...
llvm-svn: 297071
2017-03-06 21:02:06 +00:00
Eric Fiselier
fb07598bf7
Mark LWG 2781 as complete. No changes required
...
llvm-svn: 297069
2017-03-06 20:56:13 +00:00