]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/27_io/basic_filebuf/sbumpc/char/9825.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 27_io / basic_filebuf / sbumpc / char / 9825.cc
CommitLineData
23cac885 1// 2001-05-21 Benjamin Kosnik <bkoz@redhat.com>
6f62fbd8 2
5624e564 3// Copyright (C) 2001-2015 Free Software Foundation, Inc.
6f62fbd8
JQ
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
748086b7 8// Free Software Foundation; either version 3, or (at your option)
6f62fbd8
JQ
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
748086b7
JJ
17// with this library; see the file COPYING3. If not see
18// <http://www.gnu.org/licenses/>.
6f62fbd8 19
23cac885 20// 27.8.1.4 Overridden virtual functions
6f62fbd8 21
0c20e4ec
NS
22// { dg-require-fileio "" }
23
23cac885
BK
24#include <fstream>
25#include <testsuite_hooks.h>
6f62fbd8 26
23cac885 27const char name_06[] = "filebuf_virtuals-6.txt"; // empty file, need to create
6f62fbd8 28
23cac885
BK
29// libstdc++/9825
30// filebuf::sputbackc breaks sbumpc
31void test12()
6f62fbd8
JQ
32{
33 using namespace std;
11f10e6b 34 bool test __attribute__((unused)) = true;
6f62fbd8 35
23cac885
BK
36 filebuf fbuf;
37
38 fbuf.open(name_06, ios_base::in|ios_base::out|ios_base::trunc);
39 fbuf.sputn("crazy bees!", 11);
40 fbuf.pubseekoff(0, ios_base::beg);
41 fbuf.sbumpc();
42 fbuf.sputbackc('x');
43 filebuf::int_type c = fbuf.sbumpc();
44 VERIFY( c == 'x' );
45 c = fbuf.sbumpc();
46 VERIFY( c == 'r' );
47 c = fbuf.sbumpc();
48 VERIFY( c == 'a' );
49 fbuf.close();
6f62fbd8
JQ
50}
51
11f10e6b 52int main()
6f62fbd8 53{
23cac885 54 test12();
6f62fbd8
JQ
55 return 0;
56}