summaryrefslogtreecommitdiffstats
path: root/libcxx
Commit message (Collapse)AuthorAgeFilesLines
* Mark LWG#2486 as complete. Eric did this as part of r242959Marshall Clow2015-11-091-1/+1
| | | | llvm-svn: 252509
* Make check-libcxx Py3-compatible.NAKAMURA Takumi2015-11-091-3/+3
| | | | llvm-svn: 252458
* Add initial support for the MUSL C library.Vasileios Kalintiris2015-11-096-18/+100
| | | | | | | | | | | | | | | | | | | Summary: This patch adds the LIBCXX_LIBC_IS_MUSL cmake option to allow the building of libcxx with the Musl C library. The option is necessary as Musl does not provide any predefined macro in order to test for its presence, like GLIBC. Most of the changes specify the correct path to choose through the various #if/#else constructs in the locale code. Depends on D13407. Reviewers: mclow.lists, jroelofs, EricWF Subscribers: jfb, tberghammer, danalbert, srhines, cfe-commits Differential Revision: http://reviews.llvm.org/D13673 llvm-svn: 252457
* Mark LWG#2224 as complete. Wording change only, no code changes requiredMarshall Clow2015-11-071-1/+1
| | | | llvm-svn: 252408
* Implement LWG#2353: std::next is over-constrainedMarshall Clow2015-11-073-6/+10
| | | | llvm-svn: 252407
* More of P0006R0: type traits variable aliases for C++17.Marshall Clow2015-11-0727-5/+354
| | | | llvm-svn: 252406
* Cleanup: move visibility/linkage attributes to the first declaration.Evgeniy Stepanov2015-11-0715-260/+496
| | | | | | | | | | | | This change moves visibility attributes from out-of-class method definitions to in-class declaration. This is needed for a switch to attribute((internal_linkage)) (see http://reviews.llvm.org/D13925) which can only appear on the first declaration. This change does not touch istream/ostream/streambuf. They are handled separately in http://reviews.llvm.org/D14409. llvm-svn: 252385
* Allow deque to handle incomplete types.Evgeniy Stepanov2015-11-063-12/+77
| | | | | | | | Allow deque and deque::iterator instantiation with incomplete element type. This is an ABI breaking change, and it is only enabled if LIBCXX_ABI_VERSION >= 2 or LIBCXX_ABI_UNSTABLE=ON. llvm-svn: 252350
* Cleanup foo.h headers and __config to work in CEric Fiselier2015-11-066-3/+24
| | | | llvm-svn: 252274
* Mark LWG issue #2234. We already do this; no code change neededMarshall Clow2015-11-051-1/+1
| | | | llvm-svn: 252199
* Implement P0092R1 for C++1zMarshall Clow2015-11-0516-1/+713
| | | | llvm-svn: 252195
* Make reverse() call iter_swap like the standard says, instead of calling ↵Marshall Clow2015-11-021-2/+2
| | | | | | swap directly. No real change. llvm-svn: 251836
* Remove undefined behavior from some tests. Same pattern as the ↵Marshall Clow2015-11-022-10/+16
| | | | | | unitialized_copy tests llvm-svn: 251804
* Remove undefined behavior from some tests. Thanks to Walter Brown for the ↵Marshall Clow2015-11-022-10/+18
| | | | | | heads-up. llvm-svn: 251802
* Add 'nostdinc++' to the flags used by testit. Makes the tests run better on ↵Marshall Clow2015-11-011-1/+1
| | | | | | Mac OS X with the new depr.c headers change llvm-svn: 251768
* Improve the tests for 'is_literal_type'Marshall Clow2015-11-011-18/+62
| | | | llvm-svn: 251767
* Implement the first part of P0006R0: Adopt Type Traits Variable Templates ↵Marshall Clow2015-11-0135-2/+2510
| | | | | | for C++17. Significantly augment the existing tests. llvm-svn: 251766
* Revert r249929 ("Split <string.h> out of <cstring>").Richard Smith2015-10-292-86/+18
| | | | | | | | | | | | | | This change caused problems when building code like povray that: a) uses 'using namespace std;' b) is built on an environment where the C library provides the "wrong" (non-const-correct) interface for the str* functions c) makes an unqualified call to one of those str* functions A patch is out for review to add a facility to fix this (and to give the correct signatures for these functions whenever possible, even when the C library does not do so). This revert is expected to be temporary. llvm-svn: 251665
* Implement P0004R1 'Remove Deprecated iostreams aliases'Marshall Clow2015-10-297-7/+35
| | | | llvm-svn: 251618
* Mark two Kona papers as 'in progress'Marshall Clow2015-10-281-2/+2
| | | | llvm-svn: 251545
* Adapt to lit change in llvm r251478-r251481Matthias Braun2015-10-281-8/+13
| | | | | | Sorry for the breakage. llvm-svn: 251529
* Fix test suite configuration. Sorry MarshallEric Fiselier2015-10-261-1/+3
| | | | llvm-svn: 251334
* Mark LWG#2495 as complete. No code changes neededMarshall Clow2015-10-251-1/+1
| | | | llvm-svn: 251258
* Fix LWG#2489: mem_fn() should be noexceptMarshall Clow2015-10-253-4/+7
| | | | llvm-svn: 251257
* Add the tests for the last commitMarshall Clow2015-10-252-0/+144
| | | | llvm-svn: 251254
* Fix LWG#2476: scoped_allocator_adaptor is not assignableMarshall Clow2015-10-251-0/+4
| | | | llvm-svn: 251253
* Add a test for LWG#2466: allocator_traits::max_size() default behavior is ↵Marshall Clow2015-10-253-5/+4
| | | | | | incorrect llvm-svn: 251252
* Add a test for LWG#2462: std::ios_base::failure is overspecifiedMarshall Clow2015-10-251-0/+3
| | | | llvm-svn: 251250
* Fix LWG#2127: Move-construction with raw_storage_iterator.Marshall Clow2015-10-253-5/+28
| | | | llvm-svn: 251247
* Fix LWG#2244: basic_istream::seekgMarshall Clow2015-10-253-1/+11
| | | | llvm-svn: 251246
* Update C++ status from KonaMarshall Clow2015-10-252-1/+56
| | | | llvm-svn: 251220
* Set LC_COLLATE rather than LANG to override collation.Tim Northover2015-10-231-1/+1
| | | | | | | On a system with LC_COLLATE=C, this takes precedence over a non-C LANG the test tries to impose and the test fails. llvm-svn: 251131
* Use proper output directory when naminging the libc++ outputEric Fiselier2015-10-231-1/+1
| | | | llvm-svn: 251100
* Dont required CMake 3 to install a linker scriptEric Fiselier2015-10-221-2/+3
| | | | llvm-svn: 251065
* Only disable linker script when LIBCXX_CXX_ABI_LIBNAME is noneEric Fiselier2015-10-222-15/+15
| | | | llvm-svn: 251063
* Disable linker scripts when the ABI library is not specified or is none.Eric Fiselier2015-10-221-1/+4
| | | | llvm-svn: 251062
* Detect relaxed constexpr rules for gcc versionsMarshall Clow2015-10-201-1/+4
| | | | llvm-svn: 250802
* Fix an unfortunate yet old typo that never got attention before r250507.Benjamin Kramer2015-10-161-1/+1
| | | | | | Should fix the xcode libc++ build. llvm-svn: 250508
* Remove a long-standing __has_include hack.Benjamin Kramer2015-10-164-25/+8
| | | | | | | | | This was put in to get libc++ building without libcxxabi. We now have macros that show that we are building against libcxxabi so use that instead. This guards against existing but broken cxxabi.h headers on the system. llvm-svn: 250507
* Re-enable linker scripts after fixing bad CMakeEric Fiselier2015-10-152-4/+4
| | | | llvm-svn: 250472
* Quickly fix bad commitEric Fiselier2015-10-151-1/+2
| | | | llvm-svn: 250471
* [libcxx] Make libc++.so a linker script by default on most platforms.Eric Fiselier2015-10-154-6/+48
| | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch turns on `LIBCXX_ENABLE_ABI_LINKER_SCRIPT` by default whenever `LLVM_HAVE_LINK_VERSION_SCRIPT` is ON. This turns out to be whenever: 1. WIN32 is not defined. 2 UNIX is defined. 3. APPLE is not defined. While `LLVM_HAVE_LINK_VERSION_SCRIPT` is meant to reflect exactly what we are asking I think it's close enough. After committing this patch Linux users will no longer have to use "-lc++abi" explicitly! Reviewers: mclow.lists, danalbert, compnerd, jroelofs Subscribers: emaste, rengolin, cbergstrom, cfe-commits Differential Revision: http://reviews.llvm.org/D13739 llvm-svn: 250469
* Fix handling of -Wno-pedanticEric Fiselier2015-10-151-2/+3
| | | | llvm-svn: 250452
* Add links to libc++ code coverage and buildersEric Fiselier2015-10-151-2/+4
| | | | llvm-svn: 250361
* Update issues statusEric Fiselier2015-10-141-2/+2
| | | | llvm-svn: 250336
* Use correct CMake variable for the libnameEric Fiselier2015-10-141-1/+1
| | | | llvm-svn: 250329
* Link to new documentation from existing homepageEric Fiselier2015-10-141-0/+10
| | | | llvm-svn: 250325
* Update testing guide for libc++Eric Fiselier2015-10-141-7/+56
| | | | llvm-svn: 250323
* [libcxx] Make it drastically simpler to link libc++.Eric Fiselier2015-10-144-2/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Currently on most platforms you have to manually link the c++ abi library used with libc++ whenever you use libc++. So your typical libc++ command like invocation might look like: ``` clang++ -stdlib=libc++ foo.cpp -lc++abi ``` Having to manually link `libc++abi.so` makes it harder for libc++ to be used generically. This patch fixes that by generating a linker script for `libc++.so` that correctly links the ABI library. On linux the linker script for libc++abi would look like: ``` # libc++.so INPUT(libc++.so.1 -lc++abi) ``` With the linker script you can now use libc++ using only `-stdlib=libc++`. This is the technique that is used on FreeBSD in ordered to link cxxrt and I think it's the best approach to make our users lives simpler. The CMake option used to enable this is `LIBCXX_ENABLE_ABI_LINKER_SCRIPT`. In future I would like to enable this by default on all platforms except for Darwin. Reviewers: mclow.lists, danalbert, rsmith, jroelofs, EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D12508 llvm-svn: 250319
* Split out config_site logic so libc++abi can use itEric Fiselier2015-10-141-12/+15
| | | | llvm-svn: 250312
OpenPOWER on IntegriCloud