mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-19 07:58:58 +08:00
std_fstream.h: Formatting tweaks.
2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com> * bits/std_fstream.h: Formatting tweaks. * testsuite/27_io/ofstream_members.cc: New file. * testsuite/27_io/ofstream_members-1.tst: New file. * testsuite/27_io/ifstream_members.cc: New file. * testsuite/27_io/ifstream_members-1.tst: New file. From-SVN: r34671
This commit is contained in:
parent
90db9131f1
commit
b16810bfe2
@ -1,3 +1,11 @@
|
||||
2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
|
||||
|
||||
* bits/std_fstream.h: Formatting tweaks.
|
||||
* testsuite/27_io/ofstream_members.cc: New file.
|
||||
* testsuite/27_io/ofstream_members-1.tst: New file.
|
||||
* testsuite/27_io/ifstream_members.cc: New file.
|
||||
* testsuite/27_io/ifstream_members-1.tst: New file.
|
||||
|
||||
2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
|
||||
Ulrich Drepper <drepper@cygnus.com>
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
// File based streams -*- C++ -*-
|
||||
|
||||
// Copyright (C) 1997-1999 Free Software Foundation, Inc.
|
||||
// Copyright (C) 1997-1999, 2000 Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
// software; you can redistribute it and/or modify it under the
|
||||
@ -291,14 +291,14 @@ namespace std {
|
||||
ios_base::openmode __mode = ios_base::out | ios_base::trunc)
|
||||
{
|
||||
if (!rdbuf()->open(__s, __mode | ios_base::out))
|
||||
this->setstate (ios_base::failbit);
|
||||
this->setstate(ios_base::failbit);
|
||||
}
|
||||
|
||||
void
|
||||
close(void)
|
||||
{
|
||||
if (!rdbuf()->close())
|
||||
setstate (ios_base::failbit);
|
||||
setstate(ios_base::failbit);
|
||||
}
|
||||
};
|
||||
|
||||
|
0
libstdc++-v3/testsuite/27_io/ifstream_members-1.tst
Normal file
0
libstdc++-v3/testsuite/27_io/ifstream_members-1.tst
Normal file
60
libstdc++-v3/testsuite/27_io/ifstream_members.cc
Normal file
60
libstdc++-v3/testsuite/27_io/ifstream_members.cc
Normal file
@ -0,0 +1,60 @@
|
||||
// Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
// software; you can redistribute it and/or modify it under the
|
||||
// terms of the GNU General Public License as published by the
|
||||
// Free Software Foundation; either version 2, or (at your option)
|
||||
// any later version.
|
||||
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License along
|
||||
// with this library; see the file COPYING. If not, write to the Free
|
||||
// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
||||
// USA.
|
||||
|
||||
// 27.8.1.7 ifstream member functions
|
||||
|
||||
#include <istream>
|
||||
#include <fstream>
|
||||
#ifdef DEBUG_ASSERT
|
||||
#include <assert.h>
|
||||
#endif
|
||||
|
||||
const char name_01[] = "testsuite/ifstream_members-1.tst";
|
||||
const char name_02[] = "testsuite/ifstream_members-1.txt";
|
||||
|
||||
// http://sourceware.cygnus.com/ml/libstdc++/2000-06/msg00136.html
|
||||
bool test00()
|
||||
{
|
||||
bool test = true;
|
||||
std::ifstream ifs1;
|
||||
ifs1.close();
|
||||
|
||||
// false as expected:
|
||||
test &= !ifs1.is_open();
|
||||
// this is now true:
|
||||
test &= !(ifs1);
|
||||
|
||||
ifs1.open(name_01);
|
||||
test &= ifs1.is_open();
|
||||
// fail bit still true
|
||||
test &= !(ifs1);
|
||||
test &= ifs1.rdstate() == std::ios_base::failbit;
|
||||
|
||||
ifs1.close();
|
||||
|
||||
#ifdef DEBUG_ASSERT
|
||||
assert(test);
|
||||
#endif
|
||||
|
||||
return test;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test00();
|
||||
}
|
0
libstdc++-v3/testsuite/27_io/ofstream_members-1.tst
Normal file
0
libstdc++-v3/testsuite/27_io/ofstream_members-1.tst
Normal file
60
libstdc++-v3/testsuite/27_io/ofstream_members.cc
Normal file
60
libstdc++-v3/testsuite/27_io/ofstream_members.cc
Normal file
@ -0,0 +1,60 @@
|
||||
// Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
//
|
||||
// This file is part of the GNU ISO C++ Library. This library is free
|
||||
// software; you can redistribute it and/or modify it under the
|
||||
// terms of the GNU General Public License as published by the
|
||||
// Free Software Foundation; either version 2, or (at your option)
|
||||
// any later version.
|
||||
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License along
|
||||
// with this library; see the file COPYING. If not, write to the Free
|
||||
// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
||||
// USA.
|
||||
|
||||
// 27.8.1.10 ofstream member functions
|
||||
|
||||
#include <ostream>
|
||||
#include <fstream>
|
||||
#ifdef DEBUG_ASSERT
|
||||
#include <assert.h>
|
||||
#endif
|
||||
|
||||
const char name_01[] = "testsuite/ofstream_members-1.tst";
|
||||
const char name_02[] = "testsuite/ofstream_members-1.txt";
|
||||
|
||||
// http://sourceware.cygnus.com/ml/libstdc++/2000-06/msg00136.html
|
||||
bool test00()
|
||||
{
|
||||
bool test = true;
|
||||
std::ofstream ofs1;
|
||||
ofs1.close();
|
||||
|
||||
// false as expected:
|
||||
test &= !ofs1.is_open();
|
||||
// this is now true:
|
||||
test &= !(ofs1);
|
||||
|
||||
ofs1.open(name_02);
|
||||
test &= ofs1.is_open();
|
||||
// fail bit still true
|
||||
test &= !(ofs1);
|
||||
test &= ofs1.rdstate() == std::ios_base::failbit;
|
||||
|
||||
ofs1.close();
|
||||
|
||||
#ifdef DEBUG_ASSERT
|
||||
assert(test);
|
||||
#endif
|
||||
|
||||
return test;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test00();
|
||||
}
|
Loading…
Reference in New Issue
Block a user