]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/27_io/objects/wchar_t/12048-3.cc
[multiple changes]
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 27_io / objects / wchar_t / 12048-3.cc
CommitLineData
73780bfe
LR
1// Derived from libstdc++/12048 by LJR <ljrittle@acm.org> with
2// reminder from Petur Runolfsson <peturr02@ru.is>.
3
748086b7 4// Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009
b7e2f896 5// Free Software Foundation, Inc.
73780bfe
LR
6//
7// This file is part of the GNU ISO C++ Library. This library is free
8// software; you can redistribute it and/or modify it under the
9// terms of the GNU General Public License as published by the
748086b7 10// Free Software Foundation; either version 3, or (at your option)
73780bfe
LR
11// any later version.
12
13// This library is distributed in the hope that it will be useful,
14// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16// GNU General Public License for more details.
17
18// You should have received a copy of the GNU General Public License along
748086b7
JJ
19// with this library; see the file COPYING3. If not see
20// <http://www.gnu.org/licenses/>.
73780bfe
LR
21
22#include <iostream>
4c620c39 23#include <cwchar>
b7e2f896 24#include <cstdio>
73780bfe
LR
25#include <testsuite_hooks.h>
26
27void
28test01()
29{
820d2ff7 30 VERIFY( std::freopen("cin_unget-1.txt", "r", stdin) );
73780bfe 31
4c620c39
PR
32 wchar_t buf[2];
33 VERIFY( std::wcin.rdbuf()->sgetn(buf, 2) == 2 );
34 std::wint_t c1 = std::wcin.rdbuf()->sungetc();
35 std::wint_t c2 = std::wcin.rdbuf()->sbumpc();
36 VERIFY( c1 == std::char_traits<wchar_t>::to_int_type(buf[1]) );
37 VERIFY( c2 == c1 );
73780bfe
LR
38}
39
40int main(void)
41{
42 test01();
43 return 0;
44}