This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
libstdc++/10163: std::operator>>(istream&, string&) reads whole file
- From: achim dot herwig at chemie dot uni-erlangen dot de
- To: gcc-gnats at gcc dot gnu dot org
- Date: 20 Mar 2003 09:00:31 -0000
- Subject: libstdc++/10163: std::operator>>(istream&, string&) reads whole file
- Reply-to: achim dot herwig at chemie dot uni-erlangen dot de
>Number: 10163
>Category: libstdc++
>Synopsis: std::operator>>(istream&, string&) reads whole file
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Mar 20 09:06:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: achim dot herwig at chemie dot uni-erlangen dot de
>Release: GCC-3.2.2
>Organization:
>Environment:
Linux 2.4.17, glibc 2.2.2
>Description:
The operator>> on a string does not only read a single word, but the whole file. This is at least (I don't have the standard at hand) contrary to what Josuttis writes in his book and contrary to the other GCC versions I know (including 3.2).
-- stream.cpp ---
// If it worked correctly, only the // would appear!
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
int main (int argc, char** argv) {
ifstream is("stream.cpp"); // This file.
string line;
is >> line ;
cout << line << endl;
}
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: