Fixes #280 ("Several containers don't support non-movable types when move assigning")

This commit is contained in:
Ion Gaztañaga
2024-05-23 23:28:54 +02:00
parent c38fe90e9a
commit 397fbda8be
26 changed files with 729 additions and 362 deletions

View File

@@ -3903,7 +3903,7 @@ struct GetAllocatorCont
template<class ValueType>
struct apply
{
typedef vector< ValueType
typedef devector< ValueType
, typename allocator_traits<VoidAllocator>
::template portable_rebind_alloc<ValueType>::type
> type;
@@ -3962,14 +3962,19 @@ int test_cont_variants()
typedef typename GetAllocatorCont<VoidAllocator>::template apply<test::movable_int>::type MyMoveCont;
typedef typename GetAllocatorCont<VoidAllocator>::template apply<test::movable_and_copyable_int>::type MyCopyMoveCont;
typedef typename GetAllocatorCont<VoidAllocator>::template apply<test::copyable_int>::type MyCopyCont;
typedef typename GetAllocatorCont<VoidAllocator>::template apply<test::moveconstruct_int>::type MyMoveConstructCont;
if(test::vector_test<MyCont>())
if (test::vector_test<MyCont>())
return 1;
if(test::vector_test<MyMoveCont>())
if (test::vector_test<MyMoveCont>())
return 1;
if(test::vector_test<MyCopyMoveCont>())
if (test::vector_test<MyCopyMoveCont>())
return 1;
if(test::vector_test<MyCopyCont>())
if (test::vector_test<MyCopyCont>())
return 1;
if (test::vector_test<MyCopyCont>())
return 1;
if (test::vector_test<MyMoveConstructCont>())
return 1;
return 0;
}