
David Abrahams wrote:
Rene Rivera <grafik.list@redshift-software.com> 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