Ticket #1973: archive_n_serialization.patch

File archive_n_serialization.patch, 3.6 KB (added by Maik Beckmann <Beckmann.Maik@…>, 14 years ago)
  • boost/archive/polymorphic_iarchive.hpp

    diff --git a/boost/archive/polymorphic_iarchive.hpp b/boost/archive/polymorphic_iarchive.hpp
    index 8a61e56..ad8c591 100644
    a b  
    1717//  See http://www.boost.org for updates, documentation, and revision history.
    1818
    1919#include <cstddef> // std::size_t
     20#include <climits> // ULONG_MAX
    2021#include <boost/config.hpp>
    2122
    2223#if defined(BOOST_NO_STDC_NAMESPACE)
    namespace std{  
    3839// i.e. that its not a synonym for (unsigned) long
    3940// if there is no 64 bit int or if its the same as a long
    4041// we shouldn't define separate functions for int64 data types.
    41 #if defined(BOOST_NO_INT64_T) \
    42     || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
    43 #   define BOOST_NO_INTRINSIC_INT64_T
     42#if defined(BOOST_NO_INT64_T)
     43    #define BOOST_NO_INTRINSIC_INT64_T
     44#else
     45    #if defined(ULONG_MAX)
     46        #if(ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
     47            #define BOOST_NO_INTRINSIC_INT64_T
     48        #endif
     49    #else
     50        #define BOOST_NO_INTRINSIC_INT64_T
     51    #endif
    4452#endif
    4553
    4654namespace boost {
  • boost/archive/polymorphic_oarchive.hpp

    diff --git a/boost/archive/polymorphic_oarchive.hpp b/boost/archive/polymorphic_oarchive.hpp
    index 7fbd911..576f957 100644
    a b  
    1717//  See http://www.boost.org for updates, documentation, and revision history.
    1818
    1919#include <cstddef> // size_t
     20#include <climits> // ULONG_MAX
    2021#include <string>
    2122
    2223#include <boost/config.hpp>
    namespace std{  
    3738// i.e. that its not a synonym for (unsigned) long
    3839// if there is no 64 bit int or if its the same as a long
    3940// we shouldn't define separate functions for int64 data types.
    40 #if defined(BOOST_NO_INT64_T) \
    41     || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
    42 #   define BOOST_NO_INTRINSIC_INT64_T
     41#if defined(BOOST_NO_INT64_T)
     42    #define BOOST_NO_INTRINSIC_INT64_T
     43#else
     44    #if defined(ULONG_MAX)
     45        #if(ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
     46            #define BOOST_NO_INTRINSIC_INT64_T
     47        #endif
     48    #else
     49        #define BOOST_NO_INTRINSIC_INT64_T
     50    #endif
    4351#endif
    4452
     53
    4554namespace boost {
    4655template<class T>
    4756class shared_ptr;
  • boost/serialization/collection_traits.hpp

    diff --git a/boost/serialization/collection_traits.hpp b/boost/serialization/collection_traits.hpp
    index 349fe91..f55bc38 100644
    a b  
    2929#include <boost/cstdint.hpp>
    3030#include <boost/serialization/level.hpp>
    3131
     32#include <climits> // ULONG_MAX
     33
    3234#define BOOST_SERIALIZATION_COLLECTION_TRAITS_HELPER(T, C)          \
    3335template<>                                                          \
    3436struct implementation_level< C < T > > {                            \
    struct implementation_level< C < T > > { \  
    5052// i.e. that its not a synonym for (unsigned) long
    5153// if there is no 64 bit int or if its the same as a long
    5254// we shouldn't define separate functions for int64 data types.
    53 #if defined(BOOST_NO_INT64_T) \
    54     || (ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
    55 #   define BOOST_NO_INTRINSIC_INT64_T
     55#if defined(BOOST_NO_INT64_T)
     56    #define BOOST_NO_INTRINSIC_INT64_T
     57#else
     58    #if defined(ULONG_MAX)
     59        #if(ULONG_MAX != 0xffffffff && ULONG_MAX == 18446744073709551615u) // 2**64 - 1
     60            #define BOOST_NO_INTRINSIC_INT64_T
     61        #endif
     62    #else
     63        #define BOOST_NO_INTRINSIC_INT64_T
     64    #endif
    5665#endif
    5766
    5867#if !defined(BOOST_NO_INTRINSIC_INT64_T)