diff options
Diffstat (limited to 'boost/interprocess/smart_ptr/shared_ptr.hpp')
-rw-r--r-- | boost/interprocess/smart_ptr/shared_ptr.hpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/boost/interprocess/smart_ptr/shared_ptr.hpp b/boost/interprocess/smart_ptr/shared_ptr.hpp index fdf7235727..18e2222629 100644 --- a/boost/interprocess/smart_ptr/shared_ptr.hpp +++ b/boost/interprocess/smart_ptr/shared_ptr.hpp @@ -16,7 +16,11 @@ #ifndef BOOST_INTERPROCESS_SHARED_PTR_HPP_INCLUDED #define BOOST_INTERPROCESS_SHARED_PTR_HPP_INCLUDED -#if defined(_MSC_VER) +#ifndef BOOST_CONFIG_HPP +# include <boost/config.hpp> +#endif +# +#if defined(BOOST_HAS_PRAGMA_ONCE) # pragma once #endif @@ -28,6 +32,7 @@ #include <boost/assert.hpp> #include <boost/interprocess/smart_ptr/detail/shared_count.hpp> #include <boost/interprocess/detail/mpl.hpp> +#include <boost/interprocess/detail/nothrow.hpp> #include <boost/move/utility_core.hpp> #include <boost/interprocess/detail/type_traits.hpp> #include <boost/interprocess/allocators/allocator.hpp> @@ -35,10 +40,7 @@ #include <boost/static_assert.hpp> #include <boost/intrusive/pointer_traits.hpp> -#include <algorithm> // for std::swap -#include <functional> // for std::less -#include <typeinfo> // for std::bad_cast -#include <iosfwd> // for std::basic_ostream +#include <iosfwd> // for std::basic_ostream //!\file //!Describes the smart pointer shared_ptr @@ -391,7 +393,7 @@ inline typename managed_shared_ptr<T, ManagedMemory>::type //!Does not throw, return null shared pointer in error. template<class T, class ManagedMemory> inline typename managed_shared_ptr<T, ManagedMemory>::type - make_managed_shared_ptr(T *constructed_object, ManagedMemory &managed_memory, std::nothrow_t) + make_managed_shared_ptr(T *constructed_object, ManagedMemory &managed_memory, const std::nothrow_t &) { try{ return typename managed_shared_ptr<T, ManagedMemory>::type |