$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r81222 - in trunk/boost/smart_ptr: . detail
From: pdimov_at_[hidden]
Date: 2012-11-06 10:10:34
Author: pdimov
Date: 2012-11-06 10:10:32 EST (Tue, 06 Nov 2012)
New Revision: 81222
URL: http://svn.boost.org/trac/boost/changeset/81222
Log:
Fix g++ issues.
Text files modified: 
   trunk/boost/smart_ptr/allocate_shared_array.hpp        |     4 ++--                                    
   trunk/boost/smart_ptr/detail/allocate_array_helper.hpp |     6 +++---                                  
   trunk/boost/smart_ptr/detail/make_array_helper.hpp     |    16 ++++++++--------                        
   trunk/boost/smart_ptr/make_shared_array.hpp            |     6 +++---                                  
   4 files changed, 16 insertions(+), 16 deletions(-)
Modified: trunk/boost/smart_ptr/allocate_shared_array.hpp
==============================================================================
--- trunk/boost/smart_ptr/allocate_shared_array.hpp	(original)
+++ trunk/boost/smart_ptr/allocate_shared_array.hpp	2012-11-06 10:10:32 EST (Tue, 06 Nov 2012)
@@ -19,7 +19,7 @@
     template<typename T, typename A>
     inline typename detail::sp_if_array<T>::type 
     allocate_shared(const A& allocator, size_t size) {
-        typedef typename remove_cv<shared_ptr<T>::element_type>::type T1;
+        typedef typename remove_cv<typename shared_ptr<T>::element_type>::type T1;
         T1* p1 = 0;
         detail::allocate_array_helper<A, T1> a1(allocator, size, &p1);
         detail::array_deleter<T1> d1;
@@ -33,7 +33,7 @@
     template<typename T, typename A, typename... Args>
     inline typename detail::sp_if_array<T>::type
     allocate_shared(const A& allocator, size_t size, Args&&... args) {
-        typedef typename remove_cv<shared_ptr<T>::element_type>::type T1;
+        typedef typename remove_cv<typename shared_ptr<T>::element_type>::type T1;
         T1* p1 = 0;
         detail::allocate_array_helper<A, T1> a1(allocator, size, &p1);
         detail::array_deleter<T1> d1;
Modified: trunk/boost/smart_ptr/detail/allocate_array_helper.hpp
==============================================================================
--- trunk/boost/smart_ptr/detail/allocate_array_helper.hpp	(original)
+++ trunk/boost/smart_ptr/detail/allocate_array_helper.hpp	2012-11-06 10:10:32 EST (Tue, 06 Nov 2012)
@@ -16,10 +16,10 @@
     namespace detail {
         template<typename A, typename T, typename Y = T>
         class allocate_array_helper {
-            template<typename A, typename T, typename Y>
+            template<typename A9, typename T9, typename Y9>
             friend class allocate_array_helper;
-            typedef typename A::rebind<Y>   ::other A2;
-            typedef typename A::rebind<char>::other A3;
+            typedef typename A::template rebind<Y>   ::other A2;
+            typedef typename A::template rebind<char>::other A3;
         public:
             typedef typename A2::value_type      value_type;
             typedef typename A2::pointer         pointer;
Modified: trunk/boost/smart_ptr/detail/make_array_helper.hpp
==============================================================================
--- trunk/boost/smart_ptr/detail/make_array_helper.hpp	(original)
+++ trunk/boost/smart_ptr/detail/make_array_helper.hpp	2012-11-06 10:10:32 EST (Tue, 06 Nov 2012)
@@ -16,16 +16,16 @@
     namespace detail {
         template<typename T, typename Y = T>
         class make_array_helper {
-            template<typename T, typename Y>
+            template<typename T2, typename Y2>
             friend class make_array_helper;
         public:
-            typedef typename Y           value_type;
-            typedef typename Y*          pointer;
-            typedef typename const Y*    const_pointer;
-            typedef typename Y&          reference;
-            typedef typename const Y&    const_reference;
-            typedef typename std::size_t size_type;
-            typedef typename ptrdiff_t   difference_type;
+            typedef Y           value_type;
+            typedef Y*          pointer;
+            typedef const Y*    const_pointer;
+            typedef Y&          reference;
+            typedef const Y&    const_reference;
+            typedef std::size_t size_type;
+            typedef ptrdiff_t   difference_type;
             template<typename U>
             struct rebind {
                 typedef make_array_helper<T, U> other;
Modified: trunk/boost/smart_ptr/make_shared_array.hpp
==============================================================================
--- trunk/boost/smart_ptr/make_shared_array.hpp	(original)
+++ trunk/boost/smart_ptr/make_shared_array.hpp	2012-11-06 10:10:32 EST (Tue, 06 Nov 2012)
@@ -19,7 +19,7 @@
     template<typename T>
     inline typename detail::sp_if_array<T>::type
     make_shared(std::size_t size) {
-        typedef typename remove_cv<shared_ptr<T>::element_type>::type T1;
+        typedef typename remove_cv<typename shared_ptr<T>::element_type>::type T1;
         T1* p1 = 0;
         detail::make_array_helper<T1> a1(size, &p1);
         detail::array_deleter<T1> d1;
@@ -33,7 +33,7 @@
     template<typename T, typename... Args>
     inline typename detail::sp_if_array<T>::type
     make_shared(std::size_t size, Args&&... args) {
-        typedef typename remove_cv<shared_ptr<T>::element_type>::type T1;
+        typedef typename remove_cv<typename shared_ptr<T>::element_type>::type T1;
         T1* p1 = 0;
         detail::make_array_helper<T1> a1(size, &p1);
         detail::array_deleter<T1> d1;
@@ -47,7 +47,7 @@
     template<typename T>
     inline typename detail::sp_if_array<T>::type
     make_shared_noinit(std::size_t size) {
-        typedef typename remove_cv<shared_ptr<T>::element_type>::type T1;
+        typedef typename remove_cv<typename shared_ptr<T>::element_type>::type T1;
         T1* p1 = 0;
         detail::make_array_helper<T1> a1(size, &p1);
         detail::array_deleter<T1> d1;