summaryrefslogtreecommitdiff
path: root/boost/range/algorithm_ext/copy_n.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/range/algorithm_ext/copy_n.hpp')
-rw-r--r--boost/range/algorithm_ext/copy_n.hpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/boost/range/algorithm_ext/copy_n.hpp b/boost/range/algorithm_ext/copy_n.hpp
index ba7ad1cfce..f8554417c5 100644
--- a/boost/range/algorithm_ext/copy_n.hpp
+++ b/boost/range/algorithm_ext/copy_n.hpp
@@ -30,15 +30,15 @@ namespace boost
///
/// \pre SinglePassRange is a model of the SinglePassRangeConcept
/// \pre OutputIterator is a model of the OutputIteratorConcept
-/// \pre 0 <= n < distance(rng)
+/// \pre 0 <= n <= distance(rng)
template< class SinglePassRange, class Size, class OutputIterator >
inline OutputIterator copy_n(const SinglePassRange& rng, Size n, OutputIterator out)
{
BOOST_RANGE_CONCEPT_ASSERT(( SinglePassRangeConcept<const SinglePassRange> ));
- BOOST_ASSERT( n < static_cast<Size>(boost::distance(rng)) );
+ BOOST_ASSERT( n <= static_cast<Size>(::boost::distance(rng)) );
BOOST_ASSERT( n >= static_cast<Size>(0) );
- BOOST_DEDUCED_TYPENAME range_iterator<const SinglePassRange>::type source = boost::begin(rng);
+ BOOST_DEDUCED_TYPENAME range_iterator<const SinglePassRange>::type source = ::boost::begin(rng);
for (Size i = 0; i < n; ++i, ++out, ++source)
*out = *source;
@@ -47,7 +47,7 @@ inline OutputIterator copy_n(const SinglePassRange& rng, Size n, OutputIterator
}
} // namespace range
- using range::copy_n;
+ using ::boost::range::copy_n;
} // namespace boost
#endif // include guard