Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r78574 - in branches/release: boost boost/type_traits libs/type_traits
From: john_at_[hidden]
Date: 2012-05-24 05:42:24


Author: johnmaddock
Date: 2012-05-24 05:42:23 EDT (Thu, 24 May 2012)
New Revision: 78574
URL: http://svn.boost.org/trac/boost/changeset/78574

Log:
Merge Clang fixes from Trunk.
Properties modified:
   branches/release/boost/type_traits/ (props changed)
   branches/release/boost/type_traits.hpp (props changed)
   branches/release/libs/type_traits/ (props changed)
Text files modified:
   branches/release/boost/type_traits/intrinsics.hpp | 7 ++++---
   1 files changed, 4 insertions(+), 3 deletions(-)

Modified: branches/release/boost/type_traits/intrinsics.hpp
==============================================================================
--- branches/release/boost/type_traits/intrinsics.hpp (original)
+++ branches/release/boost/type_traits/intrinsics.hpp 2012-05-24 05:42:23 EDT (Thu, 24 May 2012)
@@ -124,6 +124,7 @@
 #endif
 
 #if defined(BOOST_CLANG) && defined(__has_feature)
+# include <cstddef>
 # include <boost/type_traits/is_same.hpp>
 # include <boost/type_traits/is_reference.hpp>
 # include <boost/type_traits/is_volatile.hpp>
@@ -131,10 +132,10 @@
 # if __has_feature(is_union)
 # define BOOST_IS_UNION(T) __is_union(T)
 # endif
-# if __has_feature(is_pod) && defined(_LIBCPP_VERSION)
+# if (!defined(__GLIBCXX__) || (__GLIBCXX__ >= 20080306 && __GLIBCXX__ != 20080519)) && __has_feature(is_pod)
 # define BOOST_IS_POD(T) __is_pod(T)
 # endif
-# if __has_feature(is_empty) && defined(_LIBCPP_VERSION)
+# if (!defined(__GLIBCXX__) || (__GLIBCXX__ >= 20080306 && __GLIBCXX__ != 20080519)) && __has_feature(is_empty)
 # define BOOST_IS_EMPTY(T) __is_empty(T)
 # endif
 # if __has_feature(has_trivial_constructor)
@@ -185,7 +186,7 @@
 # define BOOST_HAS_TYPE_TRAITS_INTRINSICS
 #endif
 
-#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3) && !defined(__GCCXML__)))
+#if defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3) && !defined(__GCCXML__))) && !defined(BOOST_CLANG)
 # include <boost/type_traits/is_same.hpp>
 # include <boost/type_traits/is_reference.hpp>
 # include <boost/type_traits/is_volatile.hpp>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk