Marshall Clow
3e653d6c9b
Mark LWG2824 as complete. We already did it, but I added a test to be sure
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@321689 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-03 04:37:30 +00:00
Marshall Clow
1fb741dfe2
Mark issue #2866 as "nothing to do"
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@321687 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-03 03:43:32 +00:00
Marshall Clow
73d6c99b8b
Implement p0258r2: has_unique_object_representations
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@321685 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-03 02:32:28 +00:00
Marshall Clow
c1ab13d9df
A couple more inlined variables that I missed the first time
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@321661 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-02 18:41:01 +00:00
Marshall Clow
c58e4723e7
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).
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@321658 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-02 17:17:01 +00:00
Marshall Clow
f7d0fecf34
Add issue 2587, which was missed
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@319734 91177308-0d34-0410-b5e6-96231b3b80d8
2017-12-05 03:51:16 +00:00
Marshall Clow
14ff89947c
Implement LWG#2921 and LWG#2976 - removing allocator support from packaged_task.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@319080 91177308-0d34-0410-b5e6-96231b3b80d8
2017-11-27 19:43:28 +00:00
Marshall Clow
aa0e236289
Implement p0137r1 - std::launder. Reviewed as https://reviews.llvm.org/D40144
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@318864 91177308-0d34-0410-b5e6-96231b3b80d8
2017-11-22 19:49:03 +00:00
Stephan T. Lavavej
f966d3f5c4
[libcxx] [www] Manually change http links to https.
...
Fixes D37318.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312260 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:59:42 +00:00
Stephan T. Lavavej
1e708af617
[libcxx] [www] Semi-manually change http://www.open-std.org and http://isocpp.org papers to https://wg21.link .
...
Fixes D37318.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312259 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:59:39 +00:00
Stephan T. Lavavej
819264f0ff
[libcxx] [www] Change http://wg21.link to https://wg21.link .
...
Fixes D37318.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312257 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:59:33 +00:00
Marshall Clow
f226a28d61
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
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309296 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-27 17:44:03 +00:00
Marshall Clow
893ac44f2a
Update libc++ status pages with results of the Toronto Meeting - and for C++2a
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308153 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-16 23:59:23 +00:00
Michael Park
8f0ca59708
Mark LWG 2904 as complete.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@304893 91177308-0d34-0410-b5e6-96231b3b80d8
2017-06-07 10:27:17 +00:00
Marshall Clow
8a80169b01
Mark LWG#2900 as complete - we already do this, and I checked the tests in a couple days ago (r303268 & r303824)
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@303876 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-25 16:05:54 +00:00
Eric Fiselier
8392d4940d
Fix broken links on C++1z status page
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@303835 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-25 04:09:07 +00:00
Marshall Clow
a9197bd465
Implement LWG#2790: Remove istreambuf_iterator::operator->. It never did anything useful.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@303675 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-23 18:55:32 +00:00
Marshall Clow
83c266a94f
Mark LWG#2782 as complete. No functionality change; we already do this. Just added a few more tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@302802 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-11 14:25:45 +00:00
Marshall Clow
4cbf03ea88
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.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@302799 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-11 13:55:20 +00:00
Marshall Clow
8fdd8117a9
Mark LWG#2796 as complete. No functionality change; we had tests that covered it already. Just added comments to the tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@302798 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-11 13:51:09 +00:00
Eric Fiselier
76515a2dcf
Implement LWG 2591 - Patch from K-Ballo
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@302724 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-10 20:37:43 +00:00
Marshall Clow
2f2efbd520
Mark LWG#2788 as complete - we already do this
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300568 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-18 17:22:49 +00:00
Marshall Clow
5e1df5e170
Mark LWG#2853 as complete. No code changes required, but added a couple of extra tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300449 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-17 13:19:14 +00:00
Eric Fiselier
a4fd0c9d61
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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300406 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-16 01:51:04 +00:00
Eric Fiselier
98d9a858da
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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300403 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-15 19:32:02 +00:00
Marshall Clow
6403571b40
Implement LWG#2855 - made easy by previous refactoring
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300218 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-13 16:57:42 +00:00
Eric Fiselier
7b41c797ba
[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
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@300126 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-12 23:08:46 +00:00
Marshall Clow
01208afbd6
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)
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@299963 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-11 17:08:53 +00:00
Marshall Clow
41324261fa
Mark P0599 as complete. It was implemented in r298573
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@299941 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-11 14:04:03 +00:00
Eric Fiselier
2b3c1c4d9b
Fix LWG 2934 - optional<const T> doesn't compare with T
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@299105 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-30 20:06:52 +00:00
Eric Fiselier
5612bd42dc
Implement LWG 2842 - optional(U&&) needs to SFINAE on decay_t<in_place_t>
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@299100 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-30 19:43:50 +00:00
Marshall Clow
21ae16e203
Implement P0298R3: 'std::byte'. Reviewed as https://reviews.llvm.org/D31022
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@298689 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-24 05:45:39 +00:00
Marshall Clow
59bcc879ab
Implement Pp0156r2: 'Variadic Lock Guard, version 5' Reviewed as https://reviews.llvm.org/D31163 .
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@298681 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-24 03:40:36 +00:00
Marshall Clow
cf6e0db0b9
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.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@298416 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-21 18:38:57 +00:00
Marshall Clow
0b1f95bb0d
Add two more papers from Kona, and sort them
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@298284 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-20 18:18:09 +00:00
Marshall Clow
2d4c3fa48a
Implement LWG#2761: 'basic_string should require that charT match traits::char_type'. Tests for string_view, too
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297872 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-15 18:41:11 +00:00
Marshall Clow
7a16fa8ae2
Mark LWG issues 2868, 2872, and 2890 as complete. There's nothing we need to do for them.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297758 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-14 17:35:56 +00:00
Marshall Clow
755dd5959c
Also mark LWG#2785 as complete, because we already implemented that
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297753 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-14 17:24:29 +00:00
Marshall Clow
abba685fcd
Implement LWG2784, and mark 2786, 2795, 2804, 2812, 2826, 2834, 2837 and 2838 as complete - since we do them already
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297752 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-14 17:08:47 +00:00
Eric Fiselier
f158316563
Mark LWG 2806 as complete. Libc++ speculatively shiped this change in 4.0
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297074 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 21:09:02 +00:00
Eric Fiselier
27d4f668b3
Mark LWG 2789 as complete. No changes required
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297073 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 21:07:18 +00:00
Eric Fiselier
7c7df6461c
Implement LWG 2787 - [file_status.cons] is inconsistent
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297071 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 21:02:06 +00:00
Eric Fiselier
b537d38bb2
Mark LWG 2781 as complete. No changes required
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297069 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 20:56:13 +00:00
Eric Fiselier
76a3c66153
Mark two any_cast issues as complete
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297066 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 20:49:42 +00:00
Marshall Clow
cd6055e526
Header update with info about the current status of C++17
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297022 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 16:09:02 +00:00
Marshall Clow
e116393a06
Update list with changes from Kona meeting
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@297021 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-06 16:06:02 +00:00
Eric Fiselier
b7fd0be370
Update all bug URL's to point to https://bugs.llvm.org/...
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@295434 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-17 08:37:03 +00:00
Eric Fiselier
515ba559b9
[libcxx] Remove unexpected handlers in C++17
...
Summary:
This patch implements [P0003R5](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html ) which removes exception specifications from C++17.
The only changes to the library are removing `set_unexpected`, `get_unexpected`, `unexpected`, and `unexpected_handler`. These functions can be re-enabled in C++17 using `_LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS`.
@mclow.lists what do you think about removing stuff is this way?
Reviewers: mclow.lists
Reviewed By: mclow.lists
Subscribers: mclow.lists, cfe-commits
Differential Revision: https://reviews.llvm.org/D28172
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@295406 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-17 03:25:08 +00:00
Marshall Clow
d5854559eb
Update a couple of issue statuses
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@295355 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-16 18:50:30 +00:00
Eric Fiselier
a67aa062c6
Mark LWG 2765 as complete. No changes needed
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294167 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-06 02:41:49 +00:00