Hi Masa, On Thu, 30 Aug 2001 22:05:18 +0900 Masaharu Goto <MXJ02154@nifty.ne.jp> wrote concerning "RE:Re: [ROOT] rootcint + pair + nexted clas": > Hello Christian, > > Sorry for delay in my reply, No worry, at least not on my part, as it's really Bretts problem. I just explicitly wrote you since I thought it was a problem in CINT. > I tried your example and it compiled without problem > with my RedHat6.2 Linux and ROOT/CINT 5.15.10. If you > still have the problem, would you resend the information? Anyway, the problem persists. I'm using CINT 5.15.10 and ROOT 3.01/06 (in fact, it's almost 3.02/00 - I updated my checkout 2 hours before René started 3.02 :-), on a GNU/Linux box running Redhat 6.2. Ok, so I have (or Brett has) the header file: // -*- mode: c++ -*- //--- begin classes.h ---// #ifndef PAIRCLASS_H #define PAIRCLASS_H #include <TObject.h> #include <list> #include <map> class SomeClass { public: SomeClass(); ~SomeClass(); }; #ifdef FOO typedef const SomeClass cSomeClass; #endif class PairClass : public TObject { public: PairClass(); virtual ~PairClass(); private: #ifdef FOO map<int, pair < const int , cSomeClass* > > fPairListMap; list< pair < const int , cSomeClass* > > fPairList; #else map<int, pair < const int , const SomeClass* > > fPairListMap; list< pair < const int , const SomeClass* > > fPairList; #endif }; #endif // PAIRCLASS_H //--- end classes.h ---// and a linkdef file: //-*-mode: c++ -*- //--- begin linkdef.h ---// #pragma link off all classes; #pragma link off all functions; #pragma link off all globals; #pragma link C++ class SomeClass; #pragma link C++ class PairClass; #endif //--- end linkdef.h ---// If I do rootcint -f dicts.cxx -c classes.h linkdef I get error messages like: 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 and it fails. However, if I do rootcint -f dicts.cxx -c -DFOO classes.h linkdef it succeeds. I think we probably got our wires crossed somewher, and you thought I was talking about the case _with_ FOO defined. I think you'll see this problem too. Ofcourse Brett and I may be doing something wrong here, but I think not. Yours, Christian Holm Christensen ------------------------------------------- Address: Sankt Hansgade 23, 1. th. Phone: (+45) 35 35 96 91 DK-2200 Copenhagen N Cell: (+45) 28 82 16 23 Denmark Office: (+45) 353 25 305 Email: cholm@nbi.dk Web: www.nbi.dk/~cholm
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:59 MET