Dear Masaharu, The file GPIB.h contains quite a bit of cruft extracted from the system libraries, so I made up a very simple class that reproduces this problem. Please let me know if you still really want the GPIB.h and GPIBLinkDef.h. I quite agree with your comments about the difficulties in supporting long long, and it probably need not be too much of a priority for you. The only reason I needed this was for the system files used by the device driver, and I have managed to find a workaround by using the non-gcc struct version for the type of my variables rather than long long. I have included below three files: example.h, example.cxx, and exampleLinkDef.h. rootcint -f exampleDict.cxx -c -t example.h exampleLinkDef.h gives me the same segmentation fault as for GPIB.h. If I try to load the class into an interactive ROOT session, I get a series of "*** Break *** segmentation violation" messages and have to kill ROOT with ^C. Again, all this is on a Linux box running Redhat 5.2 (kernel 2.0.36) with egcs-2.91.66 and ROOT version 2.22.09. I have not tried your updated cint as yet. Regards, Gora ---------- Begin: example.h ------------- class Tmyclass { public: long long flnlong; myclass(); virtual ~Tmyclass(); void PrintLongLong(); ClassDef(TMyclass, 1) }; ----------- End: example.h ------------- ---------- Begin: example.cxx ------------- #include <iostream.h> #include "example.h" ClassImp(Tmyclass) Tmyclass::Tmyclass() { // Do nothing } Tmyclass::~Tmyclass() { // Do nothing } Tmyclass::~Tmyclass(int myint) { flnlong = myint; } void Tmyclass::PrintLongLong() { cout << (int) flnlong << endl; } ----------- End: example.cxx ------------- ---------- Begin: exampleLinkDef.h ------------- #ifdef __CINT__ #pragma link off all globals; #pragma link off all classes; #pragma link off all functions; #pragma link C++ class Tmyclass; #endif ----------- End: exampleLinkDef.h -------------
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:36 MET