forked from boostorg/range
fixed vc7.1 iterator conversion problems
[SVN r31942]
This commit is contained in:
@ -39,22 +39,18 @@ namespace boost
|
|||||||
public:
|
public:
|
||||||
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 )
|
/*
|
||||||
{
|
template< class ForwardRange2 >
|
||||||
base::operator=( r );
|
sub_range( sub_range<ForwardRange2> r ) :
|
||||||
return *this;
|
|
||||||
}
|
#if BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, <= 800 )
|
||||||
#endif
|
base( impl::adl_begin( r ), impl::adl_end( r ) )
|
||||||
*/
|
#else
|
||||||
template< class ForwardRange2 >
|
base( r )
|
||||||
|
#endif */
|
||||||
|
|
||||||
|
template< class ForwardRange2 >
|
||||||
sub_range( ForwardRange2& r ) :
|
sub_range( ForwardRange2& r ) :
|
||||||
|
|
||||||
#if BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, <= 800 )
|
#if BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, <= 800 )
|
||||||
@ -92,6 +88,16 @@ namespace boost
|
|||||||
base::operator=( r );
|
base::operator=( r );
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub_range& operator=( sub_range r )
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// argument passed by value to avoid
|
||||||
|
// const_iterator to iterator conversion
|
||||||
|
//
|
||||||
|
base::operator=( r );
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user