Boost logo

Boost-Commit :

From: ramey_at_[hidden]
Date: 2008-03-31 11:46:49


Author: ramey
Date: 2008-03-31 11:46:48 EDT (Mon, 31 Mar 2008)
New Revision: 43955
URL: http://svn.boost.org/trac/boost/changeset/43955

Log:
Corrected error in detection of 64 bit support
Text files modified:
   trunk/boost/archive/polymorphic_iarchive.hpp | 12 +++++++++---
   trunk/boost/archive/polymorphic_oarchive.hpp | 12 +++++++++---
   2 files changed, 18 insertions(+), 6 deletions(-)

Modified: trunk/boost/archive/polymorphic_iarchive.hpp
==============================================================================
--- trunk/boost/archive/polymorphic_iarchive.hpp (original)
+++ trunk/boost/archive/polymorphic_iarchive.hpp 2008-03-31 11:46:48 EDT (Mon, 31 Mar 2008)
@@ -17,6 +17,7 @@
 // See http://www.boost.org for updates, documentation, and revision history.
 
 #include <cstddef> // std::size_t
+#include <climits> // ULONG_MAX
 #include <boost/config.hpp>
 
 #if defined(BOOST_NO_STDC_NAMESPACE)
@@ -38,9 +39,14 @@
 // i.e. that its not a synonym for (unsigned) long
 // if there is no 64 bit int or if its the same as a long
 // we shouldn't define separate functions for int64 data types.
-#if defined(BOOST_NO_INT64_T) \
- || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
-# define BOOST_NO_INTRINSIC_INT64_T
+#if defined(BOOST_NO_INT64_T)
+ #if defined(ULONG_MAX)
+ #if(ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
+ #define BOOST_NO_INTRINSIC_INT64_T
+ #endif
+ #else
+ #define BOOST_NO_INTRINSIC_INT64_T
+ #endif
 #endif
 
 namespace boost {

Modified: trunk/boost/archive/polymorphic_oarchive.hpp
==============================================================================
--- trunk/boost/archive/polymorphic_oarchive.hpp (original)
+++ trunk/boost/archive/polymorphic_oarchive.hpp 2008-03-31 11:46:48 EDT (Mon, 31 Mar 2008)
@@ -17,6 +17,7 @@
 // See http://www.boost.org for updates, documentation, and revision history.
 
 #include <cstddef> // size_t
+#include <climits> // ULONG_MAX
 #include <string>
 
 #include <boost/config.hpp>
@@ -37,9 +38,14 @@
 // i.e. that its not a synonym for (unsigned) long
 // if there is no 64 bit int or if its the same as a long
 // we shouldn't define separate functions for int64 data types.
-#if defined(BOOST_NO_INT64_T) \
- || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
-# define BOOST_NO_INTRINSIC_INT64_T
+#if defined(BOOST_NO_INT64_T)
+ #if defined(ULONG_MAX)
+ #if(ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
+ #define BOOST_NO_INTRINSIC_INT64_T
+ #endif
+ #else
+ #define BOOST_NO_INTRINSIC_INT64_T
+ #endif
 #endif
 
 namespace boost {


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