Re: bug in rootcint

From: Philippe Canal <pcanal_at_fnal.gov>
Date: Fri, 5 Sep 2008 06:49:02 -0500


Hi Robert,

The problem was due to the fact that on AFS the inode number are not unique (2 different files can have the same inode number) and this lead rootcint to incorrectly think that one of your file (UtilPDG.h) was already loaded.

This problem has been corrected in the SVN trunk.

Cheers,
Philippe
>
>
> Robert Hatcher wrote:
>> Hi all,
>> For about the last week I've been having problems with the SVN trunk
>> of rootcint. The error looks like:
>>
>> $ rootcint -f /afs/path/tmp/UtilCint.cc -c \
>> -I. -I/afs/path/tmp -I/afs/path/tmp -I/afs/path/rel/include \
>> -I/afs/path/rel/include -DUNIX -DLINUX -D__UNIX__ -D__LINUX__ \
>> -DDATAREP_LITTLE_IEEE -DDATAREP_LITTLE_ENDIAN \
>> -DDEFECT_NO_IOSTREAM_NAMESPACES -DDEFECT_NO_JZEXT -DDEFECT_NO_INTHEX \
>> -DDEFECT_NO_INTHOLLERITH -DDEFECT_NO_READONLY
>> -DDEFECT_NO_DIRECT_FIXED \
>> -DDEFECT_NO_STRUCTURE -DUSE_ROOT -I/afs/path/root/trunk-opt/include \
>> LoadMinosPDG.h MsgUtil.h UtilBlockedRunningAverage.h \
>> UtilBlockedRunningAverageVector.h UtilHepevt.h UtilIstHEP.h \
>> UtilMCFlag.h UtilMath.h UtilPDG.h UtilRunningAverage.h \
>> UtilRunningAverageVector.h UtilStream.h UtilString.h LinkDef.h
>> Error: link requested for unknown class UtilPDG LinkDef.h:28:
>> Warning: Error occurred during reading source files
>> Warning: Error occurred during dictionary source generation
>> !!!Removing /afs/path/tmp/UtilCint.cc /afs/path/tmp/UtilCint.h !!!
>> Error: rootcint: error loading headers...
>>
>> This is on Linux SLF3.0.5 w/ gcc 3.4.3. I can't come up with a
>> consistent test of this problem. Relevant notes:
>> * Our code (in this pkg) hasn't changed, only root versions
>> which update nightly. This problem was first observed after the
>> clean rebuild on Sunday night (other nights are incremental builds).
>> * This error occurs _only_ for the version of root built w/
>> optimization turned on. Our non-opt build of root against
>> this same instance of the same package is fine.
>> * One of the packages (referencing these same classes) that was
>> giving problems cleared up after root was re-built yesterday
>> following a "distclean" (as opposed to the nightly incremental
>> build)
>> * The problematic files have namespaces, as opposed to classes, with
>> enums, typedefs and functions.
>>
>> The fact that the problem moves around depending on library loading
>> order and for the optimized version suggests that the error lies with
>> an off-by-one error or a missing \0 in string handling that depends on
>> memory layout.
>>
>> -robert
>>
>> Robert W. Hatcher | rhatcher_at_fnal.gov <mailto:rhatcher_at_fnal.gov>
>> 630-840-3102
>> FNAL CD/REX (MINOS) | MS 220, PO Box 500, Batavia IL 60510
>>
>>
>>
>>
>
Received on Fri Sep 05 2008 - 13:49:09 CEST

This archive was generated by hypermail 2.2.0 : Fri Sep 05 2008 - 17:50:02 CEST