]> git.donarmstrong.com Git - rsem.git/blobdiff - boost/type_traits/is_pod.hpp
Updated boost to v1.55.0
[rsem.git] / boost / type_traits / is_pod.hpp
index af2c3c4aeb05b9117c4c723890c10f2c079fa082..b4e17339878e4204bfbfcdcfec20abadd4b2ba0a 100644 (file)
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>
 
+#ifndef BOOST_IS_POD
+#define BOOST_INTERNAL_IS_POD(T) false
+#else
+#define BOOST_INTERNAL_IS_POD(T) BOOST_IS_POD(T)
+#endif
+
 namespace boost {
 
 // forward declaration, needed by 'is_pod_array_helper' template below
@@ -36,14 +42,14 @@ template <typename T> struct is_pod_impl
         (::boost::type_traits::ice_or<
             ::boost::is_scalar<T>::value,
             ::boost::is_void<T>::value,
-            BOOST_IS_POD(T)
+            BOOST_INTERNAL_IS_POD(T)
          >::value));
 };
 
 #if !defined(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS)
 template <typename T, std::size_t sz>
 struct is_pod_impl<T[sz]>
-    : is_pod_impl<T>
+    : public is_pod_impl<T>
 {
 };
 #endif
@@ -60,7 +66,7 @@ struct is_pod_helper
             (::boost::type_traits::ice_or<
                 ::boost::is_scalar<T>::value,
                 ::boost::is_void<T>::value,
-                BOOST_IS_POD(T)
+                BOOST_INTERNAL_IS_POD(T)
             >::value));
     };
 };
@@ -125,11 +131,15 @@ BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pod,void const volatile,true)
 
 } // namespace detail
 
-BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_POD,T,::boost::detail::is_pod_impl<T>::value)
 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_pod,T,::boost::detail::is_pod_impl<T>::value)
+// is_POD is the old depricated name for this trait, do not use this as it may
+// be removed in future without warning!!
+BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_POD,T,::boost::is_pod<T>::value)
 
 } // namespace boost
 
 #include <boost/type_traits/detail/bool_trait_undef.hpp>
 
+#undef BOOST_INTERNAL_IS_POD
+
 #endif // BOOST_TT_IS_POD_HPP_INCLUDED