c++/8461: internal compiler error stabilize_throw_expr

rassahah@neofonie.de rassahah@neofonie.de
Tue Nov 5 04:06:00 GMT 2002


>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:



More information about the Gcc-bugs mailing list