From 3b3c2792fff124cdfc45160136c5bc0c56bc7421 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Sat, 21 Jan 2012 21:43:17 +0000 Subject: [PATCH] Quickbook: Merge to quickbook-dev [SVN r76630] --- include/boost/detail/container_fwd.hpp | 6 +++++- include/boost/detail/fenv.hpp | 5 +++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/include/boost/detail/container_fwd.hpp b/include/boost/detail/container_fwd.hpp index 659e428..7df7ccb 100644 --- a/include/boost/detail/container_fwd.hpp +++ b/include/boost/detail/container_fwd.hpp @@ -38,7 +38,11 @@ # define BOOST_DETAIL_NO_CONTAINER_FWD # elif defined(__GLIBCPP__) || defined(__GLIBCXX__) // GNU libstdc++ 3 -# if defined(_GLIBCXX_DEBUG) \ + // + // Disable forwarding for all recent versions, as the library has a + // versioned namespace mode, and I don't know how to detect it. +# if __GLIBCXX__ >= 20070513 \ + || defined(_GLIBCXX_DEBUG) \ || defined(_GLIBCXX_PARALLEL) \ || defined(_GLIBCXX_PROFILE) # define BOOST_DETAIL_NO_CONTAINER_FWD diff --git a/include/boost/detail/fenv.hpp b/include/boost/detail/fenv.hpp index 1ba8833..f048706 100644 --- a/include/boost/detail/fenv.hpp +++ b/include/boost/detail/fenv.hpp @@ -16,9 +16,10 @@ /* If we're using clang + glibc, we have to get hacky. * See http://llvm.org/bugs/show_bug.cgi?id=6907 */ -#if defined(__clang__) && \ +#if defined(__clang__) && (__clang_major__ < 3) && \ defined(__GNU_LIBRARY__) && /* up to version 5 */ \ - defined(__GLIBC__) /* version 6 + */ + defined(__GLIBC__) && /* version 6 + */ \ + !defined(_FENV_H) #define _FENV_H #include