From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21495 invoked by alias); 1 Nov 2008 16:03:21 -0000 Received: (qmail 14624 invoked by uid 48); 1 Nov 2008 16:01:59 -0000 Date: Sat, 01 Nov 2008 16:03:00 -0000 Message-ID: <20081101160159.14622.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug libstdc++/37958] num_get<>::do_get(bool) sets eofbit flag incorrectly when boolalpha == true In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "tsyvarev at ispras dot ru" 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: 2008-11/txt/msg00054.txt.bz2 ------- Comment #12 from tsyvarev at ispras dot ru 2008-11-01 16:01 ------- Created an attachment (id=16607) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16607&action=view) Test, whether there is an unnecessary comparision (in == end) By hooking underflow() method of stringbuf, one can verify, whether do_get() implementation performs unnesessary call of (in == end). First test in main() verify situation, when all sequences are empty. Second and third - falsename is "false", truename is "true", input sequence is "false" or "true" correspondingly. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37958