> I'm trying to come up with instructions for compiler vendors who want
> to use Boost to test their compilers. What preprocessor symbols do
> they need to define? So far, it looks like:
>
>      - BOOST_NO_COMPILER_CONFIG
>      - BOOST_NO_STDLIB_CONFIG   - if they want to check the library
>      - BOOST_STRICT_CONFIG      - to disable some checks in source code
>      - macros for any known-not-implemented features,
>        e.g. BOOST_NO_TEMPLATE_TEMPLATES.
>
> Right?

Not quite:

BOOST_NO_CONFIG : turns off all checking for defects, IMO compiler specific
fixes should be turned off by this as well (in many cases this is all you
need - certainly this is what I used for testing a certain recent alpha
compiler release...)

Then define: any macros that define features: BOOST_HAS_LONG_LONG etc.
Then define any defect macros you want to temporarily enable until the
compiler is fixed :-)


> Questions:
>
>     1. Should we do something to make this easier for them?
>
>     2. What about all the places we make compiler-specific checks in
>        Boost code? Could we define some macros which make it easier
>        and less error-prone to write these, and which can be globally
>        turned off when needed?
>
>     # if BOOST_COMPILER_WORKAROUND(__SUNPRO_CC, <= 0x540)
>       ...
>     #else
>       ...
>     #endif
>
> Thoughts?

That's not a bad idea IMO.  Compiler vendors aren't necessarily typical
boost users though :-)

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to