Boost logo

Boost :

From: Reece Dunn (msclrhd_at_[hidden])
Date: 2004-01-26 17:48:23


Jonathan Turkanis wrote:
>"Sean Kelly" <sean_at_[hidden]> wrote in message
>news:1261.66.126.231.101.1075137787.squirrel_at_www.mail.f4.ca...
> > > For the Dinkumware library supplied with VC,
>BOOST_STD_EXTENSION_NAMESPACE
> > > is defined to be std wich works, but the latest version that comes
>with
> > > VC7.1 deprecates the version in the std namespace and provides a
>version
> > > in
> > > the stdext namespace. The problem is that:
> > ..
> > > will generate too many 'deprecated function' warnings in VC7.1,
>making it
> > > harder to find actual errors!
> >
> > Why not just disable that warning with a #pragma? I already do this
> > regularly with the "debug symbol name too long" message and a few
>others.
> >
>
>If Dinkumware has made this change uniformly in its various
>distributions, it sounds like BOOST_STD_EXTENSION_NAMESPACE should be
>defined to be stdext in boost/config/stdlib/dinkumware.hpp if
>_CPPLIB_VER is a certain value or higher (313?).

I have done a little digging:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcstdlib/html/vclrfhashmap_class.asp
says:

   "In Visual C++ .NET 2003, members of the <hash_map> and
   <hash_set> header files are no longer in the std namespace,
   but rather have been moved into the stdext namespace."

Also, the online Dinkumware reference
(http://www.dinkumware.com/manuals/reader.aspx?b=p/&h=hash_map.html) places
hash_xxx in the std namespace. Therefore, it is specific to VC7.1 (unless
Intel has done something similar?).

Regards,
Reece

_________________________________________________________________
Express yourself with cool new emoticons http://www.msn.co.uk/specials/myemo


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk