48b428d540Fix the tests I broke with the last commit. Sorry for the noise
Marshall Clow
2014-11-17 19:16:57 +00:00
4b3ca8c249Implement LWG2400 - 'shared_ptr's get_deleter() should use addressof()', and add tests. Mark LWG2400 and LWG2404 as complete
Marshall Clow
2014-11-17 19:05:50 +00:00
36628eb77aReworked mismatch tests to count the number of comparisons, and make sure we are conforming with LWG2404. We are
Marshall Clow
2014-11-17 18:52:25 +00:00
cfeac66f8cFix a warning in the test; no functionality change
Marshall Clow
2014-11-17 16:34:44 +00:00
88aae920efImplement void_t from N3911. Add a private version for use in the library before C++1z. Update the 1z status page, marking a bunch of issues that don't require library changes as complete (2129, 2212, 2230, 2233, 2325, 2365, 2376)
Marshall Clow
2014-11-17 15:50:08 +00:00
275b6bbe1cAdd tests to ensure that reference_wrapper<T> is trivially copyable. This was added to C++1z with the adoption of N4277, but libc++ already implemented it as a conforming extension. No code changes were needed, just more tests.
Marshall Clow
2014-11-17 15:04:46 +00:00
9a1468f79eFix build regression caused by not defining ABI library macros
Eric Fiselier
2014-11-15 17:25:23 +00:00
8e2855ce0b[libcxx] Refactor CMakeLists.txt handling of compile and link flags to suppress warnings.
Eric Fiselier
2014-11-15 06:26:30 +00:00
0364baca04Split thread test into two parts. Mark one as XFAIL with ASAN.
Eric Fiselier
2014-11-15 01:58:45 +00:00
017e1aab88Initialize pointer in string conversion helpers to prevent MSAN diagnostic.
Eric Fiselier
2014-11-14 22:23:57 +00:00
1383dc5bd0add debug info when compiling sanitizer tests
Eric Fiselier
2014-11-14 22:18:03 +00:00
fd2848735aAdd -gline-tables-only when compiling w/ sanitizers in RELEASE
Eric Fiselier
2014-11-14 20:38:07 +00:00
50ada3a8f7[libcxx] Fix memory leak in strstream tests.
Eric Fiselier
2014-11-14 19:10:43 +00:00
d759095887[libcxx] Fix vector annotator size increase in vector::insert(pos, count, value)
Eric Fiselier
2014-11-14 18:28:36 +00:00
1c3b15d339Split string capacity test into two parts and mark one part as UNSUPPORTED when using sanitizers.
Eric Fiselier
2014-11-14 03:16:12 +00:00
71915c132aMark more tests as UNSUPPORTED with ASAN and MSAN.
Eric Fiselier
2014-11-14 02:55:16 +00:00
44678f4058Setup llvm-symbolizer when running the tests with sanitizers
Eric Fiselier
2014-11-14 02:47:08 +00:00
05123a8d9fAdd -O3 when testing with UBSAN. This triggers far undefined behaviour
Eric Fiselier
2014-11-14 02:07:52 +00:00
2138b18080Mark more locale tests as unsupported with ASAN and MSAN
Eric Fiselier
2014-11-13 22:45:23 +00:00
1cf810b81bReplaced checking in string_view::remove_suffix/remove_prefix by _LIBCPP_ASSERT, since this is technically undefined behavior. Fixes PR#21496
Marshall Clow
2014-11-11 22:07:10 +00:00
3f5579f0b2Fix typo in allocator_traits::construct. This fixes PR14175, which shows up if an allocator has a no-args construct method
Marshall Clow
2014-11-11 19:22:33 +00:00
c7b233d1deFixed a typo in a paper name: 4190 --> N4190
Marshall Clow
2014-11-11 16:45:50 +00:00
3f305aefa0EricQWF's code coverage work showed that none of the libc++ tests were exercising some code in vector<bool>. Add more tests in an attempt to get better coverage
Marshall Clow
2014-11-11 00:16:30 +00:00
1e895c1fd7Update status pages for C++1z
Marshall Clow
2014-11-10 15:43:20 +00:00
b6e0ef2debFix rvalue bug in __has_operator_addressof
Eric Fiselier
2014-11-05 21:20:10 +00:00
341b59021cFix operator & detection trait to check for free function overloads as well
Eric Fiselier
2014-11-05 20:59:18 +00:00
69697c8506Mark another test as UNSUPPORTED with ASAN and MSAN
Eric Fiselier
2014-11-04 17:03:47 +00:00
829a84308eActually mark the tests an unsupported with MSAN (not just ASAN)
Eric Fiselier
2014-11-04 05:36:15 +00:00
72aab5f478Mark tests that replace operator new/delete as UNSUPPORTED with ASAN and MSAN.
Eric Fiselier
2014-11-04 05:11:41 +00:00
1de15f518fAdd test for type properties of std::reference_wrapper
Eric Fiselier
2014-11-04 01:54:44 +00:00
3be7f19317Partial fix for building w/ libcxxrt on OSX. Patch from C Bergstrom.
Eric Fiselier
2014-11-01 00:41:42 +00:00
f53135f39blibcxxrt defines bad_array_new_length::what() so move that into a conditional compilation block
Eric Fiselier
2014-11-01 00:11:25 +00:00
3fdac97f2alibcxxrt now implements bad_array_new_length and need to gaurd against multiple defines. Patch from Baptiste Daroussin.
Eric Fiselier
2014-10-29 23:14:53 +00:00
a01a62391cFix example in documentation of target triple sanitization.
Eric Fiselier
2014-10-28 18:03:38 +00:00
522aaf67ea[libcxx] Delay evaluation of __make_tuple_types to prevent blowing the max template instantiation depth. Fixes Bug #18345
Eric Fiselier
2014-10-28 06:31:22 +00:00
cf85245c08Test that the single-threaded lit feature is available iff the corresponding guard is #defined
Jonathan Roelofs
2014-10-27 22:39:19 +00:00
2b0f03a2a7Add special case handling of linux target triples that do not contain -gnu.
Eric Fiselier
2014-10-27 22:14:25 +00:00
4889a16c9fAdd test to ensure including <atomic> fails when _LIBCPP_HAS_NO_THREADS is defined.
Eric Fiselier
2014-10-27 21:38:23 +00:00
bff83f9aab[libcxx] use clang's __char16_t and __char32_t definitions on Linux in C++03 mode.
Eric Fiselier
2014-10-27 20:29:05 +00:00
62a0e01343Fix use of operator comma in is_permutation and delete comma operator for test iterators.
Eric Fiselier
2014-10-27 20:26:25 +00:00
e4e883e6c8[libcxx] Remove use of uniform initialization from regex tests so that they compile in C++03.
Eric Fiselier
2014-10-27 19:29:32 +00:00
b991975439[libcxx] Fix use of operator comma where the types can be user defined
Eric Fiselier
2014-10-27 19:28:20 +00:00
1d306de1a7PR #21321 talked about implementation-defined behavior of realloc. I poo-poohed it, and was wrong. Fix the call in <locale>. Review the others, refactored some duplicated code, and found overflow bugs (and __event_cap_ was never getting updated, either).
Marshall Clow
2014-10-27 19:08:10 +00:00
129e07fe99Change the comment on the closing #endif to match the condition on the corresponding #ifdef. Thanks to K-ballo for the catch. No functionality change.
Marshall Clow
2014-10-26 20:29:38 +00:00
5636e63563Change uses of sys.platform == 'linux2' to sys.platform.startswith('linux')
Eric Fiselier
2014-10-23 22:57:56 +00:00
79578cd14f[libcxx] XFAIL all currently failing libc++ tests for linux.
Eric Fiselier
2014-10-23 21:17:36 +00:00
29151f64e4Only link tests against -ldl on linux
Eric Fiselier
2014-10-23 20:45:37 +00:00
a0ab096796Make headers available in the build directory
Justin Bogner
2014-10-23 16:51:12 +00:00
4d2413ca4bAdd support for "fancy" pointers to promise and packaged_task.
Eric Fiselier
2014-10-23 06:24:45 +00:00
4e7d53664dAdd support for "fancy" pointers to shared_ptr. Fixes PR20616
Eric Fiselier
2014-10-23 04:12:28 +00:00
9b82e151feFix a couple of failing tests for C++03 by checking for rvalue reference support first.
Marshall Clow
2014-10-23 03:57:52 +00:00
3de9baafbaAdd -ldl to libc++ tests when sanitizers are used.
Eric Fiselier
2014-10-23 02:54:15 +00:00
4a655fdde5Some tests used __typeof__ instead of decltype. Replace these usages.
Marshall Clow
2014-10-21 15:07:09 +00:00
8148fdb5d2LWG #2212 (not yet adopted) mandates that tuple_size/tuple_element are available if <array> or <utility> are included (not just <tuple>). We already do this. Add some tests to make sure that this remains true.
Marshall Clow
2014-10-21 15:05:31 +00:00
499b1ad671Remove dead buildbot link
Eric Fiselier
2014-10-21 02:46:31 +00:00
cb7e32c290[libcxx] Redo adding support for building and testing with an ABI library not along linker paths
Eric Fiselier
2014-10-19 00:42:41 +00:00
f4c53dacafFix unused variables in tests to placate scan-build. Patch from Steve MacKenzie.
Eric Fiselier
2014-10-19 00:10:15 +00:00
38d9005902Whitespace maintenance. Remove a bunch of tabs that snuck in. No functionality change
Marshall Clow
2014-10-18 11:03:33 +00:00
9b53c1095fAdd special case for finding the in-tree ABI library.
Eric Fiselier
2014-10-18 02:19:28 +00:00
9071bc098b[libcxx] Add support for building and testing with an ABI library not along linker paths
Eric Fiselier
2014-10-18 01:15:17 +00:00
950ee77d24[libcxx] Fix SFINAE in <cmath>. Patch from K-Ballo.
Eric Fiselier
2014-10-17 00:31:47 +00:00
66d529f0ad[libcxx] Add support for LLVM_USE_SANITIZER=Undefined
Eric Fiselier
2014-10-16 23:21:59 +00:00
798b2ac28fFix bad link in documentation. Thanks to rsmith
Eric Fiselier
2014-10-16 03:15:31 +00:00
a43d1141b9Add my buildbot to list of libc++ buildbots in documentation
Eric Fiselier
2014-10-16 02:48:59 +00:00
bbc7c74fbbFixes PR21157 'tuple: non-default constructible tuple hard failure' Thanks to Louis Dionne for the bug report and the patch.
Marshall Clow
2014-10-15 10:33:02 +00:00
df9722ecf1Fix for PR 19616: 'tuple_cat of nested tuples fails in noexcept specification'. Thanks to Louis Dionne for the fix.
Marshall Clow
2014-10-07 21:42:12 +00:00
4c88839716Fix win32 support header for mingw32.
Dan Albert
2014-10-06 20:06:33 +00:00
8758796fc9Mark module atomic as cplusplus11.
Nico Weber
2014-09-24 04:44:54 +00:00
300da4f9b0[libcxx] Fix installation of ABI headers. Fixes PR20936
Eric Fiselier
2014-09-23 14:42:28 +00:00
d132bf4ef1Fix some type-traits (is_assignable, etc) dealing with classes that take non-const references as 'right hand side'. Add tests. Fixes PR# 20836
Marshall Clow
2014-09-22 23:58:00 +00:00
6a5a8abe2fSupport newlib as libc++'s C library [locale part]
Jonathan Roelofs
2014-09-19 20:09:12 +00:00
5ffb8d0fbeFix PR#20843: binomial_distribution<unsigned> is broken. Add test to ensure that signed and unsigned verstions produce the same sequence.
Marshall Clow
2014-09-17 18:33:58 +00:00
6d9505ad8aFix char_traits functions for GCC compatibility.
Dan Albert
2014-09-17 16:34:29 +00:00
01c6bbd947Add include of <cassert> for the operator comma
Marshall Clow
2014-09-17 04:09:35 +00:00
bb9902ec97K-ballo pointed out *another* mistype in my change
Marshall Clow
2014-09-17 01:58:15 +00:00
d402a4da6bFix for mismatch to handle evil iterators which overload operator comma
Marshall Clow
2014-09-16 20:40:05 +00:00
270f8e01e8Create a 'comma_iterator' class that overloads operator, and asserts when it's called. Add tests to mismatch to make sure it can't be blindsided by such an evil iterator. More tests for other algorithms forthcoming. Thanks to STL for pointing this out at CppCon and Yakov Galka for opening LWG issue #2133
Marshall Clow
2014-09-16 20:38:11 +00:00
4413ab09d5Fix a bug in the move-assigment operator for basic_stringbuf. Thanks to Johnathan Wakeley for the bug report
Marshall Clow
2014-09-16 18:57:52 +00:00
86d311c5f3Thanks to K-ballo for noting a second incorrect noexcept clause in tuple - and suggesting a more correct way to write the first
Marshall Clow
2014-09-16 17:08:21 +00:00
12929a957bFix a bad noexcept clause in tuple's move constructor
Marshall Clow
2014-09-16 15:36:14 +00:00
d1fae17224Forgot 'const' on my last checkin
Marshall Clow
2014-09-16 15:33:53 +00:00
546eca8dc6Some of the synopsis was left out of these headers, and the copy construction/assignment should have been marked as deleted. Done. No functionality change, because the base class (base_ios) was marked as non-copyable already.
Marshall Clow
2014-09-16 15:27:01 +00:00
7ba3c57565PR20546: Fix tests for compare_exchange_weak.
Dan Albert
2014-09-06 20:38:25 +00:00
baed05dd37Address some post-commit review comments on r217261
Jonathan Roelofs
2014-09-05 20:28:44 +00:00
8d86b2e686Allow libc++ to be built on systems without POSIX threads
Jonathan Roelofs
2014-09-05 19:45:05 +00:00
d634a2c404Bugfix: allow additional_features to be empty
Jonathan Roelofs
2014-09-05 19:03:46 +00:00
217bdc189aSet -D_LIBCPP_HAS_NO_THREADS and -D_LIBCPP_HAS_NO_MONOTONIC_CLOCK based on available_features
Jonathan Roelofs
2014-09-05 17:21:57 +00:00