diff options
Diffstat (limited to 'boost/serialization/forward_list.hpp')
-rw-r--r-- | boost/serialization/forward_list.hpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/boost/serialization/forward_list.hpp b/boost/serialization/forward_list.hpp index fd52f860b7..e17405383c 100644 --- a/boost/serialization/forward_list.hpp +++ b/boost/serialization/forward_list.hpp @@ -19,6 +19,11 @@ #include <forward_list> #include <iterator> // distance +#include <boost/config.hpp> +#ifdef BOOST_NO_CXX11_HDR_FORWARD_LIST +#error "not supported for versions earlier than c++11 +#endif + #include <boost/serialization/collections_save_imp.hpp> #include <boost/serialization/collections_load_imp.hpp> #include <boost/archive/detail/basic_iarchive.hpp> @@ -36,7 +41,7 @@ template<class Archive, class U, class Allocator> inline void save( Archive & ar, const std::forward_list<U, Allocator> &t, - const unsigned int file_version + const unsigned int /*file_version*/ ){ const collection_size_type count(std::distance(t.cbegin(), t.cend())); boost::serialization::stl::save_collection< @@ -67,14 +72,14 @@ collection_load_impl( t.clear(); boost::serialization::detail::stack_construct<Archive, T> u(ar, item_version); ar >> boost::serialization::make_nvp("item", u.reference()); - t.push_front(u.reference()); + t.emplace_front(u.reference()); typename std::forward_list<T, Allocator>::iterator last; last = t.begin(); ar.reset_object_address(&(*t.begin()) , & u.reference()); while(--count > 0){ detail::stack_construct<Archive, T> u(ar, item_version); ar >> boost::serialization::make_nvp("item", u.reference()); - last = t.insert_after(last, u.reference()); + last = t.emplace_after(last, u.reference()); ar.reset_object_address(&(*last) , & u.reference()); } } @@ -85,7 +90,7 @@ template<class Archive, class U, class Allocator> inline void load( Archive & ar, std::forward_list<U, Allocator> &t, - const unsigned int file_version + const unsigned int /*file_version*/ ){ const boost::archive::library_version_type library_version( ar.get_library_version() |