Re: No dictionaries for std::complex

From: Marcelo Zimbres <mzimbres_at_gmail.com>
Date: Mon, 21 May 2012 13:27:57 -0300


Thanks Philippe,

it seems then, that I have the right implementation, but anyway, I thought this was fixed due to the following post: http://root.cern.ch/phpBB3/viewtopic.php?f=5&t=9618, where you mention:

"Hi,

The ProcessLine call is only needed to work around a bug in the library autoloading setting affecting only the std::complex classes (This is fixed in the trunk, revision 36617 and up).

Cheers,
Philippe. "

Maybe I misunderstood it? It is not clear to me when should I manually enforce a dictionary should be loaded.

Cheers,
Marcelo

2012/5/21 Philippe Canal <pcanal_at_fnal.gov>

> > but if I try the same on a standalone application,
> > I get the error:
>
> In standalone application, you need to more configuration 'by hand'. In
> particular
> you may have to load more dictionary explicitly. For example:
>
>
> gROOT->ProcessLine("#include <complex>");
>
> will force the loading of the pre-canned std::complex dictionary.
>
> Cheers,
> Philippe.
>
>
> On 5/19/12 9:54 PM, Marcelo Zimbres wrote:
>
> Hi Root experts,
>
> I have a class which inherits from TNamed, with a std::complex<double>
> data member.
> When I compile it on Cint (.L TAlm.cxx+) and try to write an object of
> this class to
> a root file, everything goes fine, but if I try the same on a standalone
> application,
> I get the error:
>
> Error in <TAlm::fAlm streamer>: Missing the TClass object for
> complex<double>
>
> even though, my executable is linked to the library where the dictionary
> for TAlm should be
> (I use rootcint to generate dictionaries in this case and put them in the
> library). To fix
> the problem I am adding
>
> gROOT->ProcessLine("#include <complex>");
>
> in the main function, but I suppose this is not the right way to do it?
> Why my program does find the dictionary for std::complex?
>
> Thanks in advance,
> Marcelo
>
>
Received on Mon May 21 2012 - 18:28:04 CEST

This archive was generated by hypermail 2.2.0 : Mon May 21 2012 - 23:50:02 CEST