diff --git a/include/boost/smart_ptr/allocate_local_shared_array.hpp b/include/boost/smart_ptr/allocate_local_shared_array.hpp index 2c890ee..56b1797 100644 --- a/include/boost/smart_ptr/allocate_local_shared_array.hpp +++ b/include/boost/smart_ptr/allocate_local_shared_array.hpp @@ -116,7 +116,7 @@ template inline typename std::enable_if::value, local_shared_ptr >::type allocate_local_shared(const A& allocator, std::size_t count, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { typedef typename detail::sp_array_element::type element; typedef typename allocator_rebind::type other; @@ -137,7 +137,7 @@ template inline typename std::enable_if::value, local_shared_ptr >::type allocate_local_shared(const A& allocator, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { enum { count = std::extent::value diff --git a/include/boost/smart_ptr/allocate_shared_array.hpp b/include/boost/smart_ptr/allocate_shared_array.hpp index 4a2bf50..09e57be 100644 --- a/include/boost/smart_ptr/allocate_shared_array.hpp +++ b/include/boost/smart_ptr/allocate_shared_array.hpp @@ -15,7 +15,6 @@ Distributed under the Boost Software License, Version 1.0. #include #include #include -#include #include #include @@ -25,7 +24,7 @@ namespace detail { template struct sp_array_element { typedef typename boost::remove_cv::type>::type type; + std::remove_extent::type>::type type; }; template @@ -295,7 +294,7 @@ allocate_shared(const A& allocator) template inline typename std::enable_if::value, shared_ptr >::type allocate_shared(const A& allocator, std::size_t count, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { typedef typename detail::sp_array_element::type element; typedef typename allocator_rebind::type other; @@ -313,7 +312,7 @@ allocate_shared(const A& allocator, std::size_t count, template inline typename std::enable_if::value, shared_ptr >::type allocate_shared(const A& allocator, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { enum { count = std::extent::value diff --git a/include/boost/smart_ptr/allocate_unique.hpp b/include/boost/smart_ptr/allocate_unique.hpp index 9317f95..7005287 100644 --- a/include/boost/smart_ptr/allocate_unique.hpp +++ b/include/boost/smart_ptr/allocate_unique.hpp @@ -18,7 +18,6 @@ Distributed under the Boost Software License, Version 1.0. #include #include #include -#include #include #include #include @@ -57,7 +56,7 @@ struct sp_alloc_result { template struct sp_alloc_value { typedef typename boost::remove_cv::type>::type type; + std::remove_extent::type>::type type; }; template @@ -434,12 +433,12 @@ template inline typename std::enable_if::value, std::unique_ptr > >::type allocate_unique(const A& alloc, std::size_t size, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { detail::sp_alloc_make c(alloc, size); boost::alloc_construct_n(c.state(), boost::first_scalar(c.get()), size * detail::sp_alloc_size::value, boost::first_scalar(&value), - detail::sp_alloc_size::type>::value); + detail::sp_alloc_size::type>::value); return c.release(); } @@ -448,12 +447,12 @@ inline typename std::enable_if::value, std::unique_ptr::type, alloc_deleter > >::type allocate_unique(const A& alloc, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { detail::sp_alloc_make c(alloc, std::extent::value); boost::alloc_construct_n(c.state(), boost::first_scalar(c.get()), detail::sp_alloc_size::value, boost::first_scalar(&value), - detail::sp_alloc_size::type>::value); + detail::sp_alloc_size::type>::value); return c.release(); } diff --git a/include/boost/smart_ptr/make_local_shared_array.hpp b/include/boost/smart_ptr/make_local_shared_array.hpp index 74d1d07..28c16cf 100644 --- a/include/boost/smart_ptr/make_local_shared_array.hpp +++ b/include/boost/smart_ptr/make_local_shared_array.hpp @@ -27,7 +27,7 @@ make_local_shared() template inline typename std::enable_if::value, local_shared_ptr >::type -make_local_shared(const typename remove_extent::type& value) +make_local_shared(const typename std::remove_extent::type& value) { return boost::allocate_local_shared(boost::default_allocator::type>(), value); @@ -46,7 +46,7 @@ template inline typename std::enable_if::value, local_shared_ptr >::type make_local_shared(std::size_t size, - const typename remove_extent::type& value) + const typename std::remove_extent::type& value) { return boost::allocate_local_shared(boost::default_allocator::type>(), size, value); diff --git a/include/boost/smart_ptr/make_shared_array.hpp b/include/boost/smart_ptr/make_shared_array.hpp index cff2ee6..3da37cc 100644 --- a/include/boost/smart_ptr/make_shared_array.hpp +++ b/include/boost/smart_ptr/make_shared_array.hpp @@ -24,7 +24,7 @@ make_shared() template inline typename std::enable_if::value, shared_ptr >::type -make_shared(const typename remove_extent::type& value) +make_shared(const typename std::remove_extent::type& value) { return boost::allocate_shared(boost::default_allocator::type>(), value); @@ -40,7 +40,7 @@ make_shared(std::size_t size) template inline typename std::enable_if::value, shared_ptr >::type -make_shared(std::size_t size, const typename remove_extent::type& value) +make_shared(std::size_t size, const typename std::remove_extent::type& value) { return boost::allocate_shared(boost::default_allocator::type>(), size, value); diff --git a/include/boost/smart_ptr/make_unique.hpp b/include/boost/smart_ptr/make_unique.hpp index b4f1365..0fb485c 100644 --- a/include/boost/smart_ptr/make_unique.hpp +++ b/include/boost/smart_ptr/make_unique.hpp @@ -10,7 +10,6 @@ Distributed under the Boost Software License, Version 1.0. #include #include -#include #include #include #include @@ -50,7 +49,7 @@ inline typename std::enable_if::value, std::unique_ptr >::type make_unique(std::size_t size) { - return std::unique_ptr(new typename remove_extent::type[size]()); + return std::unique_ptr(new typename std::remove_extent::type[size]()); } template @@ -58,7 +57,7 @@ inline typename std::enable_if::value, std::unique_ptr >::type make_unique_noinit(std::size_t size) { - return std::unique_ptr(new typename remove_extent::type[size]); + return std::unique_ptr(new typename std::remove_extent::type[size]); } } /* boost */