Re: g++ template problem
> template<class C>
> class mymap {
> public:
> typedef std::map<SString, rc<C> > mmap;
> typedef rc<C> rcC;
> typedef std::map<SString, rcC > mmap2;
> mymap<C>() {
> tmap::const_iterator ti;
> mmap::const_iterator mi; // error: expected `;' before 'mi'
> mmap2::const_iterator mi2; // error: expected `;' before 'mi2'
> }
> };
You need to use:
typename mmap::const_iterator mi;
typename mmap2::const_iterator mi2;
See the discussion about "dependent names" in:
http://gcc.gnu.org/gcc-3.4/changes.html
--
Philip Martin
Reply to: