From: John Maddock (john_at_[hidden])
Date: 2005-10-17 04:37:54
> After reading up on past discussions about what people want from a set
> of standard macros for compiler identification, I put together a wiki
> page with past information on the subject and my ideas as to what the
> consensus is. And basic proposal based on the ideas:
> Discussion, contributions, funny anecdotes are welcome :-)
>(1) BOOST_VERSION_NUMBER macro
Overall, I like it, as someone else suggested you may need to reserve a few
more digits here and there, as long as we don't end up overflowing a 32-bit
int of course.
> For each compiler 'boost/config/select_compiler_config.hpp' would define a
> macro as '0' by default
That won't work: users can short circuit that header so that it doesn't get
included as documented here:
We could define any macro that's not already been defined in suffix.hpp
I like your choice of names for the macros BTW.
> For some compiler toolsets it's possible that multiple macros are defined.
> For instance this would be the case for EDG based compilers >where one
> would want to know both the EDG version and the specific vnedor compiler
> version. ANother being compilers that are >frontends to other system
> compilers, like the Intel compiler. For those reasons it would be better
> to create new headers which contain the >above definitions per compiler.
> This would allow them to be defined once and included where appropriate.
> Hence we would need to add >the following headers:
I don't understand the logic there, why the extra headers?
Taking Intel on Linux as an example, it includes common_edg.hpp which would
define BOOST_CXX_EDG, then intel.hpp would define BOOST_CXX_INTEL, I'm not
sure whether BOOST_CXX_GCC should be defined as well, but intel.hpp could
define it if required.
Likewise with the platform headers: I don't see the need for the extra
headers, the only macro that can be defined in combination with the other
appears to be BOOST_PLATFORM_POSIX and presumably that would be defined in
the existing posix_features.hpp?
Looks like you need to cull some more std lib information to get the version
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk