6617e72f689256bbcc1f0224451508ce7c9f39e0
[platform/upstream/gcc48.git] / libstdc++-v3 / testsuite / 27_io / manipulators / standard / char / 1.cc
1 // Copyright (C) 2002-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 // 27.6.3 - Standard manipulators
19
20 #include <sstream>
21 #include <iomanip>
22 #include <testsuite_hooks.h>
23
24 void
25 test01()
26 {
27   using namespace std;
28   bool test __attribute__((unused)) = true;
29
30   string s("john coltrane, a love supreme");
31   istringstream  iss(s);
32   ostringstream  oss;
33
34   // resetiosflags
35   resetiosflags(ios_base::boolalpha);
36   iss >> resetiosflags(ios_base::boolalpha);
37   VERIFY(iss.good());
38   oss << resetiosflags(ios_base::boolalpha);
39   VERIFY(oss.good());
40
41   // setiosflags
42   setiosflags(ios_base::skipws);
43   iss >> setiosflags(ios_base::skipws);
44   VERIFY(iss.good());
45   oss << setiosflags(ios_base::skipws);
46   VERIFY(oss.good());
47
48   // setbase
49   setbase(8);
50   iss >> setbase(8);
51   VERIFY(iss.good());
52   oss << setbase(8);
53   VERIFY(oss.good());
54
55   // setfil
56   setfill('a');
57   iss >> setfill('a');
58   VERIFY(iss.good());
59   oss << setfill('a');
60   VERIFY(oss.good());
61  
62   // setprecision
63   setprecision(4);
64   iss >> setprecision(4);
65   VERIFY(iss.good());
66   oss << setprecision(4);
67   VERIFY(oss.good());
68   
69   // setprecision
70   setw(7);
71   iss >> setw(7);
72   VERIFY(iss.good());
73   oss << setw(7);
74   VERIFY(oss.good());
75 }
76
77 int
78 main()
79 {
80   test01();
81   return 0;
82 }