| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 268346
|
|
|
|
| |
llvm-svn: 268294
|
|
|
|
| |
llvm-svn: 268285
|
|
|
|
| |
llvm-svn: 268284
|
|
|
|
|
|
| |
STL@microsoft.com
llvm-svn: 268153
|
|
|
|
|
|
| |
case. Rename previously added test
llvm-svn: 268009
|
|
|
|
| |
llvm-svn: 267983
|
|
|
|
| |
llvm-svn: 267982
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 267968
|
|
|
|
| |
llvm-svn: 267963
|
|
|
|
| |
llvm-svn: 267962
|
|
|
|
| |
llvm-svn: 267961
|
|
|
|
| |
llvm-svn: 267959
|
|
|
|
| |
llvm-svn: 267958
|
|
|
|
| |
llvm-svn: 267947
|
|
|
|
| |
llvm-svn: 267852
|
|
|
|
|
|
| |
STL@microsoft.com
llvm-svn: 267844
|
|
|
|
|
|
| |
STL@microsoft.com
llvm-svn: 267843
|
|
|
|
| |
llvm-svn: 267838
|
|
|
|
| |
llvm-svn: 267836
|
|
|
|
| |
llvm-svn: 267654
|
|
|
|
|
|
| |
problematic. They still get compiled, and if the compile succeeds, the buildbots complain. Replace the XFAIL with #error.
llvm-svn: 267591
|
|
|
|
|
|
| |
__cpluplus (use TEST_STD_VERS and/or XFAIL instead). No functional change
llvm-svn: 267567
|
|
|
|
|
|
| |
Thanks to STL for the catch
llvm-svn: 267287
|
|
|
|
| |
llvm-svn: 267131
|
|
|
|
| |
llvm-svn: 267119
|
|
|
|
| |
llvm-svn: 267091
|
|
|
|
| |
llvm-svn: 267090
|
|
|
|
| |
llvm-svn: 267085
|
|
|
|
| |
llvm-svn: 267079
|
|
|
|
| |
llvm-svn: 266855
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prevent calling terminate.
Summary:
Hi,
When creating a new thread libc++ performs at least 2 allocations. The first allocates a tuple of args and the functor that will be passed to the new thread. The second allocation is for the thread local storage needed internally by libc++. Currently the second allocation happens in the child thread, meaning that if it throws the program will terminate with an uncaught bad alloc.
The solution to this is to allocate ALL memory in the parent thread and then pass it to the child.
See https://llvm.org/bugs/show_bug.cgi?id=15638
Reviewers: mclow.lists, danalbert, jroelofs, EricWF
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D13748
llvm-svn: 266851
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
initializer_list doesn't exist in C++03.
llvm-svn: 266820
|
|
|
|
|
|
|
| |
The C++11 and C++14 standards both say in the header <utility> synopsis that
<utility> shall include <initializer_list>.
llvm-svn: 266808
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These changes make linking against static libraries more explicit. Instead
of using -lc++ and -lc++abi in the tests, an absolute path to the library is
provided instead.
The choices of shared vs. static, and the choices of library paths for both
libcxx and libcxxabi needed to be exchanged for this to work. In other words,
libcxx tests need to know the library path of libcxxabi, and whether libcxxabi
is a static or shared library.
Some Mac specific logic for testing against libc++abi had to be moved from
libcxxabi's config.py, as it was overriding choices made in libcxx's config.py.
That logic is now in libcxx's target_info.py.
Testing a static libcxx on Linux will now automatically link in librt most of
the time. Previously, lots of pthread tests would fail because of an
unresolved clock_gettime.
http://reviews.llvm.org/D16544
llvm-svn: 266730
|
|
|
|
| |
llvm-svn: 266703
|
|
|
|
| |
llvm-svn: 266590
|
|
|
|
| |
llvm-svn: 266587
|
|
|
|
| |
llvm-svn: 266586
|
|
|
|
| |
llvm-svn: 266585
|
|
|
|
|
|
|
|
|
| |
In cases where emplace is called with two arguments and the first one
matches the key_type we can Key to check for duplicates before allocating.
This patch expands on work done by dexonsmith@apple.com.
llvm-svn: 266498
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
containers
Summary: This patch applies Duncan's work on __hash_table to __tree.
Reviewers: mclow.lists, dexonsmith
Subscribers: dexonsmith, cfe-commits
Differential Revision: http://reviews.llvm.org/D18637
llvm-svn: 266491
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
reported as bug #27259. As a drive-by fix, replace the hand-rolled equivalent to addressof in __wrap_iter with the real thing.
llvm-svn: 265914
|
|
|
|
|
|
| |
with existing system dylibs. Implements LWG#2583
llvm-svn: 265706
|
|
|
|
| |
llvm-svn: 265674
|