Commit Graph

4265 Commits

Author SHA1 Message Date
Stephan T. Lavavej
b8813f3bde [libcxx] [www] Strip trailing whitespace.
Fixes D37318.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312262 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:59:48 +00:00
Stephan T. Lavavej
aeea9b0310 [libcxx] [www] Fix broken link for LLVM Bugzilla.
Fixes D37318.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312261 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:59:46 +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
35509d0fae [libcxx] [www] Change http://cplusplus.github.io/LWG/lwg-defects.html# to https://wg21.link/lwg .
Fixes D37318.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312258 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:59:36 +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
Casey Carter
08242cbd9b [test] Cleanup nullopt_t tests
* Update specification text from N4387

* Delete not_brace_initializable.fail.cpp: it's redundant with nullopt_t.fail.cpp

* is_empty<T> implies is_class<T>

* is_literal is deprecated; directly verify that we can create a nullopt_t in a constexpr context

Differential Revision: D37024

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@312256 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-31 17:56:31 +00:00
Marshall Clow
90dfa2804a Fix test for C++03
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@311967 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-29 01:10:51 +00:00
Marshall Clow
25a78dcd77 Fix PR31166: std::inplace_merge seems to be unstable. Thanks to Jan Wilken Dörrie for the suggested fix.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@311952 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-28 23:16:13 +00:00
Stephan T. Lavavej
e8c8bc9433 [libcxx] [test] Update for C++17 feature removals.
test/std/containers/Emplaceable.h
test/std/containers/NotConstructible.h
test/support/counting_predicates.hpp
Replace unary_function/binary_function inheritance with typedefs.

test/std/depr/depr.function.objects/depr.base/binary_function.pass.cpp
test/std/depr/depr.function.objects/depr.base/unary_function.pass.cpp
test/std/utilities/function.objects/func.require/binary_function.pass.cpp
test/std/utilities/function.objects/func.require/unary_function.pass.cpp
Mark these tests as requiring 98/03/11/14 because 17 removed unary_function/binary_function.

test/std/thread/futures/futures.task/futures.task.members/ctor_func_alloc.pass.cpp
test/std/thread/futures/futures.task/futures.task.nonmembers/uses_allocator.pass.cpp
Mark these tests as requiring 11/14 because 17 removed packaged_task allocator support.

test/std/utilities/function.objects/func.wrap/func.wrap.func/derive_from.pass.cpp
This test doesn't need to be skipped in C++17 mode. Only the construction of
std::function from an allocator needs to be skipped in C++17 mode.

test/std/utilities/function.objects/refwrap/refwrap.access/conversion.pass.cpp
test/std/utilities/function.objects/refwrap/refwrap.assign/copy_assign.pass.cpp
test/std/utilities/function.objects/refwrap/refwrap.const/copy_ctor.pass.cpp
test/std/utilities/function.objects/refwrap/refwrap.const/type_ctor.pass.cpp
When testing these reference_wrapper features, unary_function inheritance is totally irrelevant.

test/std/utilities/function.objects/refwrap/weak_result.pass.cpp
Define and use my_unary_function/my_binary_function to test the weak result type machinery
(which is still present in C++17, although deprecated).

test/support/msvc_stdlib_force_include.hpp
Now we can test C++17 strictly, without enabling removed features.

Fixes D36503.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@311705 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-24 21:24:08 +00:00
Aditya Kumar
d4c8905691 [NFC] remove trailing WS
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@311283 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-20 10:38:55 +00:00
Joerg Sonnenberger
9b69be4b1f Spelling
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@311156 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-18 12:57:36 +00:00
Stephan T. Lavavej
b859a78a6f [libcxx] [test] Rename _Up to U, etc. NFCI.
This improves readability and (theoretically) improves portability,
as _Ugly names are reserved.

