Eric Fiselier
a0b4d55133
Add more tests for optional<const T>
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285384 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-28 06:40:29 +00:00
Eric Fiselier
6994470189
Add __libcpp_version file and __libcpp_library_version function.
...
This patch does two seperate things. First it adds a file called
"__libcpp_version" which only contains the current libc++ version
(currently 4000). This file is not intended for use as a header. This file
is used by Clang in order to easily determine the installed libc++ version.
This allows Clang to enable/disable certain language features only when the
library supports them.
The second change is the addition of _LIBCPP_LIBRARY_VERSION macro, which
returns the version of the installed dylib since it may be different than
the headers.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285382 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-28 06:06:50 +00:00
Tim Shen
38c2a3767b
[libcxx] Make regex_match backtrack when search fails
...
Summary:
Fixes PR19851.
alg.re.match/ecma.pass.cpp still XFAILS on linux, but after commenting out
locale-related tests, it passes. I don't have a freebsd machine to produce a
full pass.
Reviewers: mclow.lists
Subscribers: cfe-commits, emaste
Differential Revision: https://reviews.llvm.org/D26026
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285352 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-27 21:40:34 +00:00
Stephan T. Lavavej
e465ff34be
[PATCH] D25483: [libcxx] [test] Fix non-Standard assumptions about how many elements are allocated
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285346 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-27 21:25:12 +00:00
Casey Carter
856947863f
Cleanup nonportable behavior in tests for std::any
...
Fixes MS issues 63, 64, and 65.
test/std/utilities/any/any.class/any.cons/move.pass.cpp:
* "Moves are always destructive" is not a portable assumption; check with LIBCPP_ASSERT.
test/std/utilities/any/any.class/any.cons/value.pass.cpp:
* The standard does not forbid initializing std::any from any pointer-to-function type. Remove the non-conforming "DecayTag" test.
test/std/utilities/any/any.class/any.modifiers/swap.pass.cpp:
* Self-swap is not specified to perform no moves; check with LIBCPP_ASSERT.
Differential Revision: https://reviews.llvm.org/D26007
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285234 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-26 20:18:13 +00:00
Casey Carter
b035d8f064
Silence unused parameter warnings in archetypes.hpp
...
Reviewed at: https://reviews.llvm.org/D25958
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285213 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-26 17:22:25 +00:00
Eric Fiselier
e577a4c660
Fix nullptr tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285117 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-25 20:45:17 +00:00
Eric Fiselier
c4a7e9177a
Fix non-portable tests for temp_directory_path(...)
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285020 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-24 20:40:35 +00:00
Eric Fiselier
04b7f3da2b
Add missing include in string_view tests. Patch from Billy ONeil @ microsoft
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285012 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-24 20:11:17 +00:00
Eric Fiselier
44543930e4
Fix shadow warnings in string_view tests. Patch from STL@microsoft.com
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285011 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-24 20:10:00 +00:00
Eric Fiselier
87c6313718
Backout enabling -Wshadow until I have time to fix the breakage
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284952 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-23 22:24:11 +00:00
Eric Fiselier
6547b4fa2b
Fix libc++ specific assertion in permissions(...) tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284945 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-23 19:14:58 +00:00
Eric Fiselier
c8e7821916
Turn on -Wshadow so I find occurances before STL does
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284944 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-23 19:01:10 +00:00
Eric Fiselier
26cbb8d03e
Make make_from_tuple tests more portable. Patch from STL@microsoft.com
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284943 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-23 18:55:51 +00:00
Eric Fiselier
317120240b
Fix unreferenced parameters. Patch from STL@microsoft.com
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284942 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-23 18:52:58 +00:00
Eric Fiselier
e2c4227504
Fix shadowing warning. Patch from STL@microsoft.com
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284941 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-23 18:47:58 +00:00
Tim Shen
741cb8b8e6
[libcxx] Support std::regex_constants::match_not_null
...
Summary: Fixes PR21597.
Reviewers: mclow.lists, EricWF
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D25595
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284881 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-21 20:41:47 +00:00
Marshall Clow
464abc8aee
Adding a missing constexpr test for reverse_iterator operator[].
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284731 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-20 14:57:34 +00:00
Eric Fiselier
6d36efa497
Attempt to workaround XPASS for aligned allocation tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284691 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-20 03:31:07 +00:00
Marshall Clow
4414a6a911
Implement constexpr support for reverse_iterator. Reviewed as https://reviews.llvm.org/D25534
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284602 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-19 15:12:50 +00:00
Eric Fiselier
4035b668e6
Make any_cast<void()>(nullptr) compile
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284333 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 11:56:38 +00:00
Eric Fiselier
fcdb3f77e8
Update LWG 2767 and add test case
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284324 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 03:45:06 +00:00
Eric Fiselier
46c0fcb2b3
Update status for std::optional LWG issues and fix an optional SFINAE bug
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284323 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 03:21:35 +00:00
Eric Fiselier
846edfb837
Update issue status for LWG 2744
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284322 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 02:51:50 +00:00
Eric Fiselier
100a39d169
Update issue status for LWG 2768 and 2769
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284321 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 01:43:43 +00:00
Eric Fiselier
1e1bbc7437
Implement LWG 2712 and update other issues status
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284318 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 00:47:59 +00:00
Eric Fiselier
451f34db16
Implement LWG 2681 and 2682
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284316 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-16 00:29:22 +00:00
Eric Fiselier
25dc5bdb88
Implement LWG 2672.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284314 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-15 23:05:04 +00:00
Eric Fiselier
620a9a5ecf
Implement modified LWG 2665
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284313 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-15 22:37:42 +00:00
Eric Fiselier
4ca4e5038b
Implement LWG2664 and update its status
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284310 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-15 21:29:44 +00:00
Eric Fiselier
9ffd1d56b4
Prevent new/delete replacement tests from being optimized away.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284289 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 22:47:08 +00:00
Eric Fiselier
e630058e90
Clarify XFAIL comments
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284282 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 21:30:35 +00:00
Eric Fiselier
78c020bd78
Work around Clang driver segfault when --coverage is used with -c and /dev/null
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284225 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 10:30:33 +00:00
Eric Fiselier
f172df1f43
XFAIL aligned allocation tests for older Clang versions
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284214 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 08:47:09 +00:00
Eric Fiselier
34c6b805cf
XFAIL aligned allocation test failures with UBSAN
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284210 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 07:49:15 +00:00
Eric Fiselier
48aa2e14a2
Add void_t and invoke feature test macros
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284209 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 07:19:52 +00:00
Eric Fiselier
9acbffa370
Implement P0035R4 -- Add C++17 aligned allocation functions
...
Summary:
This patch implements the library side of P0035R4. The implementation is thanks to @rsmith.
In addition to the C++17 implementation, the library implementation can be explicitly turned on using `-faligned-allocation` in all dialects.
Reviewers: mclow.lists, rsmith
Subscribers: rsmith, cfe-commits
Differential Revision: https://reviews.llvm.org/D25591
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284206 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-14 06:46:30 +00:00
Marshall Clow
e29fb4c411
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.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284164 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-13 21:06:03 +00:00
Marshall Clow
698cce6e0e
Add missing include in test; NFC. Thanks to Jonathan Wakely for the report.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284120 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-13 13:21:38 +00:00
Dimitry Andric
ecb5332d41
Disable trivial pair copy/move tests when unsupported
...
Summary:
On FreeBSD, for ABI compatibility reasons, the pair trivial copy
constructor is disabled, using the aptly-named
`_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR` define.
Disable the related tests when this define is on, so they don't fail
unexpectedly.
Reviewers: emaste, rsmith, theraven, EricWF
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D25449
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284047 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 20:26:47 +00:00
Eric Fiselier
c69d8ca589
Correctly grant rebound limited_allocators friendship.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284006 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 11:35:37 +00:00
Eric Fiselier
9bc0638a92
Remove incorrect XFAILS
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284005 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 11:29:18 +00:00
Eric Fiselier
de8e3d3a4f
Unbreak C++03 build
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284004 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 11:20:27 +00:00
Eric Fiselier
a7b77ebd18
Remove usages of _LIBCPP_CONSTEXPR under test/std
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@284002 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 10:28:09 +00:00
Eric Fiselier
4775578c61
Remove usages of _ALIGNAS_TYPE
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283999 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 10:19:48 +00:00
Eric Fiselier
76f406d252
support --param=std=gnu++XX
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283997 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 09:53:35 +00:00
Eric Fiselier
6f6a9607c2
Fix more C++11 constexpr issues in the tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283996 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 09:48:44 +00:00
Eric Fiselier
159b45f505
Fix nasty_containers.hpp for other stdlibs
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283994 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 09:31:26 +00:00
Eric Fiselier
bf148f02bc
Fix use of C++14 constexpr in C++11
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283993 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 09:20:58 +00:00
Eric Fiselier
ae96260ceb
Remove use of _VSTD::__invoke in the not_fn tests
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@283991 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-12 09:06:12 +00:00