Hi Richard, > This also suggests it's a separate problem from the one brought up in > August (though perhaps related), which had to do with a declaration of > map<int, pair < const int , const SomeClass* > > fPairListMap; Thank you for remind us of this problem. This is now fixed and should appear in the cvs repository shortly. Cheers, Philippe. -----Original Message----- From: owner-roottalk@pcroot.cern.ch [mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Richard S. Holmes Sent: Wednesday, December 19, 2001 2:36 PM To: roottalk@pcroot.cern.ch Subject: [ROOT] Re: rootcint and vector<pair<> > "Richard S. Holmes" wrote: > Specifically, if I have a class > header containing > > vector<pair<Int_t,double> >* Bar() const; > > rootcint fails with error > > Error: No symbol pair<int in current scope > FILE:/cern/root/cint/lib/prec_stl/vector LINE:105 > > Similar errors occur if Bar returns vector<pair<WHATEVER,double> >* > where WHATEVER is bool, bool*, unsigned, int, double, or Double_t. > Curiously enough, rootcint does NOT throw an error if WHATEVER is > Bool_t, Bool_t*, UInt_t, or size_t. On further investigation I realized the difference is that the types that succeed are resolved (by CINT?) into two symbols and the ones that fail are resolved to a single symbol. That is: Types that fail: Int_t (resolves to int), Double_t (resolves to double), bool, bool*, unsigned, int, double (resolve to themselves). Types that succeed: Bool_t (resolves to unsigned char), Bool_t* (resolves to unsigned char*), UInt_t (resolves to unsigned int), or size_t (resolves to unsigned int). This looks like a parser bug... is it? This also suggests it's a separate problem from the one brought up in August (though perhaps related), which had to do with a declaration of map<int, pair < const int , const SomeClass* > > fPairListMap; giving errors while typedef const SomeClass cSomeClass; ... map<int, pair < const int , cSomeClass* > > fPairListMap; didn't. -- Richard S. Holmes, Research Assistant Professor Physics Department, Syracuse University Syracuse, NY 13244 (315) 443-5977
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:51:12 MET