[omniORB] gcc and multiple virtual inheritance

Stefan Seefeld seefeld@sympatico.ca
Mon, 18 Feb 2002 21:42:49 -0500


zee wrote:


> A_C_impl : public POA_A::C, PortableServer::RefCountServantBase


this should probably read

A_C_impl : public virtual POA_A::C, public PortableServer::RefCountServantBase

and may be even the RefCountServantBase should be derived virtually from.

 
> The constructor code for A_C_impl generated by gcc is bad and would 
> corrupt the heap with segvs.  Both gcc-2.95.2 and gcc-3.0.2 exhibit this 
> problem.


I'm using this (modulo the changes I just suggested) myself on a large scale
without problems with gcc 2.95.x, but I know that gcc 3.0.x with x at least
0 had trouble with more complex inheritance relationships due to the new ABI
they are using. I'm not using gcc 3.0.x for my omniORB based projects...

Regards,
		Stefan