Re: Problem wiith name mangling of template classes in dictionary files after changing optimisation flag...

From: Pierre-Luc Drouin <pldrouin_at_physics.carleton.ca>
Date: Mon, 9 Mar 2009 12:00:51 -0400


I tried compiling CINT with -ip and it fixes it...

Thanks
Pierre-Luc Drouin

Axel Naumann wrote:
> Hi Pierre-Luc,
>
> interesting! At least as a first step you should try to compile all of
> CINT with -ip instead of -ipo; simply set CINTCXXFLAGS in the
> Makefile.icc* that you used. Let me know if that helps.
>
> On the other hand, most of ROOT is functions that are meant to be
> callable by users. It's not a boxed piece of software, so I am not
> sure how much you really gain by multi-file optimization.
>
> Cheers, Axel.
>
> Pierre-Luc Drouin wrote:
>> Hi,
>>
>> I compiled 5.22.00 using icc with -ipo and now my own dictionary
>> files for template classes are not generated properly. For example I
>> get lines like this:
>>
>> typedef ::ROOT::Shadow::QList<double*> ShadowClass;
>>
>> instead of this
>>
>> typedef ::ROOT::Shadow::QListlEdoublemUgR ShadowClass;
>>
>> If I compile ROOT with -ip instead of -ipo (single file optimisation
>> instead of multi-file), everything works fine. Do you know if this
>> can be easily fixed or if not which source file/libray should be
>> compiled without ipo to allow generating these correctly?
>>
>> Thank you!
>> Pierre-Luc Drouin
>>
>>
Received on Mon Mar 09 2009 - 17:01:11 CET

This archive was generated by hypermail 2.2.0 : Tue Mar 10 2009 - 05:50:03 CET