Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r52056 - trunk/boost/archive/detail
From: ramey_at_[hidden]
Date: 2009-03-30 11:50:06


Author: ramey
Date: 2009-03-30 11:50:06 EDT (Mon, 30 Mar 2009)
New Revision: 52056
URL: http://svn.boost.org/trac/boost/changeset/52056

Log:
adjustment to address borland failure
Text files modified:
   trunk/boost/archive/detail/iserializer.hpp | 15 +++++++++++----
   1 files changed, 11 insertions(+), 4 deletions(-)

Modified: trunk/boost/archive/detail/iserializer.hpp
==============================================================================
--- trunk/boost/archive/detail/iserializer.hpp (original)
+++ trunk/boost/archive/detail/iserializer.hpp 2009-03-30 11:50:06 EDT (Mon, 30 Mar 2009)
@@ -46,7 +46,17 @@
 #include <boost/type_traits/remove_extent.hpp>
 #include <boost/serialization/assume_abstract.hpp>
 #include <boost/type_traits/is_polymorphic.hpp>
+
+#define NO_HAS_NEW_OPERATOR ( \
+ defined(__BORLANDC__) \
+ || defined(__IBMCPP__) \
+ || defined(BOOST_MSVC) && (BOOST_MSVC <= 1300) \
+ || defined(__SUNPRO_CC) && (__SUBPRO_CC < 0x590) \
+)
+
+#if ! NO_USE_HAS_NEW_OPERATOR
 #include <boost/type_traits/has_new_operator.hpp>
+#endif
 
 #include <boost/mpl/eval_if.hpp>
 #include <boost/mpl/if.hpp>
@@ -197,10 +207,7 @@
 struct heap_allocator
 {
     // boost::has_new_operator<T> doesn't work on these compilers
- #if defined(__BORLANDC__) \
- || defined(__IBMCPP__) \
- || defined(BOOST_MSVC) && (BOOST_MSVC <= 1300) \
- || defined(__SUNPRO_CC) && (__SUBPRO_CC < 0x590)
+ #if NO_USE_HAS_NEW_OPERATOR
         // This doesn't handle operator new overload for class T
         static T * invoke(){
             return static_cast<T *>(operator new(sizeof(T)));


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