[Bug c++/17611] New: ifstream could not read multiple files
kemin dot zhou at ferring dot com
gcc-bugzilla@gcc.gnu.org
Wed Sep 22 15:32:00 GMT 2004
ifstream objects could not open multiple files.
if ifstream objects have reached the end of the stream, then opening another
files requires to clear() otherwise it failed to open a second file.
example code:
ifstream IN("test1.txt");
while (IN>>line) cout << line << endl;
// at this point IN.bad() == true
IN.close();
// you must give the following command
IN.clear();
// otherwise the following statement will fail
IN.open("test2.txt");
IN.fail() == true if the bad bit is not cleared.
====
The standard behavior is for the
ifstream::open(string &infilename) {
if (bad()) clear();
......
}
==========
reading file to the end in the first operation should not have prevented the
opening of the second file.
--
Summary: ifstream could not read multiple files
Product: gcc
Version: 3.3.4
Status: UNCONFIRMED
Severity: critical
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kemin dot zhou at ferring dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC host triplet: Linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17611
More information about the Gcc-bugs
mailing list