From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19527 invoked by alias); 24 Apr 2003 18:56:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 19433 invoked by uid 71); 24 Apr 2003 18:56:00 -0000 Date: Thu, 24 Apr 2003 18:56:00 -0000 Message-ID: <20030424185600.19432.qmail@sources.redhat.com> To: bkoz@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: =?iso-8859-1?Q?P=E9tur_Run=F3lfsson?= Subject: RE: libstdc++/10132: filebuf destructor throws exceptions Reply-To: =?iso-8859-1?Q?P=E9tur_Run=F3lfsson?= X-SW-Source: 2003-04/txt/msg01051.txt.bz2 List-Id: The following reply was made to PR libstdc++/10132; it has been noted by GNATS. From: =?iso-8859-1?Q?P=E9tur_Run=F3lfsson?= To: "Benjamin Kosnik" Cc: , Subject: RE: libstdc++/10132: filebuf destructor throws exceptions Date: Thu, 24 Apr 2003 18:48:06 -0000 > Here's something to think about. I think this is pretty good.=20 > Something like it will have to be done for the corresponding=20 > underflow bits. Maybe I'm missing something, but how does this fix the bug if some exceptions are rethrown? Also, what's the rationale behind rethrowing some but not all exceptions? I don't think that basic_filebuf should catch exceptions thrown by use_facet or codecvt members. It is clear from 27.6.2.1 etc. that streambuf members may throw; if underflow() fails because an exception is thrown badbit, not eofbit, should be set in rdstate(); and if badbit is set in exceptions() the original exception should be rethrown. Petur