Re: [ROOT] bug in TStreamerSTL::TStreamerSTL and maps

From: Rene Brun (Rene.Brun@cern.ch)
Date: Sat Apr 28 2001 - 08:29:16 MEST


Hi Axel,
I already answered a similar mail from you on April 20. See
http://root.cern.ch/root/roottalk/roottalk01/1358.html

Rene Brun

On Fri, 27 Apr 2001, Axel Naumann wrote:

> Hi,
> 
> streaming a class with a member of the following
>    std::map<TString, TDataObjList*, TStringGreater>
> gives an error message by TStreamerSTL::TStreamerSTL:
>    UNKNOW type, sopen=TString,TDataObjList
> 
> It's quite obvious that map needs two template params, but the parser in
> TStreamerSTL::TStreamerSTL doesn't expect more than one template arg...
> (btw: if there were three template args and the second were not a pointer
> this would result in an
>    UNKNOW type, sopen=TString,TDataObjList,TStringGreater
> or take a std::map<TString*, TDataObjList, TStringGreater>, well...)
> 
> Could somebody fix this? (I'm willing to help, but I suppose you're much
> faster and better in fixing that...)
> 
> Best regards, Axel.
> 
> PS: I know the std::less template arg does not need to be streamed, but
> still it's sometimes given as one of the template args - which then has to
> be skipped by the parser.
> 
> PPS: Sorry for that pile of stl problem reports...
> 



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:43 MET