[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