From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7230 invoked by alias); 22 Dec 2011 00:21:54 -0000 Received: (qmail 7219 invoked by uid 22791); 22 Dec 2011 00:21:53 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 22 Dec 2011 00:21:38 +0000 From: "claytongdavis at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/51651] New: istream::ignore returns eof too early Date: Thu, 22 Dec 2011 00:46:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Keywords: X-Bugzilla-Severity: major X-Bugzilla-Who: claytongdavis at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2011-12/txt/msg02414.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51651 Bug #: 51651 Summary: istream::ignore returns eof too early Classification: Unclassified Product: gcc Version: 4.5.2 Status: UNCONFIRMED Severity: major Priority: P3 Component: libstdc++ AssignedTo: unassigned@gcc.gnu.org ReportedBy: claytongdavis@gmail.com Created attachment 26165 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26165 Test program displaying the bug. Output should be false for both methods of reading the stream. This bug was initially reported on the stack overflow forum. Since it seems never to have been reported, I am doing so now. When istream::ignore is used to ignore the last character of a stream, it sets the eof flag as though it had read past the end of the file. Thus, istream::read and istream::ignore show different behavior.