This performs additional de-uglification, so all of these tests
follow the example of iterator.traits/empty.pass.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310761 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-11 20:54:09 +00:00
Stephan T. Lavavej
8cbff23f7d [libcxx] [test] Rename __x to x. NFCI.
This improves readability and (theoretically) improves portability,
as __ugly names are reserved.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310760 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-11 20:54:06 +00:00
Stephan T. Lavavej
e75f899c12 [libcxx] [test] Rename __c to ch. NFCI.
This improves readability and (theoretically) improves portability,
as __ugly names are reserved.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310759 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-11 20:54:01 +00:00
Stephan T. Lavavej
302557b724 [libcxx] [test] Rename _Tp to T. NFCI.
This improves readability and (theoretically) improves portability,
as _Ugly names are reserved.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310758 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-11 20:53:53 +00:00
Marshall Clow
3b53fabd8f Change the way the literal operators are defined - now w/o a seperating space. This should be a NFC, but it will change how the compiler parses it.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310487 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-09 15:42:50 +00:00
Shoaib Meenai
98086a8191 [libc++] Don't hardcode namespace in manual mangling
libc++'s inline namespace can change depending on the ABI version.
Instead of hardcoding __1 in the manual Microsoft ABI manglings for the
iostream globals, stringify _LIBCPP_NAMESPACE and use that instead, to
work across all ABI versions.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310290 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-07 19:59:58 +00:00
Stephan T. Lavavej
1a35e84a5c [libcxx] [test] Untabify stringstream.cons/string.pass.cpp. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310157 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-05 00:44:27 +00:00
Stephan T. Lavavej
6f13bfd436 [libcxx] [test] Fix URLs in comments and make them HTTPS. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310156 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-05 00:44:24 +00:00
Stephan T. Lavavej
a5acfb93d4 [libcxx] [test] Consistently list "c++98, c++03" in chronological order. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@310155 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-05 00:44:19 +00:00
Eric Fiselier
6e02e89f65 Fix libcxx build with glibc 2.26+ by removing xlocale.h include.
Patch by Khem Raj. Reviewed as D35697. Also see PR33729.



git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309920 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-03 04:28:10 +00:00
Eric Fiselier
650a099d4b Add system header pragma to BSD locale fallback headers.
This prevent leaking warnings to the user about use of C++11
extensions in C++03.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309917 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-03 02:50:43 +00:00
Marshall Clow
4aee06b818 Rename a couple variables to eliminate a shadow warning. No functionality change
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309881 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-02 20:29:26 +00:00
Marshall Clow
db84e0edae Fix shadowing warning
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309851 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-02 18:21:34 +00:00
Marshall Clow
b3d6031a54 Fix PR33727: std::basic_stringbuf only works with DefaultConstructible allocators. Thanks to Jonathan Wakely for the report and suggested fix
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309838 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-02 17:31:09 +00:00
Eric Fiselier
4876a73b0a Mark LWG 2942 as complete
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309528 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-30 22:28:08 +00:00
Eric Fiselier
923850ddb2 Mark LWG 2961 as complete
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309527 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-30 22:16:30 +00:00
Shoaib Meenai
487562fc64 [libc++] Hoist extern template above first use
This function template is referenced inside class basic_string as a
friend function. The extern template declaration needs to be above that
friend declaration to actually take effect.

This is important because this function was marked as exported in
r307966, so without the extern template taking effect, it can leak into
other DSOs as a visible symbol.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309474 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 02:54:41 +00:00
Stephan T. Lavavej
5d91f314f1 [libcxx] [test] Change comments to say C++ instead of c++. NFC.
This makes them consistent (many comments already used uppercase).

The special REQUIRES, UNSUPPORTED, and XFAIL comments are excluded from this change.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309468 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 00:55:35 +00:00
Stephan T. Lavavej
cf230766ee [libcxx] [test] The entire file futures.shared_future/wait_until.pass.cpp was indented by 1 space. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309467 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 00:55:27 +00:00
Stephan T. Lavavej
a8d0e52d11 [libcxx] [test] In func.wrap.func.con/alloc_F.pass.cpp, fix REQUIRES whitespace. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309466 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 00:55:25 +00:00
Stephan T. Lavavej
25072f0004 [libcxx] [test] Make files consistently end with newlines, NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309465 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 00:55:22 +00:00
Stephan T. Lavavej
a686caad20 [libcxx] [test] Untabify, NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309464 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 00:55:10 +00:00
Stephan T. Lavavej
62e519c2f9 [libcxx] [test] Strip trailing whitespace, NFC.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309463 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-29 00:54:49 +00:00
Stephan T. Lavavej
6e76840323 [libcxx] [test] Remove an unused local typedef in enable_shared_from_this.pass.cpp.
Trivial change, committed without review.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309322 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-27 21:16:37 +00:00
Marshall Clow
1fae624dcf Disable the deduction guide test I added in 309296 for the moment, while I figure out which compilers don't support deduction guides
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@309307 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-27 18:47:35 +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
Rachel Craik
24047fd4a7 Remove addtional parameters in function std::next() and std::prev()
Creating a function pointer with proper parameters pointing to std::next() or std::prev() should work.
This change moves the invented paramater for enable_if over to the return type to resolve this QoI issue.

Patch by Jason Liu.

Differential Revision: https://reviews.llvm.org/D34649


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308932 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-24 22:17:05 +00:00
Marshall Clow
33e24e157e make sure that we don't call basic_streambuf::gbump with a value bigger than INT_MAX, since it only takes an int. Related to, but not quite the same as PR33725
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308880 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-24 14:05:10 +00:00
Nico Weber
bfa81b089c Fix grammar-o in comment.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308827 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-22 15:16:42 +00:00
Stephan T. Lavavej
d08ba82b09 [libcxx] [test] Update msvc_stdlib_force_include.hpp.
MSVC's STL is replacing _HAS_FUNCTION_ASSIGN with _HAS_FUNCTION_ALLOCATOR_SUPPORT,
and is adding _HAS_UNEXPECTED.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308535 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 22:02:33 +00:00
Stephan T. Lavavej
3c00cff599 [libcxx] [test] Fix Clang -Wunused-local-typedef warnings.
Fix D34536.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308534 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 22:02:29 +00:00
Stephan T. Lavavej
321617c33d [libcxx] [test] Fix MSVC warning C4067 "unexpected tokens following preprocessor directive - expected a newline".
Also fixes Clang/LLVM 4.0 (for Windows) error "function-like macro 'TEST_GLIBC_PREREQ' is not defined".

Fixes D34535.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308533 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 22:02:25 +00:00
Stephan T. Lavavej
ffc9965e58 [libcxx] [test] Fix MSVC warning C4242 "conversion from 'int' to 'const char', possible loss of data".
Fixes D34534.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308532 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 22:02:22 +00:00
James Y Knight
fea8dc9721 Rework libcxx strerror_r handling.
The set of #ifdefs used to handle the two incompatible variants of
strerror_r were not complete (they didn't handle newlib appropriately).

Rather than attempting to make the ifdefs more complex, make them
unnecessary by choosing which behavior to use dependent upon the
return type.

Reviewers: waltl

Differential Revision: https://reviews.llvm.org/D34294

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308528 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 21:48:49 +00:00
Hans Wennborg
12ab658921 Update _LIBCPP_VERSION and the version in CMakeLists to 6.0
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308468 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 13:57:10 +00:00
Hans Wennborg
2d17369ac6 Bump docs version to 6.0
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308462 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-19 13:46:11 +00:00
Leo Li
158fe1062c [CMake] Use MATCHES for regular expression.
Subscribers: mgorny

Differential Revision: https://reviews.llvm.org/D35514

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308347 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-18 19:48:02 +00:00
Bruno Cardoso Lopes
da4047d838 Check for _MSC_VER before defining _LIBCPP_MSVCRT
Some targets (e.g. Darwin) might have the Win32 API available, but they
do not use MSVC CRT. Assume _LIBCPP_MSVCRT only when _MSC_VER is available
and __MINGW32__ isn't defined.

Differential Revision: https://reviews.llvm.org/D34588

rdar://problem/32628786

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@308225 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-17 21:52:31 +00:00