ICE in gcc-2.95 without VTABLE_THUNKS

Marc Espie espie@tetto.liafa.jussieu.fr
Sat Jun 19 06:18:00 GMT 1999


The following simple code (simplified from kdelibs actually)

struct A {
	virtual ~A();
	A();
};

struct B: public A {
    B();
};

void f()
{
	static B t[2];
}

triggers an ICE in gcc-2.95 (current) on platforms without VTABLE_THUNKS
(found that comparing linux, sparc-solaris, and i386-openbsd..., then 
recompiling cc1plus on openbsd with VTABLE_THUNKS):

kmsgbox.C: In function `void __tcf_0()':
kmsgbox.C:12: Internal compiler error in `expand_expr', at expr.c:5882
Please submit a full bug report to `egcs-bugs@egcs.cygnus.com'.
See <URL: http://egcs.cygnus.com/faq.html#bugreport > for details.

* It would probably be useful to add this to the testsuite,
* A fix might come in handy,
* more importantly, I'm seeking advice. OpenBSD is not tied down to C++
binary compatibility at the moment. If people feel that VTABLE_THUNKS are 
finally stable enough to be used, I'm all in favor of turning it ON by
default in OpenBSD-current... we're still time away from release, and
packages will ALL be rebuilt before 2.6 (3.0 ?) anyway.


More information about the Gcc mailing list