Marshall Clow
8d00e543f4
Remove P0771, which was not passed in Rapperswil
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@334894 91177308-0d34-0410-b5e6-96231b3b80d8
2018-06-16 18:03:29 +00:00
Marshall Clow
385a6d473f
Update the to-do list with motions from Rapperswil.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@334467 91177308-0d34-0410-b5e6-96231b3b80d8
2018-06-12 02:45:30 +00:00
Marshall Clow
fa35e8885e
Mark more bits of P0433 as complete.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@333058 91177308-0d34-0410-b5e6-96231b3b80d8
2018-05-23 03:22:59 +00:00
Marshall Clow
faf8db7dfd
More notes on Rapperswil issues
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@332000 91177308-0d34-0410-b5e6-96231b3b80d8
2018-05-10 17:07:38 +00:00
Marshall Clow
5d2e458b6f
Status updates for Rapperswil
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@331661 91177308-0d34-0410-b5e6-96231b3b80d8
2018-05-07 18:59:04 +00:00
Marshall Clow
6a32b9d38f
Update for Rapperswil
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@331638 91177308-0d34-0410-b5e6-96231b3b80d8
2018-05-07 14:21:52 +00:00
Marshall Clow
ece1de8658
Mark <span> as "In progress"
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@329375 91177308-0d34-0410-b5e6-96231b3b80d8
2018-04-06 04:43:27 +00:00
Marshall Clow
0b261846c9
Implement P0754R2: The <version> header.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@329075 91177308-0d34-0410-b5e6-96231b3b80d8
2018-04-03 15:48:24 +00:00
Eric Fiselier
e96d6a1fb7
Implement P0430R2 - File system library on non-POSIX systems.
...
This patch implements P0430R2, who's largest change is adding the path::format
enumeration for supporting path format conversions in path constructors.
However, since libc++'s filesystem only really supports POSIX like systems,
there are no real changes needed. This patch simply adds the format enum
and then ignores it when it's passed to constructors.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@329031 91177308-0d34-0410-b5e6-96231b3b80d8
2018-04-02 23:35:24 +00:00
Eric Fiselier
1e34c76d33
Implement filesystem NB comments, relative paths, and related issues.
...
This is a fairly large patch that implements all of the filesystem NB comments
and the relative paths changes (ex. adding weakly_canonical). These issues
and papers are all interrelated so their implementation couldn't be split up
nicely.
This patch upgrades <experimental/filesystem> to match the C++17 spec and not
the published experimental TS spec. Some of the changes in this patch are both
API and ABI breaking, however libc++ makes no guarantee about stability for
experimental implementations.
The major changes in this patch are:
* Implement NB comments for filesystem (P0492R2), including:
* Implement `perm_options` enum as part of NB comments, and update the
`permissions` function to match.
* Implement changes to `remove_filename` and `replace_filename`
* Implement changes to `path::stem()` and `path::extension()` which support
splitting examples like `.profile`.
* Change path iteration to return an empty path instead of '.' for trailing
separators.
* Change `operator/=` to handle absolute paths on the RHS.
* Change `absolute` to no longer accept a current path argument.
* Implement relative paths according to NB comments (P0219r1)
* Combine `path.cpp` and `operations.cpp` since some path functions require
access to the operations internals, and some fs operations require access
to the path parser.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@329028 91177308-0d34-0410-b5e6-96231b3b80d8
2018-04-02 23:03:41 +00:00
Marshall Clow
256f187bc6
Implement LWG3034: P0767R1 breaks previously-standard-layout types
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@328064 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-21 00:36:05 +00:00
Marshall Clow
6ce040b9aa
Updated C++2a status with changes from Jacksonville WG21 meeting
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@327806 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-18 19:29:21 +00:00
Marshall Clow
46b8a51b49
Implement LWG#2518 - Non-member swap for propagate_const should call member swap
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@327005 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-08 15:01:50 +00:00
Marshall Clow
06ac7cdfc7
Implement P0767R1 - Deprecate POD
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@326801 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-06 15:01:19 +00:00
Marshall Clow
f31b30dc55
Added P0805 to the list of ready bits
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@326485 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-01 21:16:07 +00:00
Marshall Clow
806a6ec645
Implement LWG 2835 - fix <tgmath.h>
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324923 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-12 19:13:24 +00:00
Marshall Clow
f72f21907c
Implement LWG#2908 - The less-than operator for shared pointers could do more, and mark 2878 as complete as well (we already do that)
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324911 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-12 17:26:40 +00:00
Eric Fiselier
0fc3d1264c
Mark two issues as complete
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324852 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-11 21:57:25 +00:00
Marshall Clow
1a2caf573f
Update the status of removed components
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324609 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-08 14:51:22 +00:00
Marshall Clow
5b1e87e52d
Implement deduction guide for basic_string as described in P0433
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324569 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-08 06:34:03 +00:00
Marshall Clow
f003d63c40
Comment on 'Review' issues
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324503 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-07 19:24:37 +00:00
Marshall Clow
c387931db5
Mark P0777 as complete
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324399 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-06 21:00:58 +00:00
Marshall Clow
46c8ec503e
No, really this time mark 3034 as 'Patch Ready'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324312 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-06 03:24:21 +00:00
Marshall Clow
4d839cb37e
Mark issue 3034 as 'Patch Ready'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324310 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-06 03:23:16 +00:00
Marshall Clow
6c83c7ff6f
More patches ready
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324307 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-06 01:59:28 +00:00
Marshall Clow
53095c7200
Add issues in 'Review'
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324292 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-05 23:50:49 +00:00
Eric Fiselier
88232b14d4
Mark LWG 3014 as complete. No code changes needed
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324193 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-04 07:37:09 +00:00
Eric Fiselier
4d0f42850b
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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324192 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-04 07:35:36 +00:00
Eric Fiselier
b2c07b0af2
Mark LWG 3013 as already complete. See r316941
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324191 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-04 07:29:53 +00:00
Eric Fiselier
0b47a655ac
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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324189 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-04 03:10:53 +00:00
Eric Fiselier
cc7688a719
Mark issue 2851 as complete
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324188 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-04 02:45:33 +00:00
Eric Fiselier
af1fd7c75f
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.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@324187 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-04 02:43:32 +00:00
Marshall Clow
37e4c9b159
Implement LWG2870: Default value of parameter theta of polar should be dependent
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323918 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-31 21:42:39 +00:00
Marshall Clow
65c4c248c2
Add LWG3051
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323822 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30 21:49:17 +00:00
Marshall Clow
64aa1c1b75
First cut at issue statuses for JAX
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323720 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30 00:48:39 +00:00
Marshall Clow
6f79a901d1
Minor updated to the main libcxx page; add a link to the deprecation page
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323694 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-29 21:28:46 +00:00
Marshall Clow
e686a8dec0
Mark 2903 as complete; we already do this
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323479 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-25 22:33:17 +00:00
Marshall Clow
cc7048888e
Implement LWG2783: stack::emplace() and queue::emplace() should return decltype(auto)
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323385 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-24 22:42:25 +00:00
Marshall Clow
e2341acabb
Update cxx2a status
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@323160 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-22 23:17:20 +00:00
Marshall Clow
8d0d82585a
First part of P0202: Adding constexpr modifiers to functions in <algorithm> and <utility>. This commit is all the is_XXX algorithms.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@322489 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-15 16:16:32 +00:00
Marshall Clow
4b1bc157d4
Document upcoming TS feature removal
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@322011 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-08 17:43:46 +00:00
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
8f6293b39e
Implement more of P0600: '[[nodiscard]] in the library' for C++2a
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@319710 91177308-0d34-0410-b5e6-96231b3b80d8
2017-12-04 23:03:42 +00:00
Marshall Clow
46b4ad5400
Implement P0457R2: 'String Prefix and Suffix Checking' for c++2a
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@319687 91177308-0d34-0410-b5e6-96231b3b80d8
2017-12-04 20:11:38 +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