From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11891 invoked by alias); 5 Nov 2002 12:06:03 -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 11857 invoked by uid 71); 5 Nov 2002 12:06:03 -0000 Resent-Date: 5 Nov 2002 12:06:03 -0000 Resent-Message-ID: <20021105120603.11856.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, rassahah@neofonie.de Received: (qmail 30998 invoked by uid 61); 5 Nov 2002 11:58:32 -0000 Message-Id: <20021105115832.30997.qmail@sources.redhat.com> Date: Tue, 05 Nov 2002 04:06:00 -0000 From: rassahah@neofonie.de Reply-To: rassahah@neofonie.de To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version: gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: c++/8461: internal compiler error stabilize_throw_expr X-SW-Source: 2002-11/txt/msg00209.txt.bz2 List-Id: >Number: 8461 >Category: c++ >Synopsis: internal compiler error stabilize_throw_expr >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Tue Nov 05 04:06:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: rassahah@neofonie.de >Release: gcc-3.3 cvs of 5-Nov-2002 >Organization: >Environment: i686-pc-linux-gnu gcc-3.3 compiled with gcc-3.2 and itself >Description: compiler error on given code (in How-To-Repeat); Exception is thrown. The constructor of the exception has an object argument wich itself has a virtual destructor. This seems to be necessary for reproducing the bug. The bug is new in in the 3.3 version of the compiler 2.95 up to 3.2 dont show it. farewell-message of compiler: test1.cc: In function `void foo()': test1.cc:12: internal compiler error: in stabilize_throw_expr, at cp/except.c: 611 Please submit a full ... >How-To-Repeat: use the following program for g++, options dont seem to change effect, #includes are not needed: struct String { virtual ~String (); }; struct Exception { Exception (const String s) {} }; const String getstring () { return String (); } void foo () { throw Exception (getstring ()); // doesnt compile } >Fix: >Release-Note: >Audit-Trail: >Unformatted: