Re: Reflex dictionaries, namespaces and class name clashes

From: Axel Naumann <Axel.Naumann_at_cern.ch>
Date: Wed, 20 May 2009 10:59:02 +0200


Hi,

yes, this is caused by CINT itself. I know where it comes from, now I need to find a way to prevent it from happening... I'll let you know when it's fixed.

Thanks a _lot_ for pointing out this pretty fundamental bug!

Cheers, Axel.

WLavrijsen_at_lbl.gov wrote on 05/20/2009 04:36 AM:
> Hi,
>
> for reference, here's the same problem, shown in a simple CINT session, with
> ACLiC, ROOT HEAD SVN, Linux:
>
> $ cat brett.C
> namespace more {
> namespace phys {
> class nucleus {};
> namespace ens {
> class nucleus {};
> }
> }
> }
>
> $ root -l -b
> root [0] gROOT->LoadMacro( "brett.C+" )
> Info in <TUnixSystem::ACLiC>: creating shared library /home/wlav/rootdev/dev/./brett_C.so
> (Int_t)0
> root [1] more::phys::nucleus mpn;
> root [2] more::phys::ens::nucleus mpen;
> root [3] mpen
> (class more::phys::nucleus)137750248
> root [4] mpn
> (class more::phys::nucleus)137749536
> root [5] .q
>
>
> Note that if, in brett.C, I move the class nucleus in namespace phys below
> the one defined in namespace ens, the problem goes away.
>
> Best regards,
> Wim
Received on Wed May 20 2009 - 10:54:09 CEST

This archive was generated by hypermail 2.2.0 : Wed May 20 2009 - 23:50:01 CEST