$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Beman Dawes (bdawes_at_[hidden])
Date: 2003-11-21 09:27:59
John Maddock's suggested ABI clash prevention wrapper code looks like this 
for the prefix:
   #include <boost/config.hpp>
   // this must occur after all of the includes and before any code 
appears:
   #ifdef BOOST_HAS_ABI_HEADERS
   #  include BOOST_ABI_PREFIX
   #endif
and for the suffix:
   // the suffix header occurs after all of our code:
   #ifdef BOOST_HAS_ABI_HEADERS
   #  include BOOST_ABI_SUFFIX
   #endif
That approach avoids including the BOOST_ABI_PREFIX/BOOST_ABI_SUFFIX 
headers if they would be empty anyhow (because the compiler has no ABI 
pragmas).
It does, however, clutter up the source code.
It would be possible avoid some of that clutter by supplying two additional 
headers, say <boost/abi_prefix.hpp> and <boost/abi_suffix.hpp>. The 
contents  would essentially be the two respective code snippets about.
Usage would simply be:
   #include <boost/abi_prefix.hpp>  // after all other includes
   ...
   #include <boost/abi_suffix.hpp>  // after all code
Note that these additional headers don't have to be used. A Boost developer 
would still be free choose the lengthier form above if that suited her 
preferences. The two forms are functionally equivalent.
Comments?
--Beman