Eric Fiselier
eb6b13f578
Fix _LIBCPP_EXTERN_TEMPLATE_INLINE_VISIBILITY to always have default visibility.
...
This prevent the symbols from being both externally available and hidden, which
causes them to be linked incorrectly. This is only a problem when the address
of the function is explicitly taken since it will always be inlined otherwise.
This patch fixes the issues that caused r285456 to be reverted, and can
now be reapplied.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@285531 91177308-0d34-0410-b5e6-96231b3b80d8
2016-10-31 02:07:23 +00:00
Marshall Clow
d4badbbc5a
Support allocators with explicit conversion constructors. Fixes bug #29000
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@278904 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-17 05:58:40 +00:00
Eric Fiselier
775417d97c
Make dtor_noexcept.pass.cpp tests more portable. Patch from STL@microsoft.com
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276595 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-25 00:50:32 +00:00
Marshall Clow
1e00d6db31
Implement std::string_view as described in http://wg21.link/P0254R1 . Reviewed as https://reviews.llvm.org/D21459
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276238 91177308-0d34-0410-b5e6-96231b3b80d8
2016-07-21 05:31:24 +00:00
Eric Fiselier
84acb1ec3f
Remove trailing whitespace in test suite. Approved by Marshall Clow.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@271435 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-01 21:35:39 +00:00
Eric Fiselier
375e2f669c
Guard libc++ specific c.__invariants() tests in LIBCPP_ASSERT macros
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@267947 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-28 22:28:23 +00:00
Marshall Clow
f4f7d8fc96
Recommit r263036 with additional inlining, so that it will continue to work with existing system dylibs. Implements LWG#2583
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@265706 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-07 18:13:41 +00:00
Nico Weber
fadd1db573
Revert r263036, it's ABI-breaking.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@263246 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-11 15:26:06 +00:00
Marshall Clow
ff0b9f5749
Implement LWG#2583: There is no way to supply an allocator for basic_string(str, pos)
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@263036 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-09 17:51:43 +00:00
Asiri Rathnayake
cc2e93cff0
Make it possible to build a no-exceptions variant of libcxx.
...
Fixes a small omission in libcxx that prevents libcxx being built when
-DLIBCXX_ENABLE_EXCEPTIONS=0 is specified.
This patch adds XFAILS to all those tests that are currently failing
on the new -fno-exceptions library variant. Follow-up patches will
update the tests (progressively) to cope with the new library variant.
Change-Id: I4b801bd8d8e4fe7193df9e55f39f1f393a8ba81a
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@252598 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-10 11:41:22 +00:00
Marshall Clow
af961ed8cf
implement more of N4258 - Cleaning up noexcept in the standard library. Specifically add new noexcept stuff to vector and string's move-assignment operations
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@245330 91177308-0d34-0410-b5e6-96231b3b80d8
2015-08-18 18:57:00 +00:00
Marshall Clow
c912c0ce7c
While applying N4258, I forgot about LWG#2455, which modified the modifications. Correct those - h/t: Howard
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@239004 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-04 02:05:41 +00:00
Marshall Clow
7b193f7797
More of N4258 implementation. Mark all of our test_allocators as noexcept constructible. Make the constructors for basic_string noexcept all the time (under C++14). Update tests to reflect the new world order. More to come.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@238957 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-03 19:56:43 +00:00
Eric Fiselier
a90c6dd460
Move test into test/std subdirectory.
...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@224658 91177308-0d34-0410-b5e6-96231b3b80d8
2014-12-20 01:40:03 +00:00