diff --git a/include/boost/archive/basic_archive.hpp b/include/boost/archive/basic_archive.hpp index 8c9f2b92..21645f0c 100644 --- a/include/boost/archive/basic_archive.hpp +++ b/include/boost/archive/basic_archive.hpp @@ -282,4 +282,19 @@ BOOST_CLASS_IMPLEMENTATION(boost::archive::object_id_type, primitive_type) BOOST_CLASS_IMPLEMENTATION(boost::archive::object_reference_type, primitive_type) BOOST_CLASS_IMPLEMENTATION(boost::archive::tracking_type, primitive_type) +#include + +// set types used internally by the serialization library +// to be bitwise serializable + +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::library_version_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::version_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::class_id_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::class_id_reference_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::class_id_optional_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::class_name_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::object_id_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::object_reference_type) +BOOST_IS_BITWISE_SERIALIZABLE(boost::archive::tracking_type) + #endif //BOOST_ARCHIVE_BASIC_ARCHIVE_HPP diff --git a/include/boost/serialization/collection_size_type.hpp b/include/boost/serialization/collection_size_type.hpp index 10d9adb1..2dd8fa72 100644 --- a/include/boost/serialization/collection_size_type.hpp +++ b/include/boost/serialization/collection_size_type.hpp @@ -10,6 +10,7 @@ #include #include #include +#include namespace boost { namespace serialization { @@ -37,7 +38,7 @@ public: return *this; } // used for text output - operator const base_type () const { + operator base_type () const { return t; } // used for text input @@ -56,5 +57,6 @@ public: } } // end namespace boost::serialization BOOST_CLASS_IMPLEMENTATION(collection_size_type, primitive_type) +BOOST_IS_BITWISE_SERIALIZABLE(collection_size_type) #endif //BOOST_SERIALIZATION_COLLECTION_SIZE_TYPE_HPP