Hi Pasha,
this bug has just been fixed (was related to cleanup code in rootcint
after dictionary was correctly generated). To get rid of the problem
add the following line to the bottom of rootcint.cxx:
G__globalcomp = -1; // G__CPPLINK <--- add this line
G__exit(0);
return 0;
}
Cheers, Fons.
Pasha Murat wrote:
>
> Dear ROOT developers,
> let me report a problem with ROOTCINT I hit in version 2.00/13
> which comes with CINT 5.013.78 on SGI IRIX 6.2. I tried KCC-, EGCS- and
> GCC2.7-compiled version - the problem is the same in all the cases.
> When parsing the following input
> ------------------------ bug_003.h
> class A {
> public:
> A(){} ;
> ~A() {};
> };
>
> class B {
> public:
> static A fgA;
> B(){};
> ~B(){};
> };
> ------------------------ bug_003_linkdef.h
> #ifdef __CINT__
> #pragma link off all globals;
> #pragma link off all classes;
> #pragma link off all functions;
> #pragma link C++ class A;
> #pragma link C++ class B;
> #endif
> ------------------------
> ROOTCINT generates the error diagnostics:
>
> /cdf/upgrade/tracking/murat/g3/test/bug>rootcint -f hmm.cxx -c bug_003.h bug_003_linkdef.h
> Note: operator new() masked 1c
> Class A: Streamer() not declared
> Class A: ShowMembers() not declared
> Class B: Streamer() not declared
> Class B: ShowMembers() not declared
> Error: Unexpected EOF G__fgetc() FILE:bug_003.h LINE:4
> Advice: You may need to use +P or -p option
>
> Does the error diagnostics above indicate a problem?
> the generated dictionary looks OK to me, but as rootcint returns a
> non-zero error code make breaks at this point anyway.
>
> thanks a lot, pasha.
-- Org: CERN, European Laboratory for Particle Physics. Mail: 1211 Geneve 23, Switzerland Phone: +41 22 7679248 E-Mail: Fons.Rademakers@cern.ch Fax: +41 22 7677910