Re: virtual base classes in CINT

Wouter Hulsbergen (hulsberg@mail.desy.de)
Wed, 17 Feb 1999 19:00:00 +0100


Nick van Eijndhoven wrote:

> Masaharu Goto wrote:
> >
> > Christian,
> >
> > ROOT does not allow multiple inheritance as far as I understand.
> >
> > The first case is a CINT problem. Cint tries to map derived class object to
> > base class in the dictionary but it is ambiguous.
> >
> > Second case is a ROOT problem. TObject does not allow multiple inheritance.
> > If you do not use any of the ROOT classes, this case will work.
> >
> > Please go around without using multiple inheritance in ROOT/CINT.
> >
> > Masaharu Goto
> >
>
> Hi Masa and Christian,
> ROOT does allow multiple inheritance.
> It's only virtual mult. inheritance which is not supported because
> of large machine/compiler dependencies.
> I am using mult. inheritance myself in various classes without
> problems and also the ROOT classes themselves use mult. inh.
> (see e.g. all the TAtt... classes).
> --
>
> Cheers,
> Nick.
>
> *----------------------------------------------------------------------*
> Dr. Nick van Eijndhoven Department of Subatomic Physics
> email : nick@phys.uu.nl Utrecht University / NIKHEF
> tel. +31-30-2532331 (direct) P.O. Box 80.000
> tel. +31-30-2531492 (secr.) NL-3508 TA Utrecht
> fax. +31-30-2518689 The Netherlands
> WWW : http://www.phys.uu.nl/~nick Office : Ornstein lab. 172
> ----------------------------------------------------------------------
> tel. +41-22-7679751 (direct) CERN PPE Division / ALICE exp.
> tel. +41-22-7675857 (secr.) CH-1211 Geneva 23
> fax. +41-22-7679480 Switzerland
> CERN beep : 13+7294 Office : B 160 1-012
> *----------------------------------------------------------------------*

Dear all,
Such a coincidence: just today I tried to get a set of classes into CINT and
stumbled on the same problem: I use quite a lot of multiple virtual inheritance,
because it is a nice way to seperate interface and implementation. However, when
compiling the dictionairy I get errors which indeed seem to have something to do
with the virtual inheritance. Is there any chance that this mechanism gets
supported in the (really) near future ?
Thanks, regards,
Wouter