Re: [ROOT] Problem with rootcint

From: Fons Rademakers (Fons.Rademakers@cern.ch)
Date: Thu Apr 05 2001 - 20:37:20 MEST


Hi James,

  to fully diagnose the problem we will need all the related header files.

When you say "enumerated values are actually used in my code" you mean
in inline methods in the header (rootcint does not look at the sources
so that should have no effect).

Cheers, Fons.



James Peachey wrote:
> 
> Hello,
> 
> I am having the following problem using rootcint from Root 3.00.06
> on a SunOS 5.8 system:
> 
> rootcint -f ISDCParsCint.cxx -c -I/local/data/peachey/isdcsoft/root-3.00.06/root/include/root ISDCPars.h ISDCParsLinkDef.h
> Class ISDC::ISDCPars: Do not generate Streamer() [*** custom streamer ***]
> Segmentation fault (core dumped)
> 
> The problem occurred while adding a new enumerated type to a
> header file which is included by ISDCPars.h. The seg fault goes
> away if the number of values in the new enumerated type is reduced,
> and it turns into a bus error if the number of values is increased.
> There are two other enumerated types already defined in the same scope.
> The linkdef file contains (including all three enumerated types):
> 
> // ISDCParsLinkDef.h
> #ifdef __CINT__
> 
> #pragma link off all global;
> #pragma link off all class;
> #pragma link off all enum;
> #pragma link off all function;
> #pragma link off all typedef;
> 
> #pragma link C++ nestedclass;
> #pragma link C++ nestedtypedef;
> 
> #pragma link C++ namespace ISDC;
> //#pragma link C++ enum ISDC::ConversionEnums;
> //#pragma link C++ enum ISDC::MonoTypeEnums;
> //#pragma link C++ enum ISDC::ParamEnums;
> #pragma link C++ typedef ISDC::ConversionEnumType;
> #pragma link C++ typedef ISDC::MonoTypeEnumType;
> #pragma link C++ typedef ISDC::ParamType;
> #pragma link C++ class ISDC::ISDCPars-;
> 
> #endif
> 
> If the new enumerated type is defined in the header file, but none
> of the enumerated values are actually used in my code, the problem
> goes away.
> 
> I have also tried many other variations such as naming/not-naming
> the enum types and uncommenting the lines above which link the enum
> types in the linkdef file.
> 
> I know you will probably need more information to diagnose the
> problem, but I'm not sure what else to tell you so please let me know.
> 
> Thanks,
> James

-- 
Org:    CERN, European Laboratory for Particle Physics.
Mail:   1211 Geneve 23, Switzerland
E-Mail: Fons.Rademakers@cern.ch              Phone: +41 22 7679248
WWW:    http://root.cern.ch/~rdm/            Fax:   +41 22 7677910



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:41 MET