intended borland fix

[SVN r29106]
This commit is contained in:
Thorsten Jørgen Ottosen
2005-05-21 00:17:33 +00:00
parent 0965a46d9c
commit d509beb073
2 changed files with 30 additions and 2 deletions

View File

@ -141,6 +141,7 @@ namespace boost
//! Difference type //! Difference type
typedef BOOST_DEDUCED_TYPENAME typedef BOOST_DEDUCED_TYPENAME
iterator_difference<IteratorT>::type difference_type; iterator_difference<IteratorT>::type difference_type;
//! Size type //! Size type
typedef std::size_t size_type; // note: must be unsigned typedef std::size_t size_type; // note: must be unsigned
@ -160,6 +161,19 @@ namespace boost
singular( true ) singular( true )
{ } { }
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
iterator_range( this_type r ) :
: m_Begin(r.begin()), m_End(r.end())
{ }
this_type& operator=( this_type r )
{
m_Begin = r.begin();
m_End = r.end();
return *this;
}
#endif
//! Constructor from a pair of iterators //! Constructor from a pair of iterators
template< class Iterator > template< class Iterator >
iterator_range( Iterator Begin, Iterator End ) : iterator_range( Iterator Begin, Iterator End ) :

View File

@ -40,6 +40,20 @@ namespace boost
sub_range() : base() sub_range() : base()
{ } { }
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
typedef sub_range<ForwardRange> this_type;
sub_range( this_type r ) :
: base( r )
{ }
this_type& operator=( this_type r )
{
base::operator=( r );
return *this;
}
#endif
template< class ForwardRange2 > template< class ForwardRange2 >
sub_range( ForwardRange2& r ) : sub_range( ForwardRange2& r ) :