RE:cint message

Pasha Murat (murat@cdfsga.fnal.gov)
Thu, 27 Aug 1998 21:30:16 -0500 (CDT)


Masaharu Goto writes:
> Christoph,
>
> >have I missed a part of the CINT description? I could not find any
> >document containing e.g. `#pragma preprocess ...' (from Masaharu's recent
> >posting), or warnings and error messages (famous `Note: operator new()
> >masked 1c').
>
> More detail documentation is found in cint source package. Download
> cint5.13.tar.gz from http://hpsalo.cern.ch/root/Cint.html and unpack it
> using gunzip and tar. You'll find doc/ref.txt describing all of #pragma
> statements.
> Unfortunately, operator new() mask message is not documented now. I'll have
> to add information.
>
> >class STLObjArray<MC_Track*> in ObjArray.hh line 57 original base of
> >virtual func
> >class STLObjArrayIterator<MC_Track*> in ObjArray.hh line 156 original base
> >of virtual func
> >class ConstSTLObjArrayIterator<MC_Track*> in ObjArray.hh line 252 original
> >base of virtual func
> >
> >means? It seems not to harm, but I am simply curious.
>
> This is no harm and this means those classes are roots of polymorphic
> inheritance. This is just an information. I thought it would be sometimes
> useful to knew which were the grand-base classes. So far, no one is using
> this info.
>

I'd like to comment here that for ROOT users this information makes a
lot of sense. The diagnostics above warns user that the corresponding class has
not been derived from TObject and therefore virtual functions of TObject as
Draw(...), Streamer(...) etc can't be used.
Next, all ROOT containers are lists of TObject*'s, so it is also
dangerous to put objects of such a class into any of ROOT containers.

-regards, pasha.