1 // Copyright (C) 2011-2013 Free Software Foundation, Inc.
2 //
3 // This file is part of the GNU ISO C++ Library.  This library is free
4 // software; you can redistribute it and/or modify it under the
5 // terms of the GNU General Public License as published by the
6 // Free Software Foundation; either version 3, or (at your option)
7 // any later version.
8 //
9 // This library is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License along
15 // with this library; see the file COPYING3.  If not see
16 // <http://www.gnu.org/licenses/>.
17 //
18 // { dg-options "-std=gnu++0x" }
19 
20 #include <unordered_set>
21 #include <testsuite_hooks.h>
22 
test01()23 void test01()
24 {
25   bool test __attribute__((unused)) = true;
26   {
27     std::unordered_set<int> us;
28     for (int i = 0; i != 100000; ++i)
29     {
30       us.insert(i);
31       VERIFY( us.load_factor() <= us.max_load_factor() );
32     }
33   }
34   {
35     std::unordered_set<int> us;
36     us.max_load_factor(3.f);
37     for (int i = 0; i != 100000; ++i)
38     {
39       us.insert(i);
40       VERIFY( us.load_factor() <= us.max_load_factor() );
41     }
42   }
43   {
44     std::unordered_set<int> us;
45     us.max_load_factor(.3f);
46     for (int i = 0; i != 100000; ++i)
47     {
48       us.insert(i);
49       VERIFY( us.load_factor() <= us.max_load_factor() );
50     }
51   }
52 }
53 
main()54 int main()
55 {
56   test01();
57   return 0;
58 }
59