Home | History | Annotate | Download | only in list.capacity
      1 //===----------------------------------------------------------------------===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is dual licensed under the MIT and the University of Illinois Open
      6 // Source Licenses. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 
     10 // <list>
     11 
     12 // void resize(size_type sz, const value_type& x);
     13 
     14 #include <list>
     15 #include <cassert>
     16 #include "DefaultOnly.h"
     17 #include "min_allocator.h"
     18 
     19 int main()
     20 {
     21     {
     22         std::list<double> l(5, 2);
     23         l.resize(2, 3.5);
     24         assert(l.size() == 2);
     25         assert(std::distance(l.begin(), l.end()) == 2);
     26         assert(l == std::list<double>(2, 2));
     27     }
     28     {
     29         std::list<double> l(5, 2);
     30         l.resize(10, 3.5);
     31         assert(l.size() == 10);
     32         assert(std::distance(l.begin(), l.end()) == 10);
     33         assert(l.front() == 2);
     34         assert(l.back() == 3.5);
     35     }
     36 #if TEST_STD_VER >= 11
     37     {
     38         std::list<double, min_allocator<double>> l(5, 2);
     39         l.resize(2, 3.5);
     40         assert(l.size() == 2);
     41         assert(std::distance(l.begin(), l.end()) == 2);
     42         assert((l == std::list<double, min_allocator<double>>(2, 2)));
     43     }
     44     {
     45         std::list<double, min_allocator<double>> l(5, 2);
     46         l.resize(10, 3.5);
     47         assert(l.size() == 10);
     48         assert(std::distance(l.begin(), l.end()) == 10);
     49         assert(l.front() == 2);
     50         assert(l.back() == 3.5);
     51     }
     52 #endif
     53 }
     54