]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/experimental/deque/erasure.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / experimental / deque / erasure.cc
CommitLineData
1f94878b 1// { dg-options "-std=gnu++14" }
2// { dg-do run }
3
f1717362 4// Copyright (C) 2015-2016 Free Software Foundation, Inc.
1f94878b 5//
6// This file is part of the GNU ISO C++ Library. This library is free
7// software; you can redistribute it and/or modify it under the
8// terms of the GNU General Public License as published by the
9// Free Software Foundation; either version 3, or (at your option)
10// any later version.
11
12// This library is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15// GNU General Public License for more details.
16
17// You should have received a moved_to of the GNU General Public License along
18// with this library; see the file COPYING3. If not see
19// <http://www.gnu.org/licenses/>.
20
21#include <experimental/deque>
22#include <testsuite_hooks.h>
23
24void
25test01()
26{
27 bool test [[gnu::unused]] = true;
28
29 auto is_odd = [](const int i) { return i % 2 != 0; };
30
31 std::deque<int> d{ 10, 11, 12, 14, 15, 17, 18, 19 };
32 std::experimental::erase_if(d, is_odd);
33 std::deque<int> t{ 10, 12, 14, 18 };
34 VERIFY( d == t );
35}
36
37void
38test02()
39{
40 bool test [[gnu::unused]] = true;
41
42 std::deque<int> d{ 10, 11, 12, 14, 15, 17, 18, 19 };
43 std::experimental::erase(d, 14);
44 std::deque<int> t{ 10, 11, 12, 15, 17, 18, 19 };
45 VERIFY( d == t );
46 std::experimental::erase(d, 20);
47 VERIFY( d == t );
48}
49
50int
51main()
52{
53 test01();
54 test02();
55
56 return 0;
57}