1// 2002-03-05 Stephen M. Webb  <stephen.webb@bregmasoft.com>
2
3// Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4//
5// This file is part of the GNU ISO C++ Library.  This library is free
6// software; you can redistribute it and/or modify it under the
7// terms of the GNU General Public License as published by the
8// Free Software Foundation; either version 2, or (at your option)
9// any later version.
10
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14// GNU General Public License for more details.
15
16// You should have received a copy of the GNU General Public License along
17// with this library; see the file COPYING.  If not, write to the Free
18// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
19// USA.
20
21// 23.2.5  class vector<bool>
22
23#include <vector>
24#include <testsuite_hooks.h>
25
26// libstdc++/6886
27void test02()
28{
29  bool test __attribute__((unused)) = true;
30  typedef std::vector<bool>  bvec;
31  int  i, num = 0;
32  bvec v;
33
34  v.resize(66);
35
36  for (i = 0 ; i < 66 ; ++i)
37    v[i] = 0;
38
39  v[1]    = 1;
40  v[33]   = 1;
41  v[49]   = 1;
42  v[65]   = 1;
43
44  for (bvec::iterator j = v.begin() ; j != v.end() ; j++)
45    if (bool(*j)) ++num;
46
47  VERIFY( num == 4 );
48}
49
50int main()
51{
52  test02();
53  return 0;
54}
55