From: William S F. <ws...@fu...> - 2009-05-04 16:57:03
|
Anton Lauridsen wrote: > Hi > > I'm facing some issues with name collisions in the generated c++ code > when turning on directors, when dealing with a multiple inheritance. > > The class I am trying to wrap, uses diamond shaped inheritance, e.g. > > Base_class > / \ > SubClassA SubClassB > \ / > SubSubClass > > I'm want to turn on the director feature on "SubSubClass", but face a > naming conflict with a specific method in "Base_class". > > Base_class has a method: > > virtual bool IsKindOf(const Base_class* b) const; > > generated/unmanaged/module.h:38: error: ‘virtual bool > SwigDirector_SubSubClass::IsKindOf(const Base_class*) const’ cannot be > overloaded > generated/unmanaged/module.h:21: error: with ‘virtual bool > SwigDirector_SubSubClass::IsKindOf(const Base_class*) const’ > > Is there some way to get around this? > I'm not sure that we have tested diamond inheritance with directors and there could be some fixes needed. Have you tried using %rename to sort this out? William |