Hi, I am having problem getting rootcint to run on a class which has a nested class and which uses pair<>. I have excerpted code which reproduces the problem and it is appended. Also appended is the errors from running: rootcint -f PairClassCint.cc -c PairClass.h PairClassLinkdef.h Compiling PairClass.{h,cxx} with g++ 2.95.4 (Debian GNU/Linux x86) succeeds, so I don't think I am doing illegal C++. This is with ROOT CVS as of today. Any ideas? -Brett. //--- begin ROOTCINT errors ---// bviren@minos:test> rootcint -f PairClassCint.cc -c PairClass.h PairClassLinkdef.h Error: Symbol constSomeClass is not defined in current scope FILE:prec_stl/utility LINE:12 Error: Symbol second is not defined in current scope FILE:prec_stl/utility LINE:12 Warning: Unknown type 'constSomeClass' in function argument handled as int FILE:prec_stl/utility LINE:14 Error: Symbol pair<int is not defined in current scope FILE:prec_stl/list LINE:143 Error: Symbol constSomeClass is not defined in current scope FILE:prec_stl/list LINE:143 Error: G__getvariable: expression FILE:prec_stl/list LINE:143 Warning: Error occured during reading source files Warning: Error occured during dictionary source generation !!!Removing PairClassCint.cc PairClassCint.h !!! rootcint: error loading headers... //--- end ROOTCINT errors ---// //--- begin PairClass.h ---// #ifndef PAIRCLASS_H #define PAIRCLASS_H #include "TBox.h" #include <list> #include <map> class SomeClass; class PairClass : public TObject { public: typedef pair<int,const SomeClass*> MyPair; class MyPairList : public TBox { list <MyPair> fPairList; public: MyPairList(); virtual ~MyPairList(); }; PairClass(); virtual ~PairClass(); private: map<int,MyPairList*> fPairListMap; }; #endif // PAIRCLASS_H //--- end PairClass.h ---// //--- begin PairClass.cxx ---// #include "PairClass.h" PairClass::PairClass() {} PairClass::~PairClass() {} PairClass::MyPairList::MyPairList() {} PairClass::MyPairList::~MyPairList() {} //--- end PairClass.cxx ---// //--- begin PairClassLinkdef.h ---// #ifdef __CINT__ #pragma link off all globals; #pragma link off all classes; #pragma link off all functions; #pragma link C++ class PairClass; #endif //--- end PairClassLinkdef.h ---//
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:58 MET