2008-05-30 Vladimir Makarov <vmakarov@redhat.com>
[official-gcc.git] / libstdc++-v3 / testsuite / 23_containers / list / operations / 35969.cc
blob97747ad9a6e7459de07dc623dc4b828adf27a2e2
1 // Copyright (C) 2008 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 2, or (at your option)
7 // any later version.
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.
14 // You should have received a copy of the GNU General Public License along
15 // with this library; see the file COPYING. If not, write to the Free
16 // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
17 // USA.
19 // 23.2.2.4 list operations [lib.list.ops]
21 // { dg-options "-D_GLIBCXX_DEBUG" }
23 #include <list>
24 #include <functional>
26 // libstdc++/35969
27 void test01()
30 std::list<int> list1;
31 std::list<int> list2;
33 for(int i = 0; i < 10; ++i)
35 list1.push_back(i);
36 list2.push_back(10 - i);
39 list1.sort();
40 list2.sort();
42 std::list<int>::iterator node_of_interest = list2.begin();
44 list1.splice(list1.begin(), list2, node_of_interest);
45 list2.splice(list2.begin(), list1, node_of_interest);
47 list1.merge(list2);
49 list2.splice(list2.begin(), list1, node_of_interest);
53 std::list<int> list1;
54 std::list<int> list2;
56 for(int i = 0; i < 10; ++i)
58 list1.push_back(i);
59 list2.push_back(10 - i);
62 list1.sort();
63 list2.sort();
65 std::list<int>::iterator node_of_interest = list2.begin();
67 list1.splice(list1.begin(), list2, node_of_interest);
68 list2.splice(list2.begin(), list1, node_of_interest);
70 list1.merge(list2, std::less<int>());
72 list2.splice(list2.begin(), list1, node_of_interest);
76 int main()
78 test01();
79 return 0;