summaryrefslogtreecommitdiffstats
path: root/libcxx
Commit message (Collapse)AuthorAgeFilesLines
...
* [libcxx] [test] Rename _Tp to T. NFCI.Stephan T. Lavavej2017-08-1124-80/+80
| | | | | | | This improves readability and (theoretically) improves portability, as _Ugly names are reserved. llvm-svn: 310758
* Change the way the literal operators are defined - now w/o a seperating ↵Marshall Clow2017-08-091-24/+24
| | | | | | space. This should be a NFC, but it will change how the compiler parses it. llvm-svn: 310487
* [libc++] Don't hardcode namespace in manual manglingShoaib Meenai2017-08-071-8/+12
| | | | | | | | | libc++'s inline namespace can change depending on the ABI version. Instead of hardcoding __1 in the manual Microsoft ABI manglings for the iostream globals, stringify _LIBCPP_NAMESPACE and use that instead, to work across all ABI versions. llvm-svn: 310290
* [libcxx] [test] Untabify stringstream.cons/string.pass.cpp. NFC.Stephan T. Lavavej2017-08-051-6/+6
| | | | llvm-svn: 310157
* [libcxx] [test] Fix URLs in comments and make them HTTPS. NFC.Stephan T. Lavavej2017-08-059-9/+9
| | | | llvm-svn: 310156
* [libcxx] [test] Consistently list "c++98, c++03" in chronological order. NFC.Stephan T. Lavavej2017-08-0516-16/+16
| | | | llvm-svn: 310155
* Fix libcxx build with glibc 2.26+ by removing xlocale.h include.Eric Fiselier2017-08-031-1/+1
| | | | | | Patch by Khem Raj. Reviewed as D35697. Also see PR33729. llvm-svn: 309920
* Add system header pragma to BSD locale fallback headers.Eric Fiselier2017-08-032-0/+8
| | | | | | | This prevent leaking warnings to the user about use of C++11 extensions in C++03. llvm-svn: 309917
* Rename a couple variables to eliminate a shadow warning. No functionality changeMarshall Clow2017-08-021-11/+11
| | | | llvm-svn: 309881
* Fix shadowing warningMarshall Clow2017-08-021-1/+1
| | | | llvm-svn: 309851
* Fix PR33727: std::basic_stringbuf only works with DefaultConstructible ↵Marshall Clow2017-08-022-1/+21
| | | | | | allocators. Thanks to Jonathan Wakely for the report and suggested fix llvm-svn: 309838
* Mark LWG 2942 as completeEric Fiselier2017-07-303-5/+3
| | | | llvm-svn: 309528
* Mark LWG 2961 as completeEric Fiselier2017-07-301-1/+1
| | | | llvm-svn: 309527
* [libc++] Hoist extern template above first useShoaib Meenai2017-07-291-1/+2
| | | | | | | | | | | | This function template is referenced inside class basic_string as a friend function. The extern template declaration needs to be above that friend declaration to actually take effect. This is important because this function was marked as exported in r307966, so without the extern template taking effect, it can leak into other DSOs as a visible symbol. llvm-svn: 309474
* [libcxx] [test] Change comments to say C++ instead of c++. NFC.Stephan T. Lavavej2017-07-2934-36/+36
| | | | | | | | This makes them consistent (many comments already used uppercase). The special REQUIRES, UNSUPPORTED, and XFAIL comments are excluded from this change. llvm-svn: 309468
* [libcxx] [test] The entire file futures.shared_future/wait_until.pass.cpp ↵Stephan T. Lavavej2017-07-291-130/+130
| | | | | | was indented by 1 space. NFC. llvm-svn: 309467
* [libcxx] [test] In func.wrap.func.con/alloc_F.pass.cpp, fix REQUIRES ↵Stephan T. Lavavej2017-07-291-1/+1
| | | | | | whitespace. NFC. llvm-svn: 309466
* [libcxx] [test] Make files consistently end with newlines, NFC.Stephan T. Lavavej2017-07-2916-16/+16
| | | | llvm-svn: 309465
* [libcxx] [test] Untabify, NFC.Stephan T. Lavavej2017-07-29121-810/+810
| | | | llvm-svn: 309464
* [libcxx] [test] Strip trailing whitespace, NFC.Stephan T. Lavavej2017-07-295-19/+17
| | | | llvm-svn: 309463
* [libcxx] [test] Remove an unused local typedef in ↵Stephan T. Lavavej2017-07-271-1/+0
| | | | | | | | enable_shared_from_this.pass.cpp. Trivial change, committed without review. llvm-svn: 309322
* Disable the deduction guide test I added in 309296 for the moment, while I ↵Marshall Clow2017-07-271-0/+4
| | | | | | figure out which compilers don't support deduction guides llvm-svn: 309307
* Implement P0739R0: 'Some improvements to class template argument deduction ↵Marshall Clow2017-07-275-9/+18
| | | | | | integration into the standard library' This is an API change (not ABI change) due to a late change in the c++17 standard llvm-svn: 309296
* Remove addtional parameters in function std::next() and std::prev()Rachel Craik2017-07-243-8/+20
| | | | | | | | | | | Creating a function pointer with proper parameters pointing to std::next() or std::prev() should work. This change moves the invented paramater for enable_if over to the return type to resolve this QoI issue. Patch by Jason Liu. Differential Revision: https://reviews.llvm.org/D34649 llvm-svn: 308932
* make sure that we don't call basic_streambuf::gbump with a value bigger than ↵Marshall Clow2017-07-241-1/+2
| | | | | | INT_MAX, since it only takes an int. Related to, but not quite the same as PR33725 llvm-svn: 308880
* Fix grammar-o in comment.Nico Weber2017-07-221-2/+2
| | | | llvm-svn: 308827
* [libcxx] [test] Update msvc_stdlib_force_include.hpp.Stephan T. Lavavej2017-07-191-3/+4
| | | | | | | MSVC's STL is replacing _HAS_FUNCTION_ASSIGN with _HAS_FUNCTION_ALLOCATOR_SUPPORT, and is adding _HAS_UNEXPECTED. llvm-svn: 308535
* [libcxx] [test] Fix Clang -Wunused-local-typedef warnings.Stephan T. Lavavej2017-07-1916-32/+0
| | | | | | Fix D34536. llvm-svn: 308534
* [libcxx] [test] Fix MSVC warning C4067 "unexpected tokens following ↵Stephan T. Lavavej2017-07-191-2/+8
| | | | | | | | | | preprocessor directive - expected a newline". Also fixes Clang/LLVM 4.0 (for Windows) error "function-like macro 'TEST_GLIBC_PREREQ' is not defined". Fixes D34535. llvm-svn: 308533
* [libcxx] [test] Fix MSVC warning C4242 "conversion from 'int' to 'const ↵Stephan T. Lavavej2017-07-192-2/+2
| | | | | | | | char', possible loss of data". Fixes D34534. llvm-svn: 308532
* Rework libcxx strerror_r handling.James Y Knight2017-07-191-26/+46
| | | | | | | | | | | | | | | The set of #ifdefs used to handle the two incompatible variants of strerror_r were not complete (they didn't handle newlib appropriately). Rather than attempting to make the ifdefs more complex, make them unnecessary by choosing which behavior to use dependent upon the return type. Reviewers: waltl Differential Revision: https://reviews.llvm.org/D34294 llvm-svn: 308528
* Update _LIBCPP_VERSION and the version in CMakeLists to 6.0Hans Wennborg2017-07-193-3/+3
| | | | llvm-svn: 308468
* Bump docs version to 6.0Hans Wennborg2017-07-191-2/+2
| | | | llvm-svn: 308462
* [CMake] Use MATCHES for regular expression.Leo Li2017-07-181-1/+1
| | | | | | | | Subscribers: mgorny Differential Revision: https://reviews.llvm.org/D35514 llvm-svn: 308347
* Check for _MSC_VER before defining _LIBCPP_MSVCRTBruno Cardoso Lopes2017-07-171-2/+3
| | | | | | | | | | | | Some targets (e.g. Darwin) might have the Win32 API available, but they do not use MSVC CRT. Assume _LIBCPP_MSVCRT only when _MSC_VER is available and __MINGW32__ isn't defined. Differential Revision: https://reviews.llvm.org/D34588 rdar://problem/32628786 llvm-svn: 308225
* Add case for c++2a to libc++ and test macrosMarshall Clow2017-07-172-2/+7
| | | | llvm-svn: 308159
* Update libc++ status pages with results of the Toronto Meeting - and for C++2aMarshall Clow2017-07-163-0/+100
| | | | llvm-svn: 308153
* Update issues moved in TorontoMarshall Clow2017-07-151-1/+5
| | | | llvm-svn: 308097
* [libc++] Clean up cl warning 4231 disablingShoaib Meenai2017-07-143-21/+0
| | | | | | | | | Once upon a time, extern templates used to be a Microsoft extension, so cl would warn about their usage, and libc++ suppressed that warning. They've long since been standardized, so the warning is defunct. (libc++ also doesn't currently support building with cl anyway.) llvm-svn: 307997
* [libc++] class template -> template class. NFCShoaib Meenai2017-07-131-1/+1
| | | | llvm-svn: 307972
* [libc++] Mark string operator+ _LIBCPP_FUNC_VISShoaib Meenai2017-07-132-2/+3
| | | | | | | | | | | | | | | It has an extern template instantiation declaration in the headers and a corresponding instantiation definition in the library, so we must mark it with _LIBCPP_FUNC_VIS to make it available outside the library. This doesn't cause any ABI changes as-is since we don't build libc++ with hidden visibility (so the function is exported anyway). It's needed for building libc++ with hidden visibility, however. Clarify the Windows behavior for extern function templates while I'm here, since this exercises that behavior. llvm-svn: 307966
* [libc++] Remove unused _LIBCPP_FUNC_VIS_ONLYShoaib Meenai2017-07-131-5/+0
| | | | | | This has been unused since r282644. llvm-svn: 307965
* [libc++] Use proper template terminology. NFCShoaib Meenai2017-07-131-3/+3
| | | | | | | It's supposed to be "class template" and "function template" instead of "template class" and "template function". llvm-svn: 307954
* Fix unrepresentable enum for clang-cl unstable ABIBen Craig2017-07-121-8/+8
| | | | | | | | | | | | | | When using LIBCXX_ABI_UNSTABLE=YES, clang-cl gave the following warning: P:\llvm_master\src\llvm\projects\libcxx\include\string(683,51): warning: enumerator value is not representable in the underlying type 'int' [-Wmicrosoft-enum-value] Fixed by switching from enums to static const size_type. https://reviews.llvm.org/D35174 llvm-svn: 307751
* Remove <__refstring> header; Move it into source directory.Eric Fiselier2017-07-122-4/+4
| | | | | | | | | | | | | | | | | | | | The libc++ <__refstring> headers has no real reason why it should be a public header that libc++ ships. The only reason it was in the include directory was because libc++abi needed it to build the library. However keeping <__refstring> a header had other problems, like requiring its dependancies to also be in the headers. For that reason this patch moves it into the source directory. To work around libc++abi's need for this header a duplicated copy was added to libc++abi in r307748. While duplicating the code is an unfortunate solution it's the best solution that's currently possible. In the future I would like to start a discussion on the mailing lists about making libc++abi build as a sub-project of libc++, requiring the libc++ sources always be present. llvm-svn: 307749
* Revert "[libc++] Refactoring __sync_* builtins; NFC (Reland)"Eric Fiselier2017-07-125-47/+12
| | | | | | | This reverts commit r307595. The commit had some issues that needed to first be addressed in review. llvm-svn: 307746
* [libcxx][CMake] Add install path variable to allow overriding the destinationPetr Hosek2017-07-115-6/+18
| | | | | | | | | This is going to be used by the runtime build in the multi-target setup to allow using different install prefix for each target. Differential Revision: https://reviews.llvm.org/D33762 llvm-svn: 307615
* [libc++] Refactoring __sync_* builtins; NFC (Reland)Weiming Zhao2017-07-105-12/+47
| | | | | | | | | | | | Summary: Wrap __sync_* builtins with __libcpp_ functions to facility future customizations as atomic operations are unavailable on some targets. Reviewers: danalbert, EricWF, jroelofs Subscribers: joerg, llvm-commits Differential Revision: https://reviews.llvm.org/D34918 llvm-svn: 307595
* Revert "[libc++] Refactoring __sync_* builtins; NFC"Weiming Zhao2017-07-105-46/+12
| | | | | | This reverts commit 72ff8866bca49ee7d24c87673293b4ce88a039ec. llvm-svn: 307593
* [libc++] Refactoring __sync_* builtins; NFCWeiming Zhao2017-07-105-12/+46
| | | | | | | | | | | | Summary: Wrap __sync_* builtins with __libcpp_ functions to facility future customizations as atomic operations are unavailable on some targets. Reviewers: danalbert, EricWF, jroelofs Subscribers: joerg, llvm-commits Differential Revision: https://reviews.llvm.org/D34918 llvm-svn: 307591
OpenPOWER on IntegriCloud