|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r59941 - branches/release/boost/serialization
From: ramey_at_[hidden]
Date: 2010-02-26 00:17:34
Author: ramey
Date: 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
New Revision: 59941
URL: http://svn.boost.org/trac/boost/changeset/59941
Log:
move recent changes to release branch
Properties modified:
branches/release/boost/serialization/ (props changed)
Text files modified:
branches/release/boost/serialization/export.hpp | 5 +++++
branches/release/boost/serialization/extended_type_info_no_rtti.hpp | 11 ++++++-----
branches/release/boost/serialization/extended_type_info_typeid.hpp | 10 +++++-----
branches/release/boost/serialization/factory.hpp | 10 +++++++++-
branches/release/boost/serialization/shared_ptr.hpp | 1 -
branches/release/boost/serialization/throw_exception.hpp | 2 +-
6 files changed, 26 insertions(+), 13 deletions(-)
Modified: branches/release/boost/serialization/export.hpp
==============================================================================
--- branches/release/boost/serialization/export.hpp (original)
+++ branches/release/boost/serialization/export.hpp 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
@@ -34,6 +34,7 @@
#include <boost/mpl/not.hpp>
#include <boost/mpl/bool.hpp>
+#include <boost/serialization/export.hpp> // for guid_defined only
#include <boost/serialization/static_warning.hpp>
#include <boost/serialization/assume_abstract.hpp>
#include <boost/serialization/force_include.hpp>
@@ -115,6 +116,10 @@
);
}
+// Note INTENTIONAL usage of anonymous namespace in header.
+// This was made this way so that export.hpp could be included
+// in other headers. This is still under study.
+
namespace {
template<class T>
Modified: branches/release/boost/serialization/extended_type_info_no_rtti.hpp
==============================================================================
--- branches/release/boost/serialization/extended_type_info_no_rtti.hpp (original)
+++ branches/release/boost/serialization/extended_type_info_no_rtti.hpp 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
@@ -24,6 +24,7 @@
#include <boost/mpl/if.hpp>
#include <boost/type_traits/is_polymorphic.hpp>
+#include <boost/type_traits/remove_const.hpp>
#include <boost/serialization/static_warning.hpp>
#include <boost/serialization/singleton.hpp>
@@ -128,15 +129,15 @@
va_start(ap, count);
switch(count){
case 0:
- return factory<T, 0>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 0>(ap);
case 1:
- return factory<T, 1>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 1>(ap);
case 2:
- return factory<T, 2>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 2>(ap);
case 3:
- return factory<T, 3>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 3>(ap);
case 4:
- return factory<T, 4>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 4>(ap);
default:
assert(false); // too many arguments
// throw exception here?
Modified: branches/release/boost/serialization/extended_type_info_typeid.hpp
==============================================================================
--- branches/release/boost/serialization/extended_type_info_typeid.hpp (original)
+++ branches/release/boost/serialization/extended_type_info_typeid.hpp 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
@@ -113,15 +113,15 @@
va_start(ap, count);
switch(count){
case 0:
- return factory<boost::remove_const<T>, 0>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 0>(ap);
case 1:
- return factory<boost::remove_const<T>, 1>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 1>(ap);
case 2:
- return factory<boost::remove_const<T>, 2>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 2>(ap);
case 3:
- return factory<boost::remove_const<T>, 3>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 3>(ap);
case 4:
- return factory<boost::remove_const<T>, 4>(ap);
+ return factory<BOOST_DEDUCED_TYPENAME boost::remove_const<T>::type, 4>(ap);
default:
assert(false); // too many arguments
// throw exception here?
Modified: branches/release/boost/serialization/factory.hpp
==============================================================================
--- branches/release/boost/serialization/factory.hpp (original)
+++ branches/release/boost/serialization/factory.hpp 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
@@ -88,6 +88,14 @@
BOOST_SERIALIZATION_FACTORY(1, T, A0, 0, 0, 0)
#define BOOST_SERIALIZATION_FACTORY_0(T) \
- BOOST_SERIALIZATION_FACTORY(0, T, 0, 0, 0, 0)
+namespace boost { \
+namespace serialization { \
+ template<> \
+ T * factory<T, 0>(std::va_list){ \
+ return new T(); \
+ } \
+} \
+} \
+/**/
#endif // BOOST_SERIALIZATION_FACTORY_HPP
Modified: branches/release/boost/serialization/shared_ptr.hpp
==============================================================================
--- branches/release/boost/serialization/shared_ptr.hpp (original)
+++ branches/release/boost/serialization/shared_ptr.hpp 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
@@ -16,7 +16,6 @@
// See http://www.boost.org for updates, documentation, and revision history.
-#include <map>
#include <cstddef> // NULL
#include <boost/config.hpp>
Modified: branches/release/boost/serialization/throw_exception.hpp
==============================================================================
--- branches/release/boost/serialization/throw_exception.hpp (original)
+++ branches/release/boost/serialization/throw_exception.hpp 2010-02-26 00:17:31 EST (Fri, 26 Feb 2010)
@@ -26,7 +26,7 @@
#ifdef BOOST_NO_EXCEPTIONS
-void inline throw_exception(std::exception const & e) {
+inline void throw_exception(std::exception const & e) {
::boost::throw_exception(e);
}
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