Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2003-11-27 09:33:29


At 04:29 AM 11/27/2003, Russell Hind wrote:
>John Maddock wrote:
>>
>> Currently it completely messes up the config system because it defines
>> _MSC_VER=1200 (!)
>>
>
>I ran into this. Basically everywhere there is a workaround for dinkum
>stl and msvc, you also have to check !defined(__BORLANDC__) My initial
>tests with lambda was that basically the new compiler didn't need any
>workarounds but it meant making sure no current workarounds were being
>included for the new version.

Isn't the correct fix usually to change _MSC_VER to BOOST_MSVC?

Other than for the config library, I would really like to ban _MSC_VER
(unless accompanied by a comment that says "// including non-Microsoft
compilers". Otherwise, when you see _MSC_VER in source code, you never know
if the author remembered that compilers other than VC++ define it, and
often with unhelpful values.

Is this something we want to try to fix this release? There is possibly
suspect _MSC_VER use in the Boost headers listed below.

--Beman

boost\array.hpp
boost\bind.hpp
boost\checked_delete.hpp
boost\current_function.hpp
boost\mem_fn.hpp
boost\ref.hpp
boost\throw_exception.hpp
boost\bind\arg.hpp
boost\bind\placeholders.hpp
boost\config\auto_link.hpp
boost\config\select_compiler_config.hpp
boost\config\stdlib\dinkumware.hpp
boost\date_time\compiler_config.hpp
boost\date_time\locale_config.hpp
boost\date_time\time_parsing.hpp
boost\date_time\time_resolution_traits.hpp
boost\date_time\posix_time\time_formatters.hpp
boost\detail\atomic_count.hpp
boost\detail\atomic_count_win32.hpp
boost\detail\lightweight_mutex.hpp
boost\detail\lightweight_test.hpp
boost\detail\lwm_nop.hpp
boost\detail\lwm_pthreads.hpp
boost\detail\lwm_win32.hpp
boost\detail\lwm_win32_cs.hpp
boost\detail\lwm_win32_nt.hpp
boost\detail\quick_allocator.hpp
boost\detail\shared_count.hpp
boost\iterator\zip_iterator.hpp
boost\iterator\detail\config_def.hpp
boost\numeric\interval\detail\msvc_rounding_control.hpp
boost\numeric\interval\detail\x86_rounding_control.hpp
boost\preprocessor\config\config.hpp
boost\python\other.hpp
boost\python\ptr.hpp
boost\python\type_id.hpp
boost\python\detail\config.hpp
boost\python\detail\wrap_python.hpp
boost\random\shuffle_output.hpp
boost\regex\config.hpp
boost\type_traits\is_integral.hpp


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