summaryrefslogtreecommitdiffstats
path: root/libcxx/test
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix unreferenced parameters. Patch from STL@microsoft.comEric Fiselier2016-10-234-9/+9
| | | | llvm-svn: 284942
* Fix shadowing warning. Patch from STL@microsoft.comEric Fiselier2016-10-231-1/+1
| | | | llvm-svn: 284941
* [libcxx] Support std::regex_constants::match_not_nullTim Shen2016-10-211-0/+46
| | | | | | | | | | | | Summary: Fixes PR21597. Reviewers: mclow.lists, EricWF Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D25595 llvm-svn: 284881
* Adding a missing constexpr test for reverse_iterator operator[].Marshall Clow2016-10-201-0/+11
| | | | llvm-svn: 284731
* Attempt to workaround XPASS for aligned allocation testsEric Fiselier2016-10-204-4/+8
| | | | llvm-svn: 284691
* Implement constexpr support for reverse_iterator. Reviewed as ↵Marshall Clow2016-10-1923-23/+366
| | | | | | https://reviews.llvm.org/D25534 llvm-svn: 284602
* Make any_cast<void()>(nullptr) compileEric Fiselier2016-10-161-0/+13
| | | | llvm-svn: 284333
* Update LWG 2767 and add test caseEric Fiselier2016-10-161-0/+14
| | | | llvm-svn: 284324
* Update status for std::optional LWG issues and fix an optional SFINAE bugEric Fiselier2016-10-162-0/+15
| | | | llvm-svn: 284323
* Update issue status for LWG 2744Eric Fiselier2016-10-167-49/+75
| | | | llvm-svn: 284322
* Update issue status for LWG 2768 and 2769Eric Fiselier2016-10-164-42/+72
| | | | llvm-svn: 284321
* Implement LWG 2712 and update other issues statusEric Fiselier2016-10-161-2/+26
| | | | llvm-svn: 284318
* Implement LWG 2681 and 2682Eric Fiselier2016-10-161-0/+41
| | | | llvm-svn: 284316
* Implement LWG 2672.Eric Fiselier2016-10-151-0/+29
| | | | llvm-svn: 284314
* Implement modified LWG 2665Eric Fiselier2016-10-151-0/+8
| | | | llvm-svn: 284313
* Implement LWG2664 and update its statusEric Fiselier2016-10-151-0/+70
| | | | llvm-svn: 284310
* Prevent new/delete replacement tests from being optimized away.Eric Fiselier2016-10-147-37/+31
| | | | llvm-svn: 284289
* Clarify XFAIL commentsEric Fiselier2016-10-142-2/+4
| | | | llvm-svn: 284282
* Work around Clang driver segfault when --coverage is used with -c and /dev/nullEric Fiselier2016-10-141-1/+1
| | | | llvm-svn: 284225
* XFAIL aligned allocation tests for older Clang versionsEric Fiselier2016-10-149-18/+32
| | | | llvm-svn: 284214
* XFAIL aligned allocation test failures with UBSANEric Fiselier2016-10-144-9/+10
| | | | llvm-svn: 284210
* Add void_t and invoke feature test macrosEric Fiselier2016-10-142-0/+75
| | | | llvm-svn: 284209
* Implement P0035R4 -- Add C++17 aligned allocation functionsEric Fiselier2016-10-1413-0/+925
| | | | | | | | | | | | | | | | 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 llvm-svn: 284206
* Implement http://wg21.link/p0302r1: Removing Allocator Support in ↵Marshall Clow2016-10-1312-0/+210
| | | | | | std::function. These functions never worked, and as far as I know, no one ever called them. llvm-svn: 284164
* Add missing include in test; NFC. Thanks to Jonathan Wakely for the report.Marshall Clow2016-10-131-0/+1
| | | | llvm-svn: 284120
* Disable trivial pair copy/move tests when unsupportedDimitry Andric2016-10-121-0/+6
| | | | | | | | | | | | | | | | | | 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 llvm-svn: 284047
* Correctly grant rebound limited_allocators friendship.Eric Fiselier2016-10-121-0/+1
| | | | llvm-svn: 284006
* Remove incorrect XFAILSEric Fiselier2016-10-124-16/+2
| | | | llvm-svn: 284005
* Unbreak C++03 buildEric Fiselier2016-10-121-1/+1
| | | | llvm-svn: 284004
* Remove usages of _LIBCPP_CONSTEXPR under test/stdEric Fiselier2016-10-125-16/+26
| | | | llvm-svn: 284002
* Remove usages of _ALIGNAS_TYPEEric Fiselier2016-10-126-5/+21
| | | | llvm-svn: 283999
* support --param=std=gnu++XXEric Fiselier2016-10-121-1/+1
| | | | llvm-svn: 283997
* Fix more C++11 constexpr issues in the testsEric Fiselier2016-10-121-9/+24
| | | | llvm-svn: 283996
* Fix nasty_containers.hpp for other stdlibsEric Fiselier2016-10-122-44/+58
| | | | llvm-svn: 283994
* Fix use of C++14 constexpr in C++11Eric Fiselier2016-10-121-0/+4
| | | | llvm-svn: 283993
* Remove use of _VSTD::__invoke in the not_fn testsEric Fiselier2016-10-121-1/+4
| | | | llvm-svn: 283991
* Protect special members of NullBase archetype to avoid exposing themEric Fiselier2016-10-121-4/+11
| | | | llvm-svn: 283983
* Implement N4606 optionalEric Fiselier2016-10-1281-44/+7141
| | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Adapt implementation of Library Fundamentals TS optional into an implementation of N4606 optional. - Update relational operators per http://wg21.link/P0307 - Update to requirements of http://wg21.link/P0032 - Extension: Implement trivial copy/move construction/assignment for `optional<T>` when `T` is trivially copyable. Audit P/Rs for optional LWG issues: - 2756 "C++ WP optional<T> should 'forward' T's implicit conversions" Implemented, which also resolves 2753 "Optional's constructors and assignments need constraints" (modulo my refusal to explicitly delete the move operations, which is a design error that I'm working on correcting in the 2756 P/R). - 2736 "nullopt_t insufficiently constrained" Already conforming. I've added a test ensuring that `nullopt_t` is not copy-initializable from an empty braced-init-list, which I believe is the root intent of the issue, to avoid regression. - 2740 "constexpr optional<T>::operator->" Already conforming. - 2746 "Inconsistency between requirements for emplace between optional and variant" No P/R, but note that the author's '"suggested resolution" is already implemented. - 2748 "swappable traits for optionals" Already conforming. - 2753 "Optional's constructors and assignments need constraints" Implemented. Most of the work for this patch was done by Casey Carter @ Microsoft. Thank you Casey! Reviewers: mclow.lists, CaseyCarter, EricWF Differential Revision: https://reviews.llvm.org/D22741 llvm-svn: 283980
* Revert Add <optional>. Will recommit with better commit messageEric Fiselier2016-10-1281-7132/+45
| | | | llvm-svn: 283978
* Add <optional> header.Eric Fiselier2016-10-1281-45/+7132
| | | | | | | | This patch is largely thanks to Casey Carter @ Microsoft. He did the initial work of porting our experimental implementation and tests over to namespace std. llvm-svn: 283977
* Fix two more tests that hang when testing against libstdc++Eric Fiselier2016-10-122-0/+6
| | | | llvm-svn: 283976
* Prevent the test suite from hanging when run against libstdc++Eric Fiselier2016-10-122-0/+6
| | | | llvm-svn: 283975
* Add mork workarounds for running the test suite against libstdc++Eric Fiselier2016-10-123-2/+10
| | | | llvm-svn: 283960
* Make it easier to run the libc++ test suite against libstdc++Eric Fiselier2016-10-122-16/+51
| | | | llvm-svn: 283958
* Fix LWG2683 - filesystem::copy() should always clear the user-provided ↵Eric Fiselier2016-10-111-5/+27
| | | | | | error_code llvm-svn: 283951
* Fix std::pair on FreeBSDEric Fiselier2016-10-111-17/+110
| | | | | | | | | | | | | | | | Summary: FreeBSD ships an old ABI for std::pair which requires that it have non-trivial copy/move constructors. Currently the non-trivial copy/move is achieved by providing explicit definitions of the constructors. This is problematic because it means the constructors don't SFINAE properly. In order to SFINAE copy/move constructors they have to be explicitly defaulted and hense non-trivial. This patch attempts to provide SFINAE'ing copy/move constructors for std::pair while still making them non-trivial. It does this by adding a base class with a non-trivial copy constructor and then allowing pair's constructors to be generated by the compiler. This also allows the constructors to be constexpr. Reviewers: emaste, theraven, rsmith, dim Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D25389 llvm-svn: 283944
* Fix incorrect exception handling behavior in the uninitialized algorithmsEric Fiselier2016-10-115-24/+14
| | | | llvm-svn: 283941
* Add tests to check that swap(std::function, std::function) is noexcept. This ↵Marshall Clow2016-10-101-1/+14
| | | | | | is LWG#2062, but we already do this. No changes to the library, just adding tests. llvm-svn: 283780
* Add tests for LWG2544. We already implement this; just adding tests to make ↵Marshall Clow2016-10-103-0/+66
| | | | | | sure that we keep doing it. llvm-svn: 283749
* Provide a constexpr addressof with GCC 7.Eric Fiselier2016-10-102-1/+2
| | | | | | | | | | | | | | | | __builtin_addressof was added to the GCC trunk in the past week. This patch teaches libc++ about it so it can correctly provide constexpr addressof. Unfortunately this patch will break users of earlier GCC 7 builds, since we expect __builtin_addressof but one won't be provided. One option would be to only use __builtin_addressof for GCC 7.1 and above, but that means waiting for another release. Instead I've specifically chosen to break older GCC 7 versions. Since GCC 7 has yet to be released, and the 7.0 release is a development release, I believe that anybody currently using GCC 7.0 will have no issue upgrading. llvm-svn: 283715
OpenPOWER on IntegriCloud