[omniORB] Inheritance

Kevin Bailey keraba@yahoo.com
Fri, 27 Apr 2001 15:28:27 -0700


I asked this question on comp.object.corba but apparently
the answer depends on the ORB.

Will this hierarchy work ?

class POA_Base:
...
{
...
};

class POA_Derived:
...
{
...
};

class Base_impl: public virtual POA_Base
{
...
};

class Derived_impl:
  public virtual POA_Derived,
  public virtual Base_impl
{
...
};

One thing that might be a problem is that POA_Base::_this and
POA_Derived::_this are non-virtual and so Base_impl methods
can't call it safely. One might consider a virtual THIS
method or something.

Are there any other gotchas ?