$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [Boost-commit] svn:boost r66442 - in trunk/boost: math/tools test test/impl
From: Bryce Lelbach (admin_at_[hidden])
Date: 2010-11-07 15:49:21
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Replied to this in Boost.Devel.
On Sun, 7 Nov 2010 21:26:53 +0100
Jürgen Hunold <juergen.hunold_at_[hidden]> wrote:
> Hi !
> 
> On Sunday, 7. November 2010 21:05:06 admin_at_[hidden] wrote:
> > Author: wash
> > Date: 2010-11-07 15:05:04 EST (Sun, 07 Nov 2010)
> > New Revision: 66442
> > URL: http://svn.boost.org/trac/boost/changeset/66442
> > 
> > Log:
> > Clang hand-holding, mostly for issues caused by Clang defining GCC macros.
> 
> I do not think that removing the inclusion of "fenv.h" for clang is the right 
> solution. According to 
> http://llvm.org/bugs/show_bug.cgi?id=6907
> it is a known compiler bug that clang fails to correctly load "fenv.h" in 
> certain environments (several gcc versions installed...)
> I've been working around this by simply adding (see below)
> 
> > Text files modified:
> >    trunk/boost/math/tools/config.hpp           |     2 +-
> >    trunk/boost/test/execution_monitor.hpp      |    15 ++++++++-------
> >    trunk/boost/test/impl/execution_monitor.ipp |    18 +++++++++---------
> >    3 files changed, 18 insertions(+), 17 deletions(-)
> > 
> > Modified: trunk/boost/math/tools/config.hpp
> > ===========================================================================
> > === --- trunk/boost/math/tools/config.hpp   (original)
> > +++ trunk/boost/math/tools/config.hpp   2010-11-07 15:05:04 EST (Sun, 07
> > Nov 2010) @@ -255,7 +255,7 @@
> >  } // namespace tools
> >  }} // namespace boost namespace math
> > 
> > -#if (defined(__linux__) && !defined(__UCLIBC__)) || defined(__QNX__) ||
> > defined(__IBMCPP__) +#if (defined(__linux__) && !defined(__UCLIBC__) &&
> > !defined(__clang__)) || defined(__QNX__) || defined(__IBMCPP__)
> > 
> >     #include <fenv.h>
> 
> #if defined(__clang__)
> #include </usr/include/fenvh.>
> #else
> 
> for  my local working copies.
> 
> >         return ~old_cw & BOOST_FPE_ALL;
> > -#elif defined(__GLIBC__) && defined(__USE_GNU)
> > +#elif defined(__GLIBC__) && defined(__USE_GNU) && !defined(BOOST_CLANG)
> > 
> >      ::feclearexcept(BOOST_FPE_ALL);
> 
> And this actually removes fp-Support from Boost.Test.
> 
> Not good.
> 
> Please find a better solution.
> And/Or mark the relevant places with Todo containing a reference to the clang 
> bug report.
> 
> Yours,
> 
> Jürgen
- -- 
Bryce Lelbach aka wash
http://groups.google.com/group/ariel_devel
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkzXENEACgkQO/fqqIuE2t5fsACgwpcpFY3FfS8rKho6GhFMoAwL
Xx0AoKpFvcrRpchggFgwNVqUa5f92P6C
=qgAx
-----END PGP SIGNATURE-----