Merged trunk at revision 161680 into branch.
[official-gcc.git] / libstdc++-v3 / testsuite / 27_io / objects / char / 12048-4.cc
blob0f8600dbb40c8615093838ede4d95310d2ac3878
1 // Copyright (C) 2003, 2009 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.
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 COPYING3. If not see
16 // <http://www.gnu.org/licenses/>.
18 // { dg-require-fileio "" }
20 #include <iostream>
21 #include <cstdio>
22 #include <testsuite_hooks.h>
24 void
25 test01()
27 VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) );
29 char buf[2];
30 VERIFY( std::cin.rdbuf()->sgetn(buf, 2) == 2 );
31 int c1 = std::cin.rdbuf()->sungetc();
32 int c2 = std::fgetc(stdin);
33 VERIFY( c1 == std::char_traits<char>::to_int_type(buf[1]) );
34 VERIFY( c2 == c1 );
37 int main(void)
39 test01();
40 return 0;