//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is dual licensed under the MIT and the University of Illinois Open // Source Licenses. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // list(const list& c); #include #include #include "test_macros.h" #include "DefaultOnly.h" #include "test_allocator.h" #include "min_allocator.h" int main() { { std::list l(3, 2); std::list l2 = l; assert(l2 == l); } { std::list > l(3, 2, test_allocator(5)); std::list > l2 = l; assert(l2 == l); assert(l2.get_allocator() == l.get_allocator()); } #if TEST_STD_VER >= 11 { std::list > l(3, 2, other_allocator(5)); std::list > l2 = l; assert(l2 == l); assert(l2.get_allocator() == other_allocator(-2)); } { std::list> l(3, 2); std::list> l2 = l; assert(l2 == l); } { std::list > l(3, 2, min_allocator()); std::list > l2 = l; assert(l2 == l); assert(l2.get_allocator() == l.get_allocator()); } #endif }