summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities
Commit message (Collapse)AuthorAgeFilesLines
...
* Add C++17 std::not_fn negator.Eric Fiselier2016-06-022-0/+578
| | | | | | | | | | | | | | | Summary: Exactly what it sounds like. I plan to commit this in a couple of days assuming no objections. Reviewers: mclow.lists, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20799 llvm-svn: 271464
* Remove enable_shared_from_this test since it leaks the control block and ↵Eric Fiselier2016-06-021-26/+0
| | | | | | fails with ASAN llvm-svn: 271459
* Implement P0033R1 - Re-enabling shared_from_thisEric Fiselier2016-06-021-0/+86
| | | | | | | | | | | | Summary: See http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0033r1.html Reviewers: mclow.lists Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D19254 llvm-svn: 271449
* Remove trailing whitespace in test suite. Approved by Marshall Clow.Eric Fiselier2016-06-0162-101/+101
| | | | llvm-svn: 271435
* Mark LWG issue 2520 as completeEric Fiselier2016-05-313-0/+16
| | | | llvm-svn: 271249
* Mark LWG issue 2565 as complete. Update the tests to check it.Eric Fiselier2016-05-312-28/+100
| | | | llvm-svn: 271238
* [libcxx] Improve tests to use the UNSUPPORTED lit directiveAsiri Rathnayake2016-05-2824-94/+33
| | | | | | | | | | | | | | | | | | | Quite a few libcxx tests seem to follow the format: #if _LIBCPP_STD_VER > X // Do test. #else // Empty test. #endif We should instead use the UNSUPPORTED lit directive to exclude the test on earlier C++ standards. This gives us a more accurate number of test passes for those standards and avoids unnecessary conflicts with other lit directives on the same tests. Reviewers: bcraig, ericwf, mclow.lists Differential revision: http://reviews.llvm.org/D20730 llvm-svn: 271108
* Guard testing of tuple extensions to make tests portableEric Fiselier2016-05-275-2/+16
| | | | llvm-svn: 271065
* Add a test for uniqueptr having either NULL and nullptrMarshall Clow2016-05-161-0/+6
| | | | llvm-svn: 269665
* Apply D20014 - fix a missing return in a test. Fixes PR#27720Marshall Clow2016-05-121-1/+1
| | | | llvm-svn: 269298
* Change allocator<T>::allocate to throw length_error, not bad_allocEric Fiselier2016-05-071-3/+5
| | | | llvm-svn: 268842
* Removing some trailing whitespaceEric Fiselier2016-05-042-2/+2
| | | | llvm-svn: 268543
* Fix PR27538. Remove __is_convertible specializations for array and function ↵Eric Fiselier2016-05-031-2/+46
| | | | | | | | | | | | | types. This patch fixes a bunch of bugs in the fallback implementation of is_convertible, which is used by GCC. Removing the "__is_convertible" specializations for array/function types we fallback on the SFINAE test, which is more correct. See https://llvm.org/bugs/show_bug.cgi?id=27538 llvm-svn: 268359
* Void cast runtime-unused variables. Patch from STL@microsoft.comEric Fiselier2016-05-024-5/+24
| | | | llvm-svn: 268284
* Fix or move various non-standard tests.Eric Fiselier2016-04-291-71/+0
| | | | | | | | | | | | This patch does the following: * Remove <__config> includes from some container tests. * Guards uses of std::launch::any in async tests because it's an extension. * Move "test/std/extensions" to "test/libcxx/extensions" * Moves various non-standard tests including those in "sequences/vector", "std/localization" and "utilities/meta". llvm-svn: 267981
* Move INVOKE tests into test/libcxx sub-tree.Eric Fiselier2016-04-296-1419/+16
| | | | | | | | | Testing the concrete implementation of INVOKE means calling the implementation specific names `__invoke` and `__invoke_constexpr`. For this reason the test are non-standard. For this reason it's best if the tests live outside of the `test/std` directory. llvm-svn: 267973
* Add proper include for unique_ptr. Patch from STL@microsoft.comEric Fiselier2016-04-291-0/+1
| | | | llvm-svn: 267958
* Guard libc++ specific c.__invariants() tests in LIBCPP_ASSERT macrosEric Fiselier2016-04-281-1/+1
| | | | llvm-svn: 267947
* Remove names of unreferenced parameters. Patch from STL@microsoft.comEric Fiselier2016-04-284-6/+6
| | | | llvm-svn: 267852
* Add braces, move braces, and rename variables to avoid shadowing. Patch from ↵Eric Fiselier2016-04-281-2/+2
| | | | | | STL@microsoft.com llvm-svn: 267844
* Provide member function definitions to avoid warnings. Patch from ↵Eric Fiselier2016-04-281-1/+1
| | | | | | STL@microsoft.com llvm-svn: 267843
* Guard Clang and GCC specific pragmas. Patch from STL@microsoft.comEric Fiselier2016-04-2826-0/+52
| | | | llvm-svn: 267836
* Rename a few tests that had typos in their names. No functional change. ↵Marshall Clow2016-04-232-0/+0
| | | | | | Thanks to STL for the catch llvm-svn: 267287
* Fix some non-standard parts of our test suite. Reported by STLEric Fiselier2016-04-221-0/+1
| | | | llvm-svn: 267131
* Add is_swappable/is_nothrow_swappable traitsEric Fiselier2016-04-218-61/+534
| | | | llvm-svn: 267079
* Add 'is_callable' and 'is_nothrow_callable' traits and cleanup INVOKE.Eric Fiselier2016-04-2010-58/+488
| | | | | | | | | | | | The primary purpose of this patch is to add the 'is_callable' traits. Since 'is_nothrow_callable' required making 'INVOKE' conditionally noexcept I also took this oppertunity to implement a constexpr version of INVOKE. This fixes 'std::experimental::apply' which required constexpr 'INVOKE support'. This patch will be followed up with some cleanup. Primarly removing most of "__member_function_traits" since it's no longer used by INVOKE (in C++11 at least). llvm-svn: 266836
* XFAILing new test on C++03Ben Craig2016-04-191-0/+1
| | | | | | initializer_list doesn't exist in C++03. llvm-svn: 266820
* Include initializer_list from utilityBen Craig2016-04-191-0/+20
| | | | | | | The C++11 and C++14 standards both say in the header <utility> synopsis that <utility> shall include <initializer_list>. llvm-svn: 266808
* Make tuples constructors conditionally EXPLICIT. See N4387Eric Fiselier2016-04-1911-3/+285
| | | | llvm-svn: 266703
* Implement LWG issue 2219 - support reference_wrapper in INVOKEEric Fiselier2016-04-187-45/+336
| | | | llvm-svn: 266590
* Add hash specializations for __int128_t. Fixes LWG issue 2119Eric Fiselier2016-04-181-3/+8
| | | | llvm-svn: 266587
* Add tests for LWG issue 2361Eric Fiselier2016-04-1815-8/+262
| | | | llvm-svn: 266586
* Cleanup and guard tuple's constructor SFINAE. Fixes PR22806 and PR23256.Eric Fiselier2016-04-153-2/+278
| | | | | | | | | | | | | | | | | | | | | There are two main fixes in this patch. First the constructor SFINAE was changed so that it's evaluated in two stages where the first stage evaluates the "safe" SFINAE conditions and the second evaluates the "dangerous" ones. The key is that the second stage is lazily evaluated only if the first stage passes. This helps fix PR23256 (https://llvm.org/bugs/show_bug.cgi?id=23256). The second fix is for PR22806 and LWG issue 2549. This fix applies the suggested resolution to the LWG issue in order to prevent the construction of dangling references. The SFINAE for this check is contained within the _PreferTupleLikeConstructor alias template. The tuple-like constructors are disabled whenever that trait returns false. (https://llvm.org/bugs/show_bug.cgi?id=22806) (http://cplusplus.github.io/LWG/lwg-active.html#2549) llvm-svn: 266461
* [libcxx] Remove the "reduced-arity-initialization" extension from the ↵Eric Fiselier2016-04-152-55/+98
| | | | | | | | | | | | | | | | | uses-allocator constructors Summary: A default uses-allocator constructor has been added since that overload was previously provided by the extended constructor. Since Clang does implicit conversion checking after substitution this constructor has to deduce the allocator_arg_t parameter so that it can prevent the evaluation of "is_default_constructible" if the first argument doesn't match. See http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#1391 for more information. This patch fixes PR24779 (https://llvm.org/bugs/show_bug.cgi?id=24779) Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D19006 llvm-svn: 266409
* Make std::addressof constexpr in C++17 (Clang only).Eric Fiselier2016-03-171-0/+42
| | | | llvm-svn: 263688
* Mark exception-throwing test as XFAIL when exceptions are disabledMarshall Clow2016-03-141-0/+1
| | | | llvm-svn: 263405
* Fix for PR26812: possible overflow issue in std::allocator::allocateMarshall Clow2016-03-031-0/+46
| | | | llvm-svn: 262610
* Added tests to make sure that the categorization traits work on incomplete typesMarshall Clow2016-02-2529-15/+127
| | | | llvm-svn: 261925
* No, really - test the constructorMarshall Clow2016-02-251-1/+1
| | | | llvm-svn: 261875
* Add test to ensure that the converting constructor in N4089 is present and ↵Marshall Clow2016-02-251-0/+27
| | | | | | working llvm-svn: 261874
* These new tests fail on the green-dragon bots, which use an old Apple compiler.Marshall Clow2016-02-231-8/+10
| | | | | | | Since they're scheduled to be updated soon, we'll just comment out this test for the moment, and re-commit when the bots are updated. llvm-svn: 261661
* Add tests for LWG#2560. No code changes, just testsMarshall Clow2016-02-231-0/+9
| | | | llvm-svn: 261653
* Fix PR26103 - Error calling is_convertible with incomplete type. Patch from ↵Eric Fiselier2016-01-261-0/+8
| | | | | | Michael Daniels. llvm-svn: 258852
* Implement LWG#2385; remove the allocator-aware std::function::assign call. ↵Marshall Clow2016-01-251-0/+4
| | | | | | It was useless, and didn't actually *do anything* with the allocator. Now it's gone. On the off chance that someone is mistakenly calling it, it's only gone in C++1z llvm-svn: 258697
* Implement LWG#2101 'Some transformation types can produce impossible types' ↵Marshall Clow2016-01-215-13/+114
| | | | | | Introduced a new (internal) type trait '__is_referenceable' with tests. Use that trait in add_lvalue_reference, add_rvalue_reference and add_pointer. llvm-svn: 258418
* Mark some test XFAIL for GCC 4.9 due to missing is_trivial* traitsEric Fiselier2016-01-209-3/+29
| | | | llvm-svn: 258287
* Add missing license headersEric Fiselier2016-01-192-0/+18
| | | | llvm-svn: 258196
* One more missing std:: qualification from JonathanMarshall Clow2016-01-121-1/+2
| | | | llvm-svn: 257506
* Add a bunch of missing includes in the test suite to make it more portable. ↵Marshall Clow2016-01-122-2/+4
| | | | | | Fixes bugs #26120 and #26121. Thanks to Jonathan Wakely for the reports and the patches. llvm-svn: 257474
* [libcxx] Fix LWG Issue #2367 - Fixing std::tuple and std::pair's default ↵Eric Fiselier2015-12-232-6/+175
| | | | | | | | | | | | | | constructors. Summary: This patch implements the solution for LWG Issue #2367. See http://cplusplus.github.io/LWG/lwg-active.html#2367 Reviewers: mclow.lists, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D13750 llvm-svn: 256325
OpenPOWER on IntegriCloud