Implement LWG 2946, 3075 and 3076. Reviewed as https://reviews.llvm.org/D48616

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@336132 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Marshall Clow
2018-07-02 18:41:15 +00:00
parent b525131913
commit 64c10d00c3
28 changed files with 755 additions and 148 deletions

View File

@@ -22,13 +22,6 @@
#include "test_macros.h"
#include "test_allocator.h"
template <class T>
struct some_alloc
{
typedef T value_type;
some_alloc(const some_alloc&);
};
int main()
{
{
@@ -40,7 +33,7 @@ int main()
static_assert(std::is_nothrow_move_constructible<C>::value, "");
}
{
typedef std::basic_string<char, std::char_traits<char>, some_alloc<char>> C;
typedef std::basic_string<char, std::char_traits<char>, limited_allocator<char, 10>> C;
#if TEST_STD_VER <= 14
static_assert(!std::is_nothrow_move_constructible<C>::value, "");
#else