Boost logo

Boost :

From: Russell Hind (rh_gmane_at_[hidden])
Date: 2005-05-11 04:11:49


Thorsten Ottosen wrote:
> Thanks. I have applied them and comitted.
>

I've had to make some mods as Borland doesn't appear to like template
statements in macros. See attached but don't apply this without reading
my comments below

> | The next error I'm not so sure on is in tutl.cpp line 233:
> |
> | tut1.cpp:
> | Error E2227 tut1.cpp 233: Extra parameter in call to
>
> I don't get this error. Do you know what the fix is?
>

I think the problem is the 'using base_type::release' in the macros at
the end of reversible_ptr_container.hpp I don't think Borland is
picking these up. I've tried to implement a release instead of the
using, which just passes it on to base_type. This works for ptr_vector,
but gives more compile errors in ptr_deque due to auto_type. Maybe you
can help with this?

The other common error is on ptr_sequence_adaptor.hpp line 99. Perhaps
you understand what is happening here to? I've attached my test output
also.

Thanks

Russell

Index: boost/ptr_container/detail/reversible_ptr_container.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/detail/reversible_ptr_container.hpp,v
retrieving revision 1.12
diff -u -r1.12 reversible_ptr_container.hpp
--- boost/ptr_container/detail/reversible_ptr_container.hpp 10 May 2005 21:22:23 -0000 1.12
+++ boost/ptr_container/detail/reversible_ptr_container.hpp 11 May 2005 09:05:49 -0000
@@ -40,7 +40,7 @@
 
 namespace boost
 {
-
+
 namespace ptr_container_detail
 {
 
@@ -63,18 +63,18 @@
     struct is_pointer_or_integral_tag {};
     struct is_range_tag {};
 
-
-
+
+
     template
- <
- class Config,
+ <
+ class Config,
         class CloneAllocator
>
- class reversible_ptr_container
+ class reversible_ptr_container
     {
     private:
         BOOST_STATIC_CONSTANT( bool, allow_null = Config::allow_null );
-
+
         typedef BOOST_DEDUCED_TYPENAME Config::value_type Ty_;
 
         template< bool allow_null_values >
@@ -82,10 +82,10 @@
         {
             template< class Iter >
             static Ty_* allocate_clone_from_iterator( Iter i )
- {
+ {
                 return allocate_clone( Config::get_const_pointer( i ) );
             }
-
+
             static Ty_* allocate_clone( const Ty_* x )
             {
                 if( allow_null_values )
@@ -100,7 +100,7 @@
 
                 return CloneAllocator::allocate_clone( *x );
             }
-
+
             static void deallocate_clone( const Ty_* x )
             {
                 if( allow_null_values )
@@ -114,12 +114,12 @@
         };
 
         typedef BOOST_DEDUCED_TYPENAME Config::void_container_type Cont;
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- typedef null_clone_allocator<reversible_ptr_container::allow_null>
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef null_clone_allocator<reversible_ptr_container::allow_null>
                                                                     null_cloner_type;
 #else
         typedef null_clone_allocator<allow_null> null_cloner_type;
-#endif
+#endif
         typedef clone_deleter<null_cloner_type> Deleter;
 
         Cont c_;
@@ -129,59 +129,59 @@
         const Cont& c_private() const { return c_; }
 
     public: // typedefs
- typedef BOOST_DEDUCED_TYPENAME Config::object_type
+ typedef BOOST_DEDUCED_TYPENAME Config::object_type
                                object_type;
         typedef Ty_* value_type;
         typedef Ty_* pointer;
         typedef Ty_& reference;
         typedef const Ty_& const_reference;
-
- typedef BOOST_DEDUCED_TYPENAME Config::iterator
+
+ typedef BOOST_DEDUCED_TYPENAME Config::iterator
                                    iterator;
         typedef BOOST_DEDUCED_TYPENAME Config::const_iterator
                                    const_iterator;
         typedef BOOST_DEDUCED_TYPENAME Config::reverse_iterator
                                    reverse_iterator;
- typedef BOOST_DEDUCED_TYPENAME Config::const_reverse_iterator
+ typedef BOOST_DEDUCED_TYPENAME Config::const_reverse_iterator
                                    const_reverse_iterator;
         typedef BOOST_DEDUCED_TYPENAME Cont::difference_type
- difference_type;
+ difference_type;
         typedef BOOST_DEDUCED_TYPENAME Cont::size_type
                                    size_type;
         typedef BOOST_DEDUCED_TYPENAME Config::allocator_type
                                    allocator_type;
 
- typedef ptr_container_detail::static_move_ptr<Ty_,Deleter>
+ typedef ptr_container_detail::static_move_ptr<Ty_,Deleter>
                                    auto_type;
-
- protected:
-
+
+ protected:
+
         typedef ptr_container_detail::scoped_deleter<Ty_,null_cloner_type>
                                    scoped_deleter;
         typedef BOOST_DEDUCED_TYPENAME Cont::iterator
- ptr_iterator;
+ ptr_iterator;
         typedef BOOST_DEDUCED_TYPENAME Cont::const_iterator
- ptr_const_iterator;
+ ptr_const_iterator;
     private:
 
- template< class InputIterator >
- void copy( InputIterator first, InputIterator last )
+ template< class InputIterator >
+ void copy( InputIterator first, InputIterator last )
         {
             std::copy( first, last, begin() );
         }
-
+
         void copy( const reversible_ptr_container& r )
- {
+ {
             copy( r.begin(), r.end() );
         }
-
+
         void copy_clones_and_release( scoped_deleter& sd ) // nothrow
         {
             BOOST_ASSERT( size_type( std::distance( sd.begin(), sd.end() ) ) == c_.size() );
             std::copy( sd.begin(), sd.end(), c_.begin() );
- sd.release();
+ sd.release();
         }
-
+
         void insert_clones_and_release( scoped_deleter& sd ) // strong
         {
             c_.insert( sd.begin(), sd.end() );
@@ -189,8 +189,8 @@
         }
 
         template< class ForwardIterator >
- void clone_assign( ForwardIterator first,
- ForwardIterator last ) // strong
+ void clone_assign( ForwardIterator first,
+ ForwardIterator last ) // strong
         {
             BOOST_ASSERT( first != last );
             scoped_deleter sd( first, last ); // strong
@@ -205,34 +205,34 @@
             scoped_deleter sd( first, last );
             insert_clones_and_release( sd, end() );
         }
-
- void remove_all()
+
+ void remove_all()
         {
- remove( begin(), end() );
+ remove( begin(), end() );
         }
 
     protected:
 
- void insert_clones_and_release( scoped_deleter& sd,
+ void insert_clones_and_release( scoped_deleter& sd,
                                         iterator where ) // strong
         {
             //
             // 'c_.insert' always provides the strong guarantee for T* elements
             // since a copy constructor of a pointer cannot throw
             //
- c_.insert( where.base(),
- sd.begin(), sd.end() );
+ c_.insert( where.base(),
+ sd.begin(), sd.end() );
             sd.release();
         }
 
         template< class I >
         void remove( I i )
- {
+ {
             null_policy_deallocate_clone( Config::get_const_pointer(i) );
         }
 
         template< class I >
- void remove( I first, I last )
+ void remove( I first, I last )
         {
             for( ; first != last; ++first )
                 remove( first );
@@ -242,7 +242,7 @@
         BOOST_DEDUCED_TYPENAME range_result_iterator<Range>::type
         adl_begin( Range& r )
         {
- #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
             return begin( r );
             #else
             using boost::begin;
@@ -254,14 +254,14 @@
         BOOST_DEDUCED_TYPENAME range_result_iterator<Range>::type
         adl_end( Range& r )
         {
- #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
             return end( r );
             #else
             using boost::end;
             return end( r );
             #endif
         }
-
+
         static void enforce_null_policy( Ty_* x, const char* msg )
         {
             if( !allow_null )
@@ -283,27 +283,27 @@
 
     private:
         template< class ForwardIterator >
- ForwardIterator advance( ForwardIterator begin, size_type n )
+ ForwardIterator advance( ForwardIterator begin, size_type n )
         {
             ForwardIterator iter = begin;
             std::advance( iter, n );
             return iter;
         }
-
+
     private:
         reversible_ptr_container( const reversible_ptr_container& );
         void operator=( const reversible_ptr_container& );
-
+
     public: // foundation! should be protected!
- explicit reversible_ptr_container( const allocator_type& a = allocator_type() )
+ explicit reversible_ptr_container( const allocator_type& a = allocator_type() )
          : c_( a )
         {}
-
+
         template< class PtrContainer >
         explicit reversible_ptr_container( std::auto_ptr<PtrContainer> clone )
- : c_( allocator_type() )
- {
- swap( *clone );
+ : c_( allocator_type() )
+ {
+ swap( *clone );
         }
 
     private:
@@ -330,13 +330,18 @@
         // overhead: null-initilization of container pointer (very cheap compared to cloning)
         // overhead: 1 heap allocation (very cheap compared to cloning)
         template< class InputIterator >
- reversible_ptr_container( InputIterator first,
+ reversible_ptr_container( InputIterator first,
                                   InputIterator last,
                                   const allocator_type& a = allocator_type() ) // basic, strong
         : c_( a )
- {
+ {
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ constructor_impl( first, last,
+ iterator_category<InputIterator>::type() );
+#else
             constructor_impl( first, last, BOOST_DEDUCED_TYPENAME
                               iterator_category<InputIterator>::type() );
+#endif
         }
 
         template< class Compare >
@@ -344,40 +349,40 @@
                                   const allocator_type& a )
         : c_( comp, a ) {}
 
- public:
+ public:
         ~reversible_ptr_container()
- {
+ {
             remove_all();
         }
-
+
         template< class PtrContainer >
- void operator=( std::auto_ptr<PtrContainer> clone )
+ void operator=( std::auto_ptr<PtrContainer> clone )
         {
             swap( *clone );
         }
 
     public:
-
- allocator_type get_allocator() const
+
+ allocator_type get_allocator() const
         {
- return c_.get_allocator();
+ return c_.get_allocator();
         }
-
+
     public: // container requirements
         iterator begin() { return iterator( c_.begin() ); }
         const_iterator begin() const { return const_iterator( c_.begin() ); }
         iterator end() { return iterator( c_.end() ); }
         const_iterator end() const { return const_iterator( c_.end() ); }
- reverse_iterator rbegin() { return reverse_iterator( c_.rbegin() ); }
- const_reverse_iterator rbegin() const { return const_reverse_iterator( c_.rbegin() ); }
- reverse_iterator rend() { return reverse_iterator( c_.rend() ); }
- const_reverse_iterator rend() const { return const_reverse_iterator( c_.rend() ); }
-
+ reverse_iterator rbegin() { return reverse_iterator( c_.rbegin() ); }
+ const_reverse_iterator rbegin() const { return const_reverse_iterator( c_.rbegin() ); }
+ reverse_iterator rend() { return reverse_iterator( c_.rend() ); }
+ const_reverse_iterator rend() const { return const_reverse_iterator( c_.rend() ); }
+
         void swap( reversible_ptr_container& r ) // notrow
- {
+ {
             c_.swap( r.c_ );
         }
-
+
         size_type size() const // nothrow
         {
             return c_.size();
@@ -385,9 +390,9 @@
 
         size_type max_size() const // nothrow
         {
- return c_.max_size();
+ return c_.max_size();
         }
-
+
         bool empty() const // nothrow
         {
             return c_.empty();
@@ -396,7 +401,7 @@
     public: // optional container requirements
 
         bool operator==( const reversible_ptr_container& r ) const // nothrow
- {
+ {
             if( size() != r.size() )
                 return false;
             else
@@ -407,23 +412,23 @@
         {
             return !(*this == r);
         }
-
- bool operator<( const reversible_ptr_container& r ) const // nothrow
+
+ bool operator<( const reversible_ptr_container& r ) const // nothrow
         {
              return std::lexicographical_compare( begin(), end(), r.begin(), r.end() );
         }
 
- bool operator<=( const reversible_ptr_container& r ) const // nothrow
+ bool operator<=( const reversible_ptr_container& r ) const // nothrow
         {
             return !(r < *this);
         }
 
- bool operator>( const reversible_ptr_container& r ) const // nothrow
+ bool operator>( const reversible_ptr_container& r ) const // nothrow
         {
             return r < *this;
         }
 
- bool operator>=( const reversible_ptr_container& r ) const // nothrow
+ bool operator>=( const reversible_ptr_container& r ) const // nothrow
         {
             return !(*this < r);
         }
@@ -440,20 +445,20 @@
             return res;
         }
 
- iterator erase( iterator x ) // nothrow
- {
+ iterator erase( iterator x ) // nothrow
+ {
             BOOST_ASSERT( !empty() );
             BOOST_ASSERT( x != end() );
-
- remove( x );
+
+ remove( x );
             return iterator( c_.erase( x.base() ) );
         }
-
- iterator erase( iterator first, iterator last ) // nothrow
+
+ iterator erase( iterator first, iterator last ) // nothrow
         {
             BOOST_ASSERT( !empty() );
- remove( first, last );
- return iterator( c_.erase( first.base(),
+ remove( first, last );
+ return iterator( c_.erase( first.base(),
                                        last.base() ) );
         }
 
@@ -462,66 +467,66 @@
         {
             return erase( adl_begin(r), adl_end(r) );
         }
-
- void clear()
- {
- remove_all();
+
+ void clear()
+ {
+ remove_all();
             c_.clear();
         }
-
+
     public: // access interface
-
+
         auto_type release( iterator where )
- {
+ {
             BOOST_ASSERT( where != end() );
             if( empty() )
- throw bad_ptr_container_operation( "'release()' on empty container" );
-
+ throw bad_ptr_container_operation( "'release()' on empty container" );
+
             auto_type ptr( Config::get_pointer( where ) ); // nothrow
             c_.erase( where.base() ); // nothrow
- return boost::ptr_container_detail::move( ptr );
+ return boost::ptr_container_detail::move( ptr );
         }
 
- auto_type replace( iterator where, Ty_* x ) // strong
- {
+ auto_type replace( iterator where, Ty_* x ) // strong
+ {
             BOOST_ASSERT( where != end() );
 
             enforce_null_policy( x, "Null pointer in 'replace()'" );
-
+
             auto_type ptr( x );
-
+
             if( empty() )
                 throw bad_ptr_container_operation( "'replace()' on empty container" );
 
             auto_type old( Config::get_pointer( where ) ); // nothrow
-
+
 //#if defined( __GNUC__ ) || defined( __MWERKS__ ) || defined( __COMO__ )
- const_cast<void*&>(*where.base()) = ptr.release();
+ const_cast<void*&>(*where.base()) = ptr.release();
 //#else
 // *where.base() = ptr.release(); // nothrow, commit
-//#endif
+//#endif
             return boost::ptr_container_detail::move( old );
         }
 
         auto_type replace( size_type idx, Ty_* x ) // strong
         {
             enforce_null_policy( x, "Null pointer in 'replace()'" );
-
- auto_type ptr( x );
-
- if( idx >= size() )
+
+ auto_type ptr( x );
+
+ if( idx >= size() )
                 throw bad_index( "'replace()' out of bounds" );
-
+
             auto_type old( static_cast<Ty_*>( c_[idx] ) ); // nothrow
             c_[idx] = ptr.release(); // nothrow, commit
             return boost::ptr_container_detail::move( old );
- }
-
+ }
+
     }; // 'reversible_ptr_container'
 
-
+
     //
- // two-phase lookup of template functions
+ // two-phase lookup of template functions
     // is buggy on most compilers, so we use a macro instead
     //
 #define BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( PC, base_type ) \
@@ -541,7 +546,10 @@
       return ptr; \
     } \
                                                     \
- using base_type::release; \
+ auto_type release(iterator where) \
+ { \
+ return base_type::release(where); \
+ } \
                                                     \
     std::auto_ptr<PC> clone() const \
     { \
@@ -556,16 +564,16 @@
     PC( const allocator_type& a = allocator_type() ) : base_type(a) {} \
     template< class InputIterator > \
     PC( InputIterator first, InputIterator last, \
- const allocator_type& a = allocator_type() ) : base_type( first, last, a ) {}
-
+ const allocator_type& a = allocator_type() ) : base_type( first, last, a ) {}
+
+
 
-
 #define BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( PC, base_type ) \
    BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( PC, base_type ) \
    BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( PC, base_type )
-
+
     } // namespace 'ptr_container_detail'
 
-} // namespace 'boost'
+} // namespace 'boost'
 
 #endif
Index: boost/ptr_container/ptr_array.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_array.hpp,v
retrieving revision 1.3
diff -u -r1.3 ptr_array.hpp
--- boost/ptr_container/ptr_array.hpp 1 May 2005 22:27:36 -0000 1.3
+++ boost/ptr_container/ptr_array.hpp 11 May 2005 08:34:52 -0000
@@ -27,7 +27,7 @@
     {
         template
         <
- class T,
+ class T,
             size_t N,
             class Allocator = int // dummy
>
@@ -35,32 +35,32 @@
         {
         public:
             typedef Allocator allocator_type;
-
- ptr_array_impl( Allocator a = Allocator() )
+
+ ptr_array_impl( Allocator a = Allocator() )
             {
- this->assign( 0 );
+ this->assign( 0 );
             }
-
+
             ptr_array_impl( size_t, T*, Allocator a = Allocator() )
             {
                 this->assing( 0 );
             }
         };
     }
-
+
     template
- <
- class T,
- size_t N,
+ <
+ class T,
+ size_t N,
         class CloneAllocator = heap_clone_allocator
>
- class ptr_array : public
- ptr_sequence_adapter< T,
+ class ptr_array : public
+ ptr_sequence_adapter< T,
                               ptr_container_detail::ptr_array_impl<void*,N>,
                               CloneAllocator >
- {
+ {
     private:
- typedef ptr_sequence_adapter< T,
+ typedef ptr_sequence_adapter< T,
                                       ptr_container_detail::ptr_array_impl<void*,N>,
                                       CloneAllocator >
             base_class;
@@ -69,36 +69,36 @@
 
         ptr_array( const ptr_array& );
         void operator=( const ptr_array& );
-
+
     public:
         typedef U* value_type;
         typedef U* pointer;
         typedef U& reference;
         typedef const U& const_reference;
- typedef BOOST_DEDUCED_TYPENAME base_class::auto_type
+ typedef BOOST_DEDUCED_TYPENAME base_class::auto_type
                           auto_type;
-
+
     public: // constructors
         ptr_array() : base_class()
         { }
-
- ptr_array( std::auto_ptr<ptr_array> r )
- : base_class( r ) { }
 
- void operator=( std::auto_ptr<ptr_array> r )
+ ptr_array( std::auto_ptr<ptr_array<T,N,CloneAllocator> > r )
+ : base_class( r ) { }
+
+ void operator=( std::auto_ptr<ptr_array<T,N,CloneAllocator> > r )
         {
             base_class::operator=(r);
         }
-
- std::auto_ptr<ptr_array> release()
- {
- std::auto_ptr<ptr_array> ptr( new ptr_array );
- this->swap( *ptr );
- return ptr;
- }
-
- std::auto_ptr<ptr_array> clone() const
- {
+
+ std::auto_ptr<ptr_array<T,N,CloneAllocator> > release()
+ {
+ std::auto_ptr<ptr_array> ptr( new ptr_array );
+ this->swap( *ptr );
+ return ptr;
+ }
+
+ std::auto_ptr<ptr_array<T,N,CloneAllocator> > clone() const
+ {
             std::auto_ptr<ptr_array> pa( new ptr_array );
             for( size_t i = 0; i != N; ++i )
             {
@@ -107,7 +107,7 @@
             }
             return pa;
         }
-
+
     private: // hide some members
         using base_class::insert;
         using base_class::erase;
@@ -117,7 +117,7 @@
         using base_class::pop_back;
         using base_class::transfer;
         using base_class::get_allocator;
-
+
     public: // compile-time interface
 
         template< size_t idx >
@@ -126,7 +126,7 @@
             BOOST_STATIC_ASSERT( idx < N );
 
             this->enforce_null_policy( r, "Null pointer in 'ptr_array::replace()'" );
-
+
             auto_type res( static_cast<U*>( this->c_private()[idx] ) ); // nothrow
             this->c_private()[idx] = r; // nothrow
             return move(res); // nothrow
@@ -152,21 +152,21 @@
         T& at()
         {
             BOOST_STATIC_ASSERT( idx < N );
- return (*this)[idx];
+ return (*this)[idx];
         }
 
         template< size_t idx >
         const T& at() const
         {
             BOOST_STATIC_ASSERT( idx < N );
- return (*this)[idx];
+ return (*this)[idx];
         }
 
         bool is_null( size_t idx ) const
         {
             return base_class::is_null(idx);
         }
-
+
         template< size_t idx >
         bool is_null() const
         {
Index: boost/ptr_container/ptr_deque.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_deque.hpp,v
retrieving revision 1.3
diff -u -r1.3 ptr_deque.hpp
--- boost/ptr_container/ptr_deque.hpp 10 May 2005 21:22:22 -0000 1.3
+++ boost/ptr_container/ptr_deque.hpp 11 May 2005 09:03:50 -0000
@@ -21,36 +21,40 @@
 
 namespace boost
 {
-
+
     template
- <
- class T,
+ <
+ class T,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator<void*>
>
- class ptr_deque : public
+ class ptr_deque : public
         ptr_sequence_adapter< T,
- std::deque<void*,Allocator>,
+ std::deque<void*,Allocator>,
                               CloneAllocator >
     {
          typedef ptr_sequence_adapter< T,
- std::deque<void*,Allocator>,
+ std::deque<void*,Allocator>,
                                          CloneAllocator >
           base_class;
 
+
     public:
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_deque<T,CloneAllocator,Allocator>,
- base_class );
-#else
- BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_deque,
+ typedef BOOST_DEDUCED_TYPENAME base_class::auto_type auto_type;
+
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_deque<T,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( this_type,
+ base_class );
+#else
+ BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_deque,
                                                         base_class );
 #endif
     };
 
     //////////////////////////////////////////////////////////////////////////////
     // clonability
-
+
     template< typename T, typename CA, typename A >
     inline ptr_deque<T,CA,A>* new_clone( const ptr_deque<T,CA,A>& r )
     {
Index: boost/ptr_container/ptr_list.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_list.hpp,v
retrieving revision 1.5
diff -u -r1.5 ptr_list.hpp
--- boost/ptr_container/ptr_list.hpp 10 May 2005 21:22:22 -0000 1.5
+++ boost/ptr_container/ptr_list.hpp 11 May 2005 08:41:03 -0000
@@ -23,31 +23,32 @@
 {
 
     template
- <
- class T,
+ <
+ class T,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator<void*>
>
- class ptr_list : public
- ptr_sequence_adapter< T,
- std::list<void*,Allocator>,
+ class ptr_list : public
+ ptr_sequence_adapter< T,
+ std::list<void*,Allocator>,
                               CloneAllocator >
     {
- typedef ptr_sequence_adapter< T,
- std::list<void*,Allocator>,
+ typedef ptr_sequence_adapter< T,
+ std::list<void*,Allocator>,
                                          CloneAllocator >
             base_class;
-
+
     public:
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_list<T,CloneAllocator,Allocator>,
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_list<T,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( this_type,
                                                           base_class );
-#else
+#else
 
- BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_list,
+ BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_list,
                                                           base_class );
 #endif
-
+
     public:
         void unique( iterator first, iterator last )
         {
@@ -72,25 +73,25 @@
         }
 
         using base_class::merge;
-
- void merge( ptr_list& x )
+
+ void merge( ptr_list& x )
         {
             merge( x, std::less<T>() );
         }
 
- template< typename Compare >
- void merge( ptr_list& x, Compare comp )
+ template< typename Compare >
+ void merge( ptr_list& x, Compare comp )
         {
             this->c_private().merge( x.c_private(), void_ptr_indirect_fun<Compare,T>( comp ) );
         }
 
- void sort()
- {
- sort( std::less<T>() );
+ void sort()
+ {
+ sort( std::less<T>() );
         };
 
- template< typename Compare >
- void sort( Compare comp )
+ template< typename Compare >
+ void sort( Compare comp )
         {
             this->c_private().sort( void_ptr_indirect_fun<Compare,T>( comp ) );
         }
@@ -105,7 +106,7 @@
     {
         return r.clone().release();
     }
-
+
     /////////////////////////////////////////////////////////////////////////
     // swap
 
Index: boost/ptr_container/ptr_map.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_map.hpp,v
retrieving revision 1.3
diff -u -r1.3 ptr_map.hpp
--- boost/ptr_container/ptr_map.hpp 10 May 2005 21:22:22 -0000 1.3
+++ boost/ptr_container/ptr_map.hpp 11 May 2005 08:39:06 -0000
@@ -21,75 +21,77 @@
 
 namespace boost
 {
-
+
     template
- <
- class Key,
- class T,
+ <
+ class Key,
+ class T,
         class Compare = std::less<Key>,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator< std::pair<const Key,void*> >
>
- class ptr_map :
+ class ptr_map :
         public ptr_map_adapter<T,std::map<Key,void*,Compare,Allocator>,CloneAllocator>
     {
         typedef ptr_map_adapter<T,std::map<Key,void*,Compare,Allocator>,CloneAllocator>
             base_type;
-
+
     public:
         explicit ptr_map( const Compare& comp = Compare(),
- const Allocator& a = Allocator() )
+ const Allocator& a = Allocator() )
           : base_type( comp, a ) { }
 
         template< class InputIterator >
- ptr_map( InputIterator first, InputIterator last,
+ ptr_map( InputIterator first, InputIterator last,
                  const Compare& comp = Compare(),
                  const Allocator& a = Allocator() )
- : base_type( first, last, comp, a )
+ : base_type( first, last, comp, a )
         { }
-
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_map<Key,T,Compare,CloneAllocator,Allocator>,
+
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_map<Key,T,Compare,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( this_type,
                                                       base_type );
-#else
+#else
         BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_map, base_type );
-#endif
+#endif
     };
-
+
 
 
     template
- <
- class Key,
- class T,
- class Compare = std::less<Key>,
+ <
+ class Key,
+ class T,
+ class Compare = std::less<Key>,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator< std::pair<const Key,void*> >
>
- class ptr_multimap :
+ class ptr_multimap :
         public ptr_multimap_adapter<T,std::multimap<Key,void*,Compare,Allocator>,CloneAllocator>
     {
         typedef ptr_multimap_adapter<T,std::multimap<Key,void*,Compare,Allocator>,CloneAllocator>
              base_type;
-
+
     public:
         explicit ptr_multimap( const Compare& comp = Compare(),
- const Allocator& a = Allocator() )
+ const Allocator& a = Allocator() )
           : base_type( comp, a ) { }
-
+
         template< class InputIterator >
         ptr_multimap( InputIterator first, InputIterator last,
                       const Compare& comp = Compare(),
                       const Allocator& a = Allocator() )
- : base_type( first, last, comp, a )
+ : base_type( first, last, comp, a )
         { }
 
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_multimap<Key,T,Compare,CloneAllocator,Allocator>,
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_multimap<Key,T,Compare,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( this_type,
                                                       base_type );
-#else
+#else
 
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_multimap,
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_multimap,
                                                       base_type );
 #endif
     };
Index: boost/ptr_container/ptr_map_adapter.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_map_adapter.hpp,v
retrieving revision 1.9
diff -u -r1.9 ptr_map_adapter.hpp
--- boost/ptr_container/ptr_map_adapter.hpp 10 May 2005 21:22:22 -0000 1.9
+++ boost/ptr_container/ptr_map_adapter.hpp 11 May 2005 08:36:11 -0000
@@ -27,7 +27,7 @@
 {
 
     template
- <
+ <
         class T,
         class VoidPtrMap
>
@@ -35,32 +35,32 @@
     {
         typedef BOOST_DEDUCED_TYPENAME remove_nullable<T>::type
                      U;
- typedef VoidPtrMap
+ typedef VoidPtrMap
                      void_container_type;
-
+
         typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::allocator_type
                      allocator_type;
-
+
         typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::key_compare
                      key_compare;
-
+
         typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::value_compare
                      value_compare;
-
+
         typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::key_type
                      key_type;
-
+
         typedef U value_type;
 
- typedef ptr_map_iterator<
+ typedef ptr_map_iterator<
                        BOOST_DEDUCED_TYPENAME VoidPtrMap::iterator,
                        BOOST_DEDUCED_TYPENAME VoidPtrMap::key_type, value_type>
                      iterator;
-
+
         typedef
             ptr_map_iterator<
                        BOOST_DEDUCED_TYPENAME VoidPtrMap::const_iterator,
- BOOST_DEDUCED_TYPENAME VoidPtrMap::key_type,
+ BOOST_DEDUCED_TYPENAME VoidPtrMap::key_type,
                        const value_type>
                      const_iterator;
 
@@ -73,7 +73,7 @@
         typedef
             ptr_map_iterator<
                        BOOST_DEDUCED_TYPENAME VoidPtrMap::const_reverse_iterator,
- BOOST_DEDUCED_TYPENAME VoidPtrMap::key_type,
+ BOOST_DEDUCED_TYPENAME VoidPtrMap::key_type,
                        const value_type>
                      const_reverse_iterator;
 
@@ -94,23 +94,23 @@
 
         BOOST_STATIC_CONSTANT( bool, allow_null = boost::is_nullable<T>::value );
     };
-
-
+
+
 
     template
- <
+ <
         class T,
- class VoidPtrMap,
+ class VoidPtrMap,
         class CloneAllocator
>
- class ptr_map_adapter_base :
+ class ptr_map_adapter_base :
         public ptr_container_detail::associative_ptr_container< map_config<T,VoidPtrMap>,
                                                     CloneAllocator >
     {
         typedef ptr_container_detail::associative_ptr_container< map_config<T,VoidPtrMap>,
- CloneAllocator >
+ CloneAllocator >
             base_type;
-
+
     public:
 
         typedef BOOST_DEDUCED_TYPENAME base_type::const_iterator
@@ -131,7 +131,7 @@
                                           ->find( key );
            if( i != const_cast<ptr_map_adapter_base*>(this)->end() )
                return *i;
- else
+ else
                throw bad_ptr_container_operation( "'ptr_map/multimap::at()' could"
                                                     " not find key" );
         }
@@ -144,16 +144,16 @@
                 VoidPtrMap* m_;
                 const key_type& key_;
 
- eraser( VoidPtrMap* m, const key_type& key )
+ eraser( VoidPtrMap* m, const key_type& key )
                   : released_(false), m_(m), key_(key)
                 {}
-
- ~eraser()
+
+ ~eraser()
                 {
                     if( !released_ )
                         m_->erase(key_);
                 }
-
+
                 void release() { released_ = true; }
             };
 
@@ -166,106 +166,107 @@
             else
             {
                 eraser e(&this->c_private(),key); // nothrow
- value_type res = new T(); // strong
+ value_type res = new T(); // strong
                 ref = res; // nothrow
                 e.release(); // nothrow
                 return *res;
             }
           }
-
+
     public:
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( ptr_map_adapter_base<T,VoidPtrMap,CloneAllocator>,
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_map_adapter_base<T,VoidPtrMap,CloneAllocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( this_type,
                                                  base_type );
-#else
- BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( ptr_map_adapter_base,
+#else
+ BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( ptr_map_adapter_base,
                                                  base_type );
 #endif
         template< class Compare, class Allocator >
         explicit ptr_map_adapter_base( const Compare& comp,
- const Allocator& a )
- : base_type( comp, a )
+ const Allocator& a )
+ : base_type( comp, a )
         { }
 
         template< class PtrContainer >
- ptr_map_adapter_base( std::auto_ptr<PtrContainer> clone )
+ ptr_map_adapter_base( std::auto_ptr<PtrContainer> clone )
         : base_type( clone )
         { }
-
+
         template< typename PtrContainer >
- void operator=( std::auto_ptr<PtrContainer> clone )
+ void operator=( std::auto_ptr<PtrContainer> clone )
         {
             base_type::operator=( clone );
- }
+ }
+
+ iterator find( const key_type& x )
+ {
+ return iterator( this->c_private().find( x ) );
+ }
+
+ const_iterator find( const key_type& x ) const
+ {
+ return const_iterator( this->c_private().find( x ) );
+ }
+
+ size_type count( const key_type& x ) const
+ {
+ return this->c_private().count( x );
+ }
+
+ iterator lower_bound( const key_type& x )
+ {
+ return iterator( this->c_private().lower_bound( x ) );
+ }
+
+ const_iterator lower_bound( const key_type& x ) const
+ {
+ return const_iterator( this->c_private().lower_bound( x ) );
+ }
+
+ iterator upper_bound( const key_type& x )
+ {
+ return iterator( this->c_private().upper_bound( x ) );
+ }
 
- iterator find( const key_type& x )
- {
- return iterator( this->c_private().find( x ) );
- }
-
- const_iterator find( const key_type& x ) const
- {
- return const_iterator( this->c_private().find( x ) );
- }
-
- size_type count( const key_type& x ) const
- {
- return this->c_private().count( x );
- }
-
- iterator lower_bound( const key_type& x )
- {
- return iterator( this->c_private().lower_bound( x ) );
- }
-
- const_iterator lower_bound( const key_type& x ) const
- {
- return const_iterator( this->c_private().lower_bound( x ) );
- }
-
- iterator upper_bound( const key_type& x )
- {
- return iterator( this->c_private().upper_bound( x ) );
- }
-
- const_iterator upper_bound( const key_type& x ) const
- {
- return const_iterator( this->c_private().upper_bound( x ) );
- }
-
- iterator_range<iterator> equal_range( const key_type& x )
- {
+ const_iterator upper_bound( const key_type& x ) const
+ {
+ return const_iterator( this->c_private().upper_bound( x ) );
+ }
+
+ iterator_range<iterator> equal_range( const key_type& x )
+ {
             std::pair<BOOST_DEDUCED_TYPENAME base_type::ptr_iterator,
                       BOOST_DEDUCED_TYPENAME base_type::ptr_iterator>
- p = this->c_private().equal_range( x );
- return make_iterator_range( iterator( p.first ), iterator( p.second ) );
- }
-
- iterator_range<const_iterator> equal_range( const key_type& x ) const
- {
+ p = this->c_private().equal_range( x );
+ return make_iterator_range( iterator( p.first ), iterator( p.second ) );
+ }
+
+ iterator_range<const_iterator> equal_range( const key_type& x ) const
+ {
             std::pair<BOOST_DEDUCED_TYPENAME base_type::ptr_const_iterator,
- BOOST_DEDUCED_TYPENAME base_type::ptr_const_iterator>
- p = this->c_private().equal_range( x );
- return make_iterator_range( const_iterator( p.first ), const_iterator( p.second ) );
- }
-
- reference at( const key_type& key )
- {
- return lookup( key );
- }
-
- const_reference at( const key_type& key ) const
- {
+ BOOST_DEDUCED_TYPENAME base_type::ptr_const_iterator>
+ p = this->c_private().equal_range( x );
+ return make_iterator_range( const_iterator( p.first ), const_iterator( p.second ) );
+ }
+
+ reference at( const key_type& key )
+ {
             return lookup( key );
         }
 
- reference operator[]( const key_type& key )
- {
+ const_reference at( const key_type& key ) const
+ {
+ return lookup( key );
+ }
+
+ reference operator[]( const key_type& key )
+ {
             return insert_lookup( key );
- }
+ }
 
- auto_type replace( iterator where, value_type x ) // strong
- {
+ auto_type replace( iterator where, value_type x ) // strong
+ {
             BOOST_ASSERT( where != this->end() );
 
             this->enforce_null_policy( x, "Null pointer in 'replace()'" );
@@ -279,30 +280,30 @@
             where.base()->second = ptr.release(); // nothrow, commit
             return move( old );
         }
-
+
     };
-
+
 } // ptr_container_detail
 
     /////////////////////////////////////////////////////////////////////////
     // ptr_map_adapter
     /////////////////////////////////////////////////////////////////////////
-
+
     template
- <
+ <
         class T,
- class VoidPtrMap,
+ class VoidPtrMap,
         class CloneAllocator = heap_clone_allocator
>
- class ptr_map_adapter :
+ class ptr_map_adapter :
         public ptr_container_detail::ptr_map_adapter_base<T,VoidPtrMap,CloneAllocator>
     {
- typedef ptr_container_detail::ptr_map_adapter_base<T,VoidPtrMap,CloneAllocator>
+ typedef ptr_container_detail::ptr_map_adapter_base<T,VoidPtrMap,CloneAllocator>
             base_type;
-
- public:
- typedef BOOST_DEDUCED_TYPENAME base_type::iterator
- iterator;
+
+ public:
+ typedef BOOST_DEDUCED_TYPENAME base_type::iterator
+ iterator;
         typedef BOOST_DEDUCED_TYPENAME base_type::const_iterator
                      const_iterator;
         typedef BOOST_DEDUCED_TYPENAME base_type::object_type
@@ -315,9 +316,9 @@
                     const_reference;
         typedef BOOST_DEDUCED_TYPENAME base_type::auto_type
                     auto_type;
- typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::key_compare
+ typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::key_compare
                     key_compare;
- typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::allocator_type
+ typedef BOOST_DEDUCED_TYPENAME VoidPtrMap::allocator_type
                     allocator_type;
         typedef BOOST_DEDUCED_TYPENAME base_type::value_type
                     value_type;
@@ -326,41 +327,41 @@
         void safe_insert( const key_type& key, auto_type ptr ) // strong
         {
             std::pair<BOOST_DEDUCED_TYPENAME base_type::ptr_iterator,bool>
- res =
- this->c_private().insert( std::make_pair( key, ptr.get() ) ); // strong, commit
- if( res.second ) // nothrow
+ res =
+ this->c_private().insert( std::make_pair( key, ptr.get() ) ); // strong, commit
+ if( res.second ) // nothrow
                 ptr.release(); // nothrow
         }
-
- template< class II >
- void map_basic_clone_and_insert( II first, II last )
- {
- while( first != last )
- {
+
+ template< class II >
+ void map_basic_clone_and_insert( II first, II last )
+ {
+ while( first != last )
+ {
                 if( this->find( first.key() ) == this->end() )
                 {
- const object_type& p = *first.base(); // nothrow
+ const object_type& p = *first.base(); // nothrow
                     auto_type ptr( this->null_policy_allocate_clone(
- static_cast<value_type>(p.second) ) );
- // strong
+ static_cast<value_type>(p.second) ) );
+ // strong
                     this->safe_insert( p.first, ptr_container_detail::
                                                 move( ptr ) );// strong, commit
                 }
- ++first;
- }
+ ++first;
+ }
         }
-
+
     public:
 
         explicit ptr_map_adapter( const key_compare& comp = key_compare(),
- const allocator_type& a = allocator_type() )
+ const allocator_type& a = allocator_type() )
           : base_type( comp, a ) { }
-
+
         template< class InputIterator >
- ptr_map_adapter( InputIterator first, InputIterator last,
+ ptr_map_adapter( InputIterator first, InputIterator last,
                          const key_compare& comp = key_compare(),
                          const allocator_type& a = allocator_type() )
- : base_type( comp, a )
+ : base_type( comp, a )
         {
             map_basic_clone_and_insert( first, last );
         }
@@ -371,7 +372,7 @@
 
         template< class U >
         void operator=( std::auto_ptr<U> r )
- {
+ {
             base_type::operator=( r );
         }
 
@@ -393,29 +394,29 @@
         {
             this->enforce_null_policy( x, "Null pointer in ptr_map_adapter::insert()" );
             auto_type ptr( x ); // nothrow
-
+
             std::pair<BOOST_DEDUCED_TYPENAME base_type::ptr_iterator,bool>
- res = this->c_private().insert( std::make_pair( key, x ) ); // strong, commit
- if( res.second ) // nothrow
+ res = this->c_private().insert( std::make_pair( key, x ) ); // strong, commit
+ if( res.second ) // nothrow
                 ptr.release(); // nothrow
- return std::make_pair( iterator( res.first ), res.second ); // nothrow
+ return std::make_pair( iterator( res.first ), res.second ); // nothrow
         }
 
- bool transfer( iterator object,
+ bool transfer( iterator object,
                        ptr_map_adapter& from ) // strong
         {
             return this->single_transfer( object, from );
         }
 
- size_type transfer( iterator first,
- iterator last,
+ size_type transfer( iterator first,
+ iterator last,
                             ptr_map_adapter& from ) // basic
         {
             return this->single_transfer( first, last, from );
         }
 
 #ifdef BOOST_NO_SFINAE
-#else
+#else
 
         template< class Range >
         BOOST_DEDUCED_TYPENAME boost::disable_if< boost::is_same< Range,
@@ -425,39 +426,39 @@
         {
             return transfer( this->adl_begin(r), this->adl_end(r), from );
         }
-
+
 #endif
 
         size_type transfer( ptr_map_adapter& from ) // basic
         {
             return transfer( from.begin(), from.end(), from );
         }
-
+
   };
-
+
   /////////////////////////////////////////////////////////////////////////
   // ptr_multimap_adapter
   /////////////////////////////////////////////////////////////////////////
 
     template
- <
+ <
         class T,
- class VoidPtrMultiMap,
+ class VoidPtrMultiMap,
         class CloneAllocator = heap_clone_allocator
>
- class ptr_multimap_adapter :
+ class ptr_multimap_adapter :
         public ptr_container_detail::ptr_map_adapter_base<T,VoidPtrMultiMap,CloneAllocator>
     {
         typedef ptr_container_detail::ptr_map_adapter_base<T,VoidPtrMultiMap,CloneAllocator>
              base_type;
-
+
     public: // typedefs
- typedef BOOST_DEDUCED_TYPENAME base_type::iterator
- iterator;
- typedef BOOST_DEDUCED_TYPENAME base_type::const_iterator
- const_iterator;
+ typedef BOOST_DEDUCED_TYPENAME base_type::iterator
+ iterator;
+ typedef BOOST_DEDUCED_TYPENAME base_type::const_iterator
+ const_iterator;
         typedef BOOST_DEDUCED_TYPENAME base_type::object_type
- object_type;
+ object_type;
         typedef BOOST_DEDUCED_TYPENAME base_type::size_type
                        size_type;
         typedef BOOST_DEDUCED_TYPENAME base_type::key_type
@@ -467,41 +468,41 @@
         typedef BOOST_DEDUCED_TYPENAME base_type::value_type
                     value_type;
         typedef BOOST_DEDUCED_TYPENAME base_type::auto_type
- auto_type;
- typedef BOOST_DEDUCED_TYPENAME VoidPtrMultiMap::key_compare
+ auto_type;
+ typedef BOOST_DEDUCED_TYPENAME VoidPtrMultiMap::key_compare
                     key_compare;
- typedef BOOST_DEDUCED_TYPENAME VoidPtrMultiMap::allocator_type
+ typedef BOOST_DEDUCED_TYPENAME VoidPtrMultiMap::allocator_type
                     allocator_type;
     private:
 
         void safe_insert( const key_type& key, auto_type ptr ) // strong
         {
- this->c_private().insert(
- std::make_pair( key, ptr.get() ) ); // strong, commit
+ this->c_private().insert(
+ std::make_pair( key, ptr.get() ) ); // strong, commit
             ptr.release(); // nothrow
         }
-
- template< typename II >
- void map_basic_clone_and_insert( II first, II last )
- {
- while( first != last )
- {
- const object_type& pair = *first.base(); // nothrow
+
+ template< typename II >
+ void map_basic_clone_and_insert( II first, II last )
+ {
+ while( first != last )
+ {
+ const object_type& pair = *first.base(); // nothrow
                 auto_type ptr( this->null_policy_allocate_clone(
- static_cast<value_type>( pair.second ) ) );
+ static_cast<value_type>( pair.second ) ) );
                                                           // strong
                 safe_insert( pair.first, ptr_container_detail::
                                          move( ptr ) ); // strong, commit
- ++first;
- }
+ ++first;
+ }
         }
-
+
     public:
-
+
         explicit ptr_multimap_adapter( const key_compare& comp = key_compare(),
                                        const allocator_type& a = allocator_type() )
           : base_type( comp, a ) { }
-
+
         template< class InputIterator >
         ptr_multimap_adapter( InputIterator first, InputIterator last,
                               const key_compare& comp = key_compare(),
@@ -517,12 +518,12 @@
 
         template< class U >
         void operator=( std::auto_ptr<U> r )
- {
+ {
             base_type::operator=( r );
         }
 
         using base_type::release;
-
+
         template< typename InputIterator >
         void insert( InputIterator first, InputIterator last ) // basic
         {
@@ -542,27 +543,27 @@
             auto_type ptr( x ); // nothrow
             BOOST_DEDUCED_TYPENAME base_type::ptr_iterator
                 res = this->c_private().insert( std::make_pair( key, x ) );
- // strong, commit
+ // strong, commit
             ptr.release(); // notrow
- return iterator( res );
+ return iterator( res );
         }
 
-
- void transfer( iterator object,
+
+ void transfer( iterator object,
                        ptr_multimap_adapter& from ) // strong
         {
             this->multi_transfer( object, from );
         }
 
- size_type transfer( iterator first,
- iterator last,
+ size_type transfer( iterator first,
+ iterator last,
                             ptr_multimap_adapter& from ) // basic
         {
             return this->multi_transfer( first, last, from );
         }
 
 #ifdef BOOST_NO_SFINAE
-#else
+#else
 
         template< class Range >
         BOOST_DEDUCED_TYPENAME boost::disable_if< boost::is_same< Range,
@@ -573,7 +574,7 @@
             return transfer( this->adl_begin(r), this->adl_end(r), from );
         }
 
-#endif
+#endif
 
         void transfer( ptr_multimap_adapter& from ) // basic
         {
@@ -587,7 +588,7 @@
     {
         return i.base()->second == 0;
     }
-
-} // namespace 'boost'
+
+} // namespace 'boost'
 
 #endif
Index: boost/ptr_container/ptr_sequence_adapter.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_sequence_adapter.hpp,v
retrieving revision 1.16
diff -u -r1.16 ptr_sequence_adapter.hpp
--- boost/ptr_container/ptr_sequence_adapter.hpp 10 May 2005 21:22:22 -0000 1.16
+++ boost/ptr_container/ptr_sequence_adapter.hpp 11 May 2005 09:06:12 -0000
@@ -29,13 +29,13 @@
 #include <iostream>
 
 namespace boost
-{
+{
 namespace ptr_container_detail
 {
-
+
     template
- <
- class T,
+ <
+ class T,
         class VoidPtrSeq
>
     struct sequence_config
@@ -47,26 +47,26 @@
 
         typedef BOOST_DEDUCED_TYPENAME VoidPtrSeq::allocator_type
                     allocator_type;
-
+
         typedef U value_type;
 
         typedef void_ptr_iterator<
- BOOST_DEDUCED_TYPENAME VoidPtrSeq::iterator, U >
+ BOOST_DEDUCED_TYPENAME VoidPtrSeq::iterator, U >
                     iterator;
-
+
         typedef void_ptr_iterator<
                         BOOST_DEDUCED_TYPENAME VoidPtrSeq::const_iterator, const U >
                     const_iterator;
-
+
         typedef void_ptr_iterator<
                        BOOST_DEDUCED_TYPENAME VoidPtrSeq::reverse_iterator, U >
                    reverse_iterator;
-
+
         typedef void_ptr_iterator<
                        BOOST_DEDUCED_TYPENAME VoidPtrSeq::const_reverse_iterator, const U >
                    const_reverse_iterator;
-
- typedef value_type
+
+ typedef value_type
                    object_type;
 
 #ifdef BOOST_NO_SFINAE
@@ -76,7 +76,7 @@
         {
             return static_cast<U*>( *i.base() );
         }
-
+
 #else
         template< class Iter >
         static U* get_pointer( void_ptr_iterator<Iter,U> i )
@@ -89,7 +89,7 @@
         {
             return &*i;
         }
-#endif
+#endif
 
 #ifdef BOOST_NO_SFINAE
 
@@ -98,7 +98,7 @@
         {
             return static_cast<const U*>( *i.base() );
         }
-
+
 #else // BOOST_NO_SFINAE
 
 #if BOOST_WORKAROUND(__MWERKS__, <= 0x3003)
@@ -107,7 +107,7 @@
         {
             return static_cast<const U*>( *i.base() );
         }
-#else
+#else
         template< class Iter >
         static const U* get_const_pointer( void_ptr_iterator<Iter,const U> i )
         {
@@ -124,7 +124,7 @@
 
         BOOST_STATIC_CONSTANT(bool, allow_null = boost::is_nullable<T>::value );
     };
-
+
 } // ptr_container_detail
 
 
@@ -135,43 +135,44 @@
     }
 
 
-
+
     template
- <
+ <
         class T,
- class VoidPtrSeq,
+ class VoidPtrSeq,
         class CloneAllocator = heap_clone_allocator
>
- class ptr_sequence_adapter : public
- ptr_container_detail::reversible_ptr_container< ptr_container_detail::sequence_config<T,VoidPtrSeq>,
+ class ptr_sequence_adapter : public
+ ptr_container_detail::reversible_ptr_container< ptr_container_detail::sequence_config<T,VoidPtrSeq>,
                                             CloneAllocator >
     {
         typedef ptr_container_detail::reversible_ptr_container< ptr_container_detail::sequence_config<T,VoidPtrSeq>,
                                                     CloneAllocator >
              base_type;
-
+
         typedef BOOST_DEDUCED_TYPENAME base_type::scoped_deleter scoped_deleter;
-
+
     public:
- typedef BOOST_DEDUCED_TYPENAME base_type::value_type value_type;
- typedef BOOST_DEDUCED_TYPENAME base_type::reference reference;
- typedef BOOST_DEDUCED_TYPENAME base_type::auto_type auto_type;
-
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( ptr_sequence_adapter<T,VoidPtrSeq,CloneAllocator>,
+ typedef BOOST_DEDUCED_TYPENAME base_type::value_type value_type;
+ typedef BOOST_DEDUCED_TYPENAME base_type::reference reference;
+ typedef BOOST_DEDUCED_TYPENAME base_type::auto_type auto_type;
+
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_sequence_adapter<T,VoidPtrSeq,CloneAllocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( this_type,
                                                    base_type )
 #else
- BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( ptr_sequence_adapter,
+ BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( ptr_sequence_adapter,
                                                    base_type )
-#endif
-
+#endif
+
         template< class PtrContainer >
         ptr_sequence_adapter( std::auto_ptr<PtrContainer> clone )
           : base_type( clone )
         { }
 
         template< class PtrContainer >
- void operator=( std::auto_ptr<PtrContainer> clone )
+ void operator=( std::auto_ptr<PtrContainer> clone )
         {
             base_type::operator=( clone );
         }
@@ -180,7 +181,7 @@
         // modifiers
         /////////////////////////////////////////////////////////////
 
- void push_back( value_type x ) // strong
+ void push_back( value_type x ) // strong
         {
             this->enforce_null_policy( x, "Null pointer in 'push_back()'" );
 
@@ -189,21 +190,21 @@
             ptr.release(); // nothrow
         }
 
- void push_front( value_type x )
+ void push_front( value_type x )
         {
             this->enforce_null_policy( x, "Null pointer in 'push_front()'" );
 
             auto_type ptr( x ); // nothrow
             this->c_private().push_front( x ); // strong, commit
             ptr.release(); // nothrow
- }
+ }
 
         auto_type pop_back()
         {
- if( this->empty() )
+ if( this->empty() )
                 throw bad_ptr_container_operation( "'pop_back()' "
                                                      " on empty container" );
- auto_type ptr( static_cast<value_type>(
+ auto_type ptr( static_cast<value_type>(
                          this->c_private().back() ) ); // nothrow
             this->c_private().pop_back(); // nothrow
             return ptr_container_detail::move( ptr ); // nothrow
@@ -211,28 +212,28 @@
 
         auto_type pop_front()
         {
- if( this->empty() )
- throw bad_ptr_container_operation( "'pop_front()' on"
- " empty container" );
- auto_type ptr( this->c_private().front() ); // nothrow
+ if( this->empty() )
+ throw bad_ptr_container_operation( "'pop_front()' on"
+ " empty container" );
+ auto_type ptr( this->c_private().front() ); // nothrow
             this->c_private().pop_front(); // nothrow
- return ptr_container_detail::move( ptr );
+ return ptr_container_detail::move( ptr );
         }
-
- reference front()
- {
+
+ reference front()
+ {
             BOOST_ASSERT( !::boost::is_null( this->begin() ) );
             if( this->empty() )
                 throw bad_ptr_container_operation( "accessing 'front()' on empty container" );
- return *this->begin();
+ return *this->begin();
         }
 
- const_reference front() const
+ const_reference front() const
         {
             BOOST_ASSERT( !::boost::is_null( this->begin() ) );
             if( this->empty() )
                 throw bad_ptr_container_operation( "accessing 'front()' on empty container" );
- return *this->begin();
+ return *this->begin();
         }
 
         reference back()
@@ -240,7 +241,7 @@
             BOOST_ASSERT( !::boost::is_null( --this->end() ) );
             if( this->empty() )
                 throw bad_ptr_container_operation( "accessing 'back()' on empty container" );
- return *--this->end();
+ return *--this->end();
         }
 
         const_reference back() const
@@ -248,25 +249,25 @@
             BOOST_ASSERT( !::boost::is_null( --this->end() ) );
             if( this->empty() )
                 throw bad_ptr_container_operation( "accessing 'back()' on empty container" );
- return *--this->end();
+ return *--this->end();
         }
 
     public: // deque/vector inerface
-
- reference operator[]( size_type n ) // nothrow
+
+ reference operator[]( size_type n ) // nothrow
         {
             BOOST_ASSERT( n < this->size() );
             BOOST_ASSERT( !this->is_null( n ) );
- return *static_cast<value_type>( this->c_private()[n] );
+ return *static_cast<value_type>( this->c_private()[n] );
         }
-
- const_reference operator[]( size_type n ) const // nothrow
- {
- BOOST_ASSERT( n < this->size() );
+
+ const_reference operator[]( size_type n ) const // nothrow
+ {
+ BOOST_ASSERT( n < this->size() );
             BOOST_ASSERT( !this->is_null( n ) );
             return *static_cast<value_type>( this->c_private()[n] );
         }
-
+
         reference at( size_type n )
         {
             if( n >= this->size() )
@@ -274,30 +275,30 @@
             BOOST_ASSERT( !this->is_null( n ) );
             return (*this)[n];
         }
-
+
         const_reference at( size_type n ) const
         {
             if( n >= this->size() )
                 throw bad_index( "'at()' out of bounds" );
             BOOST_ASSERT( !this->is_null( n ) );
- return (*this)[n];
+ return (*this)[n];
         }
-
+
     public: // vector interface
-
+
         size_type capacity() const
         {
             return this->c_private().capacity();
         }
-
+
         void reserve( size_type n )
         {
- this->c_private().reserve( n );
+ this->c_private().reserve( n );
         }
 
         void reverse()
         {
- this->c_private().reverse();
+ this->c_private().reverse();
         }
 
     public: // assign, insert, transfer
@@ -305,7 +306,7 @@
         // overhead: 1 heap allocation (very cheap compared to cloning)
         template< class InputIterator >
         void assign( InputIterator first, InputIterator last ) // strong
- {
+ {
             base_type temp( first, last );
             this->swap( temp );
         }
@@ -327,22 +328,27 @@
         template< class I >
         void insert_impl( iterator before, I first, I last, std::forward_iterator_tag ) // strong
         {
- if( first == last )
+ if( first == last )
                 return;
             scoped_deleter sd( first, last ); // strong
- this->insert_clones_and_release( sd, before ); // strong, commit
+ this->insert_clones_and_release( sd, before ); // strong, commit
         }
 
     public:
 
         using base_type::insert;
-
+
         template< class InputIterator >
         void insert( iterator before, InputIterator first, InputIterator last ) // strong
         {
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ insert_impl( before, first, last,
+ iterator_category<InputIterator>::type() );
+#else
             insert_impl( before, first, last, BOOST_DEDUCED_TYPENAME
                          iterator_category<InputIterator>::type() );
- }
+#endif
+ }
 
 #ifdef BOOST_NO_SFINAE
 #else
@@ -356,23 +362,23 @@
 
 #endif
 
- void transfer( iterator before,
- iterator first,
- iterator last,
+ void transfer( iterator before,
+ iterator first,
+ iterator last,
                        ptr_sequence_adapter& from ) // strong
         {
             BOOST_ASSERT( &from != this );
             if( from.empty() )
                 return;
             this->c_private().
- insert( before.base(),
+ insert( before.base(),
                         first.base(), last.base() ); // strong
             from.c_private().erase( first.base(),
                                     last.base() ); // nothrow
         }
 
- void transfer( iterator before,
- iterator object,
+ void transfer( iterator before,
+ iterator object,
                        ptr_sequence_adapter& from ) // strong
         {
             BOOST_ASSERT( &from != this );
@@ -386,7 +392,7 @@
 
 #ifdef BOOST_NO_SFINAE
 #else
-
+
         template< class Range >
         BOOST_DEDUCED_TYPENAME boost::disable_if< boost::is_same< Range,
                                                                   iterator > >::type
@@ -396,7 +402,7 @@
         }
 
 #endif
-
+
         void transfer( iterator before, ptr_sequence_adapter& from ) // strong
         {
             BOOST_ASSERT( &from != this );
@@ -409,7 +415,7 @@
         }
 
     public: // null functions
-
+
         bool is_null( size_type idx ) const
         {
             BOOST_ASSERT( idx < this->size() );
@@ -422,7 +428,7 @@
         {
             sort( first, last, std::less<T>() );
         }
-
+
         void sort()
         {
             sort( this->begin(), this->end() );
@@ -433,23 +439,23 @@
         {
             BOOST_ASSERT( first <= last && "out of range sort()" );
             BOOST_ASSERT( this->begin() <= first && "out of range sort()" );
- BOOST_ASSERT( last <= this->end() && "out of range sort()" );
+ BOOST_ASSERT( last <= this->end() && "out of range sort()" );
             // some static assert on the arguments of the comparison
- std::sort( first.base(), last.base(),
+ std::sort( first.base(), last.base(),
                        void_ptr_indirect_fun<Compare,T>(comp) );
         }
-
+
         template< class Compare >
         void sort( Compare comp )
         {
             sort( this->begin(), this->end(), comp );
         }
-
+
         void unique( iterator first, iterator last )
         {
             unique( first, last, std::equal_to<T>() );
         }
-
+
         void unique()
         {
             unique( this->begin(), this->end() );
@@ -467,26 +473,26 @@
 
         void compact_and_erase_nulls( iterator first, iterator last ) // nothrow
         {
-
- typename base_type::ptr_iterator p = std::stable_partition(
- first.base(),
- last.base(),
+
+ typename base_type::ptr_iterator p = std::stable_partition(
+ first.base(),
+ last.base(),
                                                     is_not_zero_ptr() );
             this->c_private().erase( p, this->end().base() );
-
+
         }
-
+
     public:
-
+
         template< class Compare >
         void unique( iterator first, iterator last, Compare comp )
         {
             BOOST_ASSERT( first <= last && "out of range unique()" );
             BOOST_ASSERT( this->begin() <= first && "out of range unique()" );
- BOOST_ASSERT( last <= this->end() && "out of range unique()" );
+ BOOST_ASSERT( last <= this->end() && "out of range unique()" );
 
             iterator prev = first;
- iterator next = first + 1;
+ iterator next = first + 1;
             for( ; next != last; ++next )
             {
                 if( comp( *prev, *next ) )
@@ -503,7 +509,7 @@
 
             compact_and_erase_nulls( first, last );
         }
-
+
         template< class Compare >
         void unique( Compare comp )
         {
@@ -515,22 +521,22 @@
         {
             BOOST_ASSERT( first <= last && "out of range unique()" );
             BOOST_ASSERT( this->begin() <= first && "out of range unique()" );
- BOOST_ASSERT( last <= this->end() && "out of range unique()" );
+ BOOST_ASSERT( last <= this->end() && "out of range unique()" );
 
- iterator next = first;
+ iterator next = first;
             for( ; next != last; ++next )
             {
                 if( pred( *next ) )
                 {
                     this->remove( next ); // delete object
                     *next.base() = 0; // mark pointer as deleted
- std::cout << " deleting ";
+ std::cout << " deleting ";
                 }
             }
 
             compact_and_erase_nulls( first, last );
         }
-
+
         template< class Pred >
         void erase_if( Pred pred )
         {
@@ -538,43 +544,43 @@
         }
 
 
- void merge( iterator first, iterator last,
+ void merge( iterator first, iterator last,
                     ptr_sequence_adapter& from )
         {
              merge( first, last, from, std::less<T>() );
         }
-
+
         template< class BinPred >
- void merge( iterator first, iterator last,
+ void merge( iterator first, iterator last,
                     ptr_sequence_adapter& from, BinPred pred )
         {
             void_ptr_indirect_fun<BinPred,T> bin_pred(pred);
- size_type current_size = this->size();
+ size_type current_size = this->size();
             this->transfer( this->end(), first, last, from );
             typename base_type::ptr_iterator middle = this->begin().base();
- std::advance(middle,current_size);
+ std::advance(middle,current_size);
             std::inplace_merge( this->begin().base(),
                                 middle,
                                 this->end().base(),
                                 bin_pred );
         }
-
+
         void merge( ptr_sequence_adapter& r )
         {
             merge( r, std::less<T>() );
             BOOST_ASSERT( r.empty() );
         }
-
+
         template< class BinPred >
         void merge( ptr_sequence_adapter& r, BinPred pred )
         {
             merge( r.begin(), r.end(), r, pred );
- BOOST_ASSERT( r.empty() );
+ BOOST_ASSERT( r.empty() );
         }
 
     };
 
 
-} // namespace 'boost'
+} // namespace 'boost'
 
 #endif
Index: boost/ptr_container/ptr_set.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_set.hpp,v
retrieving revision 1.3
diff -u -r1.3 ptr_set.hpp
--- boost/ptr_container/ptr_set.hpp 10 May 2005 21:22:23 -0000 1.3
+++ boost/ptr_container/ptr_set.hpp 11 May 2005 08:39:22 -0000
@@ -24,53 +24,54 @@
 {
 
     template
- <
- class Key,
+ <
+ class Key,
         class Compare = std::less<Key>,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator<void*>
>
- class ptr_set :
- public ptr_set_adapter< Key,
+ class ptr_set :
+ public ptr_set_adapter< Key,
                                 std::set<void*,void_ptr_indirect_fun<Compare,Key>,Allocator>,
                                 CloneAllocator >
     {
         typedef ptr_set_adapter< Key, std::set<void*,void_ptr_indirect_fun<Compare,Key>,Allocator>,
                                  CloneAllocator >
              base_type;
-
+
     public:
         explicit ptr_set( const Compare& comp = Compare(),
- const Allocator& a = Allocator() )
- : base_type( comp, a )
+ const Allocator& a = Allocator() )
+ : base_type( comp, a )
         { }
-
+
         template< typename InputIterator >
- ptr_set( InputIterator first, InputIterator last,
+ ptr_set( InputIterator first, InputIterator last,
                  const Compare& comp = Compare(),
- const Allocator& a = Allocator() )
+ const Allocator& a = Allocator() )
          : base_type( first, last, comp, a )
         { }
 
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_set<Key,Compare,CloneAllocator,Allocator>,
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_set<Key,Compare,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( this_type,
                                                       base_type );
 #else
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_set,
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_set,
                                                       base_type );
-#endif
+#endif
     };
-
-
-
+
+
+
     template
- <
- class Key,
+ <
+ class Key,
         class Compare = std::less<Key>,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator<void*>
>
- class ptr_multiset :
+ class ptr_multiset :
         public ptr_multiset_adapter< Key,
                                      std::multiset<void*,void_ptr_indirect_fun<Compare,Key>,Allocator>,
                                      CloneAllocator >
@@ -82,25 +83,26 @@
     public:
         explicit ptr_multiset( const Compare& comp = Compare(),
                                const Allocator& a = Allocator() )
- : base_type( comp, a )
+ : base_type( comp, a )
         { }
-
+
         template< typename InputIterator >
         ptr_multiset( InputIterator first, InputIterator last,
                       const Compare& comp = Compare(),
                       const Allocator& a = Allocator() )
- : base_type( first, last, comp, a )
+ : base_type( first, last, comp, a )
         { }
 
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_multiset<Key,Compare,CloneAllocator,Allocator>,
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_multiset<Key,Compare,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( this_type,
                                                       base_type );
 #else
 
- BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_multiset,
+ BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( ptr_multiset,
                                                       base_type );
-#endif
-
+#endif
+
     };
 
     /////////////////////////////////////////////////////////////////////////
@@ -117,7 +119,7 @@
     {
         return r.clone().release();
     }
-
+
     /////////////////////////////////////////////////////////////////////////
     // swap
 
Index: boost/ptr_container/ptr_vector.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/ptr_container/ptr_vector.hpp,v
retrieving revision 1.3
diff -u -r1.3 ptr_vector.hpp
--- boost/ptr_container/ptr_vector.hpp 10 May 2005 21:22:23 -0000 1.3
+++ boost/ptr_container/ptr_vector.hpp 11 May 2005 09:03:56 -0000
@@ -23,29 +23,32 @@
 {
 
     template
- <
- class T,
+ <
+ class T,
         class CloneAllocator = heap_clone_allocator,
         class Allocator = std::allocator<void*>
>
- class ptr_vector : public
- ptr_sequence_adapter< T,
- std::vector<void*,Allocator>,
+ class ptr_vector : public
+ ptr_sequence_adapter< T,
+ std::vector<void*,Allocator>,
                               CloneAllocator >
- {
- typedef ptr_sequence_adapter< T,
- std::vector<void*,Allocator>,
- CloneAllocator >
+ {
+ typedef ptr_sequence_adapter< T,
+ std::vector<void*,Allocator>,
+ CloneAllocator >
             base_class;
 
     public:
-#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
- BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_vector<T,CloneAllocator,Allocator>,
+ typedef BOOST_DEDUCED_TYPENAME base_class::auto_type auto_type;
+
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
+ typedef ptr_vector<T,CloneAllocator,Allocator> this_type;
+ BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( this_type,
                                                           base_class );
-#else
- BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_vector,
+#else
+ BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( ptr_vector,
                                                           base_class );
-#endif
+#endif
 
         ptr_vector( BOOST_DEDUCED_TYPENAME base_class::size_type n,
                     const allocator_type& alloc = allocator_type() )
@@ -74,7 +77,7 @@
     {
         l.swap(r);
     }
-
+
 }
 
 #endif

boost-test(RUN) "ptr_container/indirect_fun" : "libs\ptr_container\test\indirect_fun.cpp"
boost-test(RUN) "ptr_container/tut1" : "libs\ptr_container\test\tut1.cpp"
boost-test(RUN) "ptr_container/iterator_test" : "libs\ptr_container\test\iterator_test.cpp"
boost-test(RUN) "ptr_container/view_example" : "libs\ptr_container\test\view_example.cpp"
boost-test(RUN) "ptr_container/incomplete_type_test" : "libs\ptr_container\test\incomplete_type_test.cpp"
boost-test(RUN) "ptr_container/tree_test" : "libs\ptr_container\test\tree_test.cpp"
boost-test(RUN) "ptr_container/ptr_array" : "libs\ptr_container\test\ptr_array.cpp"
boost-test(RUN) "ptr_container/ptr_map" : "libs\ptr_container\test\ptr_map.cpp"
boost-test(RUN) "ptr_container/ptr_set" : "libs\ptr_container\test\ptr_set.cpp"
boost-test(RUN) "ptr_container/ptr_deque" : "libs\ptr_container\test\ptr_deque.cpp"
boost-test(RUN) "ptr_container/ptr_list" : "libs\ptr_container\test\ptr_list.cpp"
boost-test(RUN) "ptr_container/ptr_vector" : "libs\ptr_container\test\ptr_vector.cpp"
...found 1088 targets...
...updating 60 targets...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\indirect_fun.test\borland\debug\indirect_fun.obj
indirect_fun.cpp:
Warning W8057 indirect_fun.cpp 76: Parameter 'argc' is never used in function init_unit_test_suite(int,char * *)
Warning W8057 indirect_fun.cpp 76: Parameter 'argv' is never used in function init_unit_test_suite(int,char * *)
borland-Link-action ..\..\..\bin\boost\libs\ptr_container\test\indirect_fun.test\borland\debug\indirect_fun.exe
execute-test ..\..\..\bin\boost\libs\ptr_container\test\indirect_fun.test\borland\debug\indirect_fun.run
        1 file(s) copied.
**passed** ..\..\..\bin\boost\libs\ptr_container\test\indirect_fun.test\borland\debug\indirect_fun.test
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\tut1.test\borland\debug\tut1.obj
tut1.cpp:
Error E2034 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_deque.hpp 48: Cannot convert 'ptr_container_detail::static_move_ptr<animal,ptr_container_detail::clone_deleter<ptr_container_detail::reversible_ptr_container<Config,CloneAllocator>::null_clone_allocator<&allow_null> > >' to 'ptr_container_detail::static_move_ptr<animal,ptr_container_detail::clone_deleter<ptr_container_detail::reversible_ptr_container<ptr_container_detail::sequence_config<animal,_STL::deque<void *,_STL::allocator<void *> > >,heap_clone_allocator>::null_clone_allocator<0> > >' in function ptr_deque<animal,heap_clone_allocator,_STL::allocator<void *> >::release(void_ptr_iterator<_STL::_Deque_iterator<void *,_STL::_Nonconst_traits<void *> >,animal>)
Error E2034 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/detail/reversible_ptr_container.hpp 487: Cannot convert 'move_ptrs::move_source<static_move_ptr<animal,clone_deleter<reversible_ptr_container<sequence_config<animal,_STL::deque<void *,_STL::allocator<void *> > >,heap_clone_allocator>::null_clone_allocator<0> > > >' to 'static_move_ptr<animal,clone_deleter<reversible_ptr_container<Config,CloneAllocator>::null_clone_allocator<&allow_null> > >' in function reversible_ptr_container<sequence_config<animal,_STL::deque<void *,_STL::allocator<void *> > >,heap_clone_allocator>::release(void_ptr_iterator<_STL::_Deque_iterator<void *,_STL::_Nonconst_traits<void *> >,animal>)
Error E2451 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/detail/reversible_ptr_container.hpp 53: Undefined symbol 'deallocate_clone' in function operator void () <animal>(const animal *) const
*** 3 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\tut1.test\borland\debug\tut1.obj" "tut1.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\tut1.test\borland\debug\tut1.obj...
...skipped <@boost!libs!ptr_container!test\tut1.test\borland\debug>tut1.CMD for lack of <@boost!libs!ptr_container!test\tut1.test\borland\debug>tut1.obj...
...skipped <@boost!libs!ptr_container!test\tut1.test\borland\debug>tut1.exe for lack of <@boost!libs!ptr_container!test\tut1.test\borland\debug>tut1.CMD...
...skipped <@boost!libs!ptr_container!test\tut1.test\borland\debug>tut1.run for lack of <@boost!libs!ptr_container!test\tut1.test\borland\debug>tut1.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\iterator_test.test\borland\debug\iterator_test.obj
iterator_test.cpp:
Warning W8057 iterator_test.cpp 36: Parameter 'argc' is never used in function init_unit_test_suite(int,char * *)
Warning W8057 iterator_test.cpp 36: Parameter 'argv' is never used in function init_unit_test_suite(int,char * *)
borland-Link-action ..\..\..\bin\boost\libs\ptr_container\test\iterator_test.test\borland\debug\iterator_test.exe
execute-test ..\..\..\bin\boost\libs\ptr_container\test\iterator_test.test\borland\debug\iterator_test.run
        1 file(s) copied.
**passed** ..\..\..\bin\boost\libs\ptr_container\test\iterator_test.test\borland\debug\iterator_test.test
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\view_example.test\borland\debug\view_example.obj
view_example.cpp:
Warning W8091 view_example.cpp 157: template argument _RandomAccessIter passed to 'sort' is a output iterator: random iterator required in function main()
Warning W8092 view_example.cpp 163: template argument Compare passed to 'sort' is not an iterator: random iterator required in function main()
Warning W8092 view_example.cpp 165: template argument Compare passed to 'sort' is not an iterator: random iterator required in function main()
Error E2294 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_sequence_adapter.hpp 99: Structure required on left side of . or .* in function const photon * get_const_pointer<photon *>(photon *)
*** 1 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\view_example.test\borland\debug\view_example.obj" "view_example.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\view_example.test\borland\debug\view_example.obj...
...skipped <@boost!libs!ptr_container!test\view_example.test\borland\debug>view_example.CMD for lack of <@boost!libs!ptr_container!test\view_example.test\borland\debug>view_example.obj...
...skipped <@boost!libs!ptr_container!test\view_example.test\borland\debug>view_example.exe for lack of <@boost!libs!ptr_container!test\view_example.test\borland\debug>view_example.CMD...
...skipped <@boost!libs!ptr_container!test\view_example.test\borland\debug>view_example.run for lack of <@boost!libs!ptr_container!test\view_example.test\borland\debug>view_example.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\incomplete_type_test.test\borland\debug\incomplete_type_test.obj
incomplete_type_test.cpp:
Warning W8057 incomplete_type_test.cpp 181: Parameter 'argc' is never used in function init_unit_test_suite(int,char * *)
Warning W8057 incomplete_type_test.cpp 181: Parameter 'argv' is never used in function init_unit_test_suite(int,char * *)
Error E2247 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/clone_allocator.hpp 26: 'Composite::Composite(const Composite &)' is not accessible in function Composite * new_clone<Composite>(const Composite &)
*** 1 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\incomplete_type_test.test\borland\debug\incomplete_type_test.obj" "incomplete_type_test.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\incomplete_type_test.test\borland\debug\incomplete_type_test.obj...
...skipped <@boost!libs!ptr_container!test\incomplete_type_test.test\borland\debug>incomplete_type_test.CMD for lack of <@boost!libs!ptr_container!test\incomplete_type_test.test\borland\debug>incomplete_type_test.obj...
...skipped <@boost!libs!ptr_container!test\incomplete_type_test.test\borland\debug>incomplete_type_test.exe for lack of <@boost!libs!ptr_container!test\incomplete_type_test.test\borland\debug>incomplete_type_test.CMD...
...skipped <@boost!libs!ptr_container!test\incomplete_type_test.test\borland\debug>incomplete_type_test.run for lack of <@boost!libs!ptr_container!test\incomplete_type_test.test\borland\debug>incomplete_type_test.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\tree_test.test\borland\debug\tree_test.obj
tree_test.cpp:
Warning W8057 tree_test.cpp 278: Parameter 'argc' is never used in function init_unit_test_suite(int,char * *)
Warning W8057 tree_test.cpp 278: Parameter 'argv' is never used in function init_unit_test_suite(int,char * *)
borland-Link-action ..\..\..\bin\boost\libs\ptr_container\test\tree_test.test\borland\debug\tree_test.exe
execute-test ..\..\..\bin\boost\libs\ptr_container\test\tree_test.test\borland\debug\tree_test.run
        1 file(s) copied.
**passed** ..\..\..\bin\boost\libs\ptr_container\test\tree_test.test\borland\debug\tree_test.test
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_array.test\borland\debug\ptr_array.obj
ptr_array.cpp:
Error E2285 ptr_array.cpp 89: Could not find a match for 'ptr_array<int,10,heap_clone_allocator>::at<idx>(int)' in function test_array()
Error E2451 ptr_array.cpp 89: Undefined symbol 'ex' in function test_array()
Error E2285 ptr_array.cpp 90: Could not find a match for 'unit_test::ut_detail::ignore_unused_variable_warning<T>(undefined)' in function test_array()
Error E2285 ptr_array.cpp 91: Could not find a match for 'unit_test::ut_detail::ignore_unused_variable_warning<T>(undefined)' in function test_array()
Warning W8057 ptr_array.cpp 157: Parameter 'argc' is never used in function init_unit_test_suite(int,char * *)
Warning W8057 ptr_array.cpp 157: Parameter 'argv' is never used in function init_unit_test_suite(int,char * *)
*** 4 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\ptr_array.test\borland\debug\ptr_array.obj" "ptr_array.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_array.test\borland\debug\ptr_array.obj...
...skipped <@boost!libs!ptr_container!test\ptr_array.test\borland\debug>ptr_array.CMD for lack of <@boost!libs!ptr_container!test\ptr_array.test\borland\debug>ptr_array.obj...
..skipped <@boost!libs!ptr_container!test\ptr_array.test\borland\debug>ptr_array.exe for lack of <@boost!libs!ptr_container!test\ptr_array.test\borland\debug>ptr_array.CMD...
...skipped <@boost!libs!ptr_container!test\ptr_array.test\borland\debug>ptr_array.run for lack of <@boost!libs!ptr_container!test\ptr_array.test\borland\debug>ptr_array.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_map.test\borland\debug\ptr_map.obj
ptr_map.cpp:
Error E2303 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_map.hpp 54: Type name expected
Error E2139 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_map.hpp 54: Declaration missing ;
Error E2303 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_map.hpp 91: Type name expected
Error E2139 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_map.hpp 91: Declaration missing ;
Error E2451 ptr_map.cpp 206: Undefined symbol 'ex' in function test_map()
Error E2228 ptr_map.cpp 206: Too many error or warning messages in function test_map()
*** 6 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\ptr_map.test\borland\debug\ptr_map.obj" "ptr_map.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_map.test\borland\debug\ptr_map.obj...
...skipped <@boost!libs!ptr_container!test\ptr_map.test\borland\debug>ptr_map.CMD for lack of <@boost!libs!ptr_container!test\ptr_map.test\borland\debug>ptr_map.obj...
...skipped <@boost!libs!ptr_container!test\ptr_map.test\borland\debug>ptr_map.exe for lack of <@boost!libs!ptr_container!test\ptr_map.test\borland\debug>ptr_map.CMD...
...skipped <@boost!libs!ptr_container!test\ptr_map.test\borland\debug>ptr_map.run for lack of <@boost!libs!ptr_container!test\ptr_map.test\borland\debug>ptr_map.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_set.test\borland\debug\ptr_set.obj
ptr_set.cpp:
Error E2303 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_set.hpp 58: Type name expected
Error E2139 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_set.hpp 58: Declaration missing ;
Error E2303 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_set.hpp 99: Type name expected
Error E2139 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_set.hpp 99: Declaration missing ;
Error E2451 ptr_set.cpp 26: Undefined symbol 'ex' in function test_set()
Error E2228 ptr_set.cpp 26: Too many error or warning messages in function test_set()
*** 6 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\ptr_set.test\borland\debug\ptr_set.obj" "ptr_set.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_set.test\borland\debug\ptr_set.obj...
...skipped <@boost!libs!ptr_container!test\ptr_set.test\borland\debug>ptr_set.CMD for lack of <@boost!libs!ptr_container!test\ptr_set.test\borland\debug>ptr_set.obj...
...skipped <@boost!libs!ptr_container!test\ptr_set.test\borland\debug>ptr_set.exe for lack of <@boost!libs!ptr_container!test\ptr_set.test\borland\debug>ptr_set.CMD...
...skipped <@boost!libs!ptr_container!test\ptr_set.test\borland\debug>ptr_set.run for lack of <@boost!libs!ptr_container!test\ptr_set.test\borland\debug>ptr_set.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_deque.test\borland\debug\ptr_deque.obj
ptr_deque.cpp:
Error E2285 sequence_test_data.hpp 81: Could not find a match for 'ptr_sequence_adapter<Base,deque<void *,allocator<void *> >,heap_clone_allocator>::insert<InputIterator>(void_ptr_iterator<_Deque_iterator<void *,_Nonconst_traits<void *> >,Base>,Derived_class *)' in function void reversible_container_test<ptr_deque<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Error E2034 sequence_test_data.hpp 113: Cannot convert 'ptr_container_detail::static_move_ptr<Base,ptr_container_detail::clone_deleter<ptr_container_detail::reversible_ptr_container<Config,CloneAllocator>::null_clone_allocator<&allow_null> > >' to 'ptr_container_detail::static_move_ptr<Base,ptr_container_detail::clone_deleter<ptr_container_detail::reversible_ptr_container<ptr_container_detail::sequence_config<Base,deque<void *,allocator<void *> > >,heap_clone_allocator>::null_clone_allocator<0> > >' in function void reversible_container_test<ptr_deque<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Warning W8004 sequence_test_data.hpp 132: 'ptr2' is assigned a value that is never used in function void reversible_container_test<ptr_deque<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Warning W8057 test_data.hpp 215: Parameter 'r' is never used in function void hide_warning<allocator<void *> >(allocator<void *> &)
Warning W8057 test_data.hpp 215: Parameter 'r' is never used in function void hide_warning<unsigned int>(unsigned int &)
Warning W8057 test_data.hpp 215: Parameter 'r' is never used in function void hide_warning<Base>(Base &)
Warning W8057 test_data.hpp 215: Parameter 'r' is never used in function void hide_warning<const Base>(const Base &)
Error E2285 sequence_test_data.hpp 81: Could not find a match for 'ptr_sequence_adapter<Value,deque<void *,allocator<void *> >,heap_clone_allocator>::insert<InputIterator>(void_ptr_iterator<_Deque_iterator<void *,_Nonconst_traits<void *> >,Value>,Value *)' in function void reversible_container_test<ptr_deque<Value,heap_clone_allocator,allocator<void *> >,Value,Value>()
Error E2034 sequence_test_data.hpp 113: Cannot convert 'ptr_container_detail::static_move_ptr<Value,ptr_container_detail::clone_deleter<ptr_container_detail::reversible_ptr_container<Config,CloneAllocator>::null_clone_allocator<&allow_null> > >' to 'ptr_container_detail::static_move_ptr<Value,ptr_container_detail::clone_deleter<ptr_container_detail::reversible_ptr_container<ptr_container_detail::sequence_config<Value,deque<void *,allocator<void *> > >,heap_clone_allocator>::null_clone_allocator<0> > >' in function void reversible_container_test<ptr_deque<Value,heap_clone_allocator,allocator<void *> >,Value,Value>()
Warning W8004 sequence_test_data.hpp 132: 'ptr2' is assigned a value that is never used in function void reversible_container_test<ptr_deque<Value,heap_clone_allocator,allocator<void *> >,Value,Value>()
Warning W8057 test_data.hpp 215: Parameter 'r' is never used in function void hide_warning<Value>(Value &)
Warning W8057 test_data.hpp 215: Parameter 'r' is never used in function void hide_warning<const Value>(const Value &)
Error E2285 sequence_test_data.hpp 81: Could not find a match for 'ptr_sequence_adapter<nullable<Base>,deque<void *,allocator<void *> >,heap_clone_allocator>::insert<InputIterator>(void_ptr_iterator<_Deque_iterator<void *,_Nonconst_traits<void *> >,Base>,Derived_class *)' in function void reversible_container_test<ptr_deque<nullable<Base>,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Error E2228 sequence_test_data.hpp 81: Too many error or warning messages in function void reversible_container_test<ptr_deque<nullable<Base>,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
*** 6 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\ptr_deque.test\borland\debug\ptr_deque.obj" "ptr_deque.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_deque.test\borland\debug\ptr_deque.obj...
...skipped <@boost!libs!ptr_container!test\ptr_deque.test\borland\debug>ptr_deque.CMD for lack of <@boost!libs!ptr_container!test\ptr_deque.test\borland\debug>ptr_deque.obj...
...skipped <@boost!libs!ptr_container!test\ptr_deque.test\borland\debug>ptr_deque.exe for lack of <@boost!libs!ptr_container!test\ptr_deque.test\borland\debug>ptr_deque.CMD...
...skipped <@boost!libs!ptr_container!test\ptr_deque.test\borland\debug>ptr_deque.run for lack of <@boost!libs!ptr_container!test\ptr_deque.test\borland\debug>ptr_deque.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_list.test\borland\debug\ptr_list.obj
ptr_list.cpp:
Error E2303 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_list.hpp 45: Type name expected
Error E2139 c:\Users\russell\Projects\boost-cvs\boost\boost/ptr_container/ptr_list.hpp 45: Declaration missing ;
Error E2316 sequence_test_data.hpp 34: 'clone' is not a member of 'ptr_list<Base,heap_clone_allocator,allocator<void *> >' in function void reversible_container_test<ptr_list<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Error E2285 sequence_test_data.hpp 81: Could not find a match for 'ptr_sequence_adapter<Base,list<void *,allocator<void *> >,heap_clone_allocator>::insert<InputIterator>(void_ptr_iterator<_List_iterator<void *,_Nonconst_traits<void *> >,Base>,Derived_class *)' in function void reversible_container_test<ptr_list<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Error E2089 sequence_test_data.hpp 104: Identifier 'auto_type' cannot have a type qualifier in function void reversible_container_test<ptr_list<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
Error E2228 sequence_test_data.hpp 104: Too many error or warning messages in function void reversible_container_test<ptr_list<Base,heap_clone_allocator,allocator<void *> >,Base,Derived_class>()
*** 6 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\ptr_list.test\borland\debug\ptr_list.obj" "ptr_list.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_list.test\borland\debug\ptr_list.obj...
...skipped <@boost!libs!ptr_container!test\ptr_list.test\borland\debug>ptr_list.CMD for lack of <@boost!libs!ptr_container!test\ptr_list.test\borland\debug>ptr_list.obj...
...skipped <@boost!libs!ptr_container!test\ptr_list.test\borland\debug>ptr_list.exe for lack of <@boost!libs!ptr_container!test\ptr_list.test\borland\debug>ptr_list.CMD...
...skipped <@boost!libs!ptr_container!test\ptr_list.test\borland\debug>ptr_list.run for lack of <@boost!libs!ptr_container!test\ptr_list.test\borland\debug>ptr_list.exe...
borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_vector.test\borland\debug\ptr_vector.obj
ptr_vector.cpp:
Error E2285 ptr_vector.cpp 33: Could not find a match for 'ptr_sequence_adapter<int,vector<void *,allocator<void *> >,heap_clone_allocator>::insert<InputIterator>(void_ptr_iterator<void * *,int>,int)' in function test_ptr_vector()
Error E2451 ptr_vector.cpp 33: Undefined symbol 'ex' in function test_ptr_vector()
Error E2285 ptr_vector.cpp 34: Could not find a match for 'unit_test::ut_detail::ignore_unused_variable_warning<T>(undefined)' in function test_ptr_vector()
Error E2285 ptr_vector.cpp 36: Could not find a match for 'unit_test::ut_detail::ignore_unused_variable_warning<T>(undefined)' in function test_ptr_vector()
Error E2285 ptr_vector.cpp 37: Could not find a match for 'unit_test::ut_detail::ignore_unused_variable_warning<T>(undefined)' in function test_ptr_vector()
Error E2228 ptr_vector.cpp 37: Too many error or warning messages in function test_ptr_vector()
*** 6 errors in Compile ***

    "bcc32" -j5 -g255 -q -c -P -w -Ve -Vx -a8 -b- -v -Od -vi- -tWC -tWR -tWC -WM- -w-8001 -I"..\..\..\bin\boost\libs\ptr_container\test" -I"c:\Users\russell\Projects\boost-cvs\boost" -o"..\..\..\bin\boost\libs\ptr_container\test\ptr_vector.test\borland\debug\ptr_vector.obj" "ptr_vector.cpp"

...failed borland-C++-action ..\..\..\bin\boost\libs\ptr_container\test\ptr_vector.test\borland\debug\ptr_vector.obj...
...skipped <@boost!libs!ptr_container!test\ptr_vector.test\borland\debug>ptr_vector.CMD for lack of <@boost!libs!ptr_container!test\ptr_vector.test\borland\debug>ptr_vector.obj...
...skipped <@boost!libs!ptr_container!test\ptr_vector.test\borland\debug>ptr_vector.exe for lack of <@boost!libs!ptr_container!test\ptr_vector.test\borland\debug>ptr_vector.CMD...
...skipped <@boost!libs!ptr_container!test\ptr_vector.test\borland\debug>ptr_vector.run for lack of <@boost!libs!ptr_container!test\ptr_vector.test\borland\debug>ptr_vector.exe...
...failed updating 9 targets...
...skipped 36 targets...
...updated 15 targets...


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk