$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Douglas Gregor (gregod_at_[hidden])
Date: 2001-09-01 09:59:01
On Friday 31 August 2001 10:15, you wrote:
> Simply put, some workarounds under BOOST_MSVC weren't written expecting
> a conforming compiler from Microsoft.  It's usually trivial to fix, but
> it might not work either way with a new version of the compiler.
It would be useful in this case if we had macros to emulate a compiler on a 
different compiler. Assuming we have a compiler that does not require any 
workarounds (we almost do), it would be great if we could run the regression 
tests through that compiler but emulate one of the other compilers to ensure 
that we haven't used a bug to our advantage. I do this with Boost.Function, 
so even if the old workarounds are used on a new version there shouldn't be a 
new failure (unless it's a new bug).
> How about using #error instead?  The BOOST user is made very aware they
> are entering uncharted territory.
It's a pity that #warning is non-standard :(. I don't see any reason to halt 
compilation just because the user has a newer compiler. If we make sure that 
workaround code is still conforming code, it's reasonable to be pessimistic 
about new releases. We can always enable BOOST_STRICT to test out the 
capabilities of a new version without forcing the user to do that work for us.
        Doug