Boost logo

Boost :

From: Rene Rivera (grafik.list_at_[hidden])
Date: 2006-06-14 21:35:23


David Abrahams wrote:
> Rene Rivera <grafik.list_at_[hidden]> writes:
>
>> I've been working on making such changes for some time now
>> <http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostConfig>.
>> But it's very slow going as I have almost no free time.
>
> This is great and very complete. It looks like you've worked things
> out so completely that actually doing the coding should be pretty
> easy.

Thanks :-) But it's not the coding of what's described in the wiki that
is laborious. It's the translation of all the Boost.Config code to use
the new macros.

> There is one nit:
>
>> Some compilers, like Comeau C++, try and simulate other
>> compilers. For them it is possible that some workarounds are
>> dependent on the particular version of the compiler they are
>> emulating. Here's some of those issues, as they come up:
>>
>> * boost/config/compiler/comeau.hpp - It emulates VC, and has the
>> _MSC_VER define.
>>
>> * boost/config/compiler/intel.hpp - It emulates VC, and has the
>> _MSC_VER define.
>>
>> The only option I can think of is to go ahead and define the
>> corresponding version macro and have the code deal with the multiple
>> defs.
>
> If I understand what you're suggesting correctly, I don't think that
> part is a very good idea, because the status quo is that Boost
> libraries expect BOOST_MSVC only to be defined when it really _is_
> MSVC, and we go to some lengths to ensure it. I don't mind the idea
> of
>
> BOOST_CXX_EMULATED_MSVC
>
> or
>
> BOOST_CXX_MSC_VER
>
> though.

Well others will want to comment on their expectations. The tipping
point for me in the direction I suggest is that I found many instances
in current Boost code where there was only reference to _MSC_VER, with
the expectation that it would apply in both real and simulated modes. SO
it's not translating the use of BOOST_MSVC that worries me, it's the
translation of all the _MSC_VER uses. Should they be converted to
BOOST_CXX_EMUALTED_MSVC or to BOOST_CXX_MSVC?

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

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