From mboxrd@z Thu Jan 1 00:00:00 1970 From: rodrigc@gcc.gnu.org To: gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org, nobody@gcc.gnu.org, rodrigc@gcc.gnu.org, topiolli@ee.oulu.fi Subject: Re: c++/4381: Exceptions virtually inherited from a class cause segmentation fault at run time Date: Thu, 27 Sep 2001 22:27:00 -0000 Message-id: <20010928052750.26689.qmail@sourceware.cygnus.com> X-SW-Source: 2001-09/msg00523.html List-Id: Synopsis: Exceptions virtually inherited from a class cause segmentation fault at run time State-Changed-From-To: open->analyzed State-Changed-By: rodrigc State-Changed-When: Thu Sep 27 22:27:49 2001 State-Changed-Why: Verified with gcc version 3.0.2 20010927 (prerelease) under Linux. A backtrace of the resulting Segmentation Fault reveals: Program received signal SIGSEGV, Segmentation fault. #0 __cxxabiv1::__vmi_class_type_info::__do_upcast(__cxxabiv1::__class_type_info const*, void const*, __cxxabiv1::__class_type_info::__upcast_result&) const (this=0x804dca0, dst=0x804dc80, obj_ptr=0x1a, result=@0xbffff2b0) at tinfo.cc:104 #1 0x4005f9fa in __cxxabiv1::__class_type_info::__do_upcast(__cxxabiv1::__class_type_info const*, void**) const (this=0x804dca0, dst_type=0x804dc80, obj_ptr=0xbffff318) at tinfo.cc:228 #2 0x4005f9bb in __cxxabiv1::__class_type_info::__do_catch(std::type_info const*, void**, unsigned) const (this=0x804dc80, thr_type=0x804dca0, thr_obj=0xbffff318, outer=1) at tinfo.cc:219 #3 0x4005ea39 in check_exception_spec(lsda_header_info*, std::type_info const*, long) (info=0xbffff3b0, throw_type=0x804dca0, filter_value=-1) at eh_personality.cc:119 #4 0x4005ee29 in __gxx_personality_v0 (version=1, actions=2, exception_class=5138137972254386944, ue_header=0x8050448, context=0xbffff5c0) at eh_personality.cc:331 #5 0x400e73b5 in _Unwind_RaiseException_Phase2 (exc=0x8050448, context=0xbffff5c0) at unwind-dw2.c:1045 #6 0x400e74fb in _Unwind_RaiseException (exc=0x8050448) at unwind-dw2.c:1045 #7 0x4005f1a8 in __cxa_throw (obj=0x8050468, tinfo=0x804dca0, dest=0) at eh_throw.cc:72 #8 0x0804a4f7 in func() () #9 0x0804a52f in main () #10 0x40106e5e in __libc_start_main (main=0x804a520
, argc=1, ubp_av=0xbffff7b4, init=0x804a110 <_init>, fini=0x804cad0 <_fini>, rtld_fini=0x4000d3c4 <_dl_fini>, stack_end=0xbffff7ac) at ../sysdeps/generic/libc-start.c:129 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=4381&database=gcc