From d4939e73c22525a11c0cee645d547cd7414f55c3 Mon Sep 17 00:00:00 2001 From: q66 Date: Sun, 5 Jul 2015 03:48:38 +0100 Subject: [PATCH] make ranged copy() with output range take rvalue ref --- octa/range.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/octa/range.hh b/octa/range.hh index 230e2b4..4724a1b 100644 --- a/octa/range.hh +++ b/octa/range.hh @@ -464,7 +464,7 @@ template::value - >> Size copy(OR orange, Size n = -1) { + >> Size copy(OR &&orange, Size n = -1) { B r(*((B *)this)); Size on = n; for (; n && !r.empty(); --n) { @@ -911,7 +911,7 @@ struct PointerRange: InputRange, FiniteRandomAccessRangeTag, T> template::value - >> octa::Size copy(R orange, octa::Size n = -1) { + >> octa::Size copy(R &&orange, octa::Size n = -1) { octa::Size c = size(); if (n < c) c = n; return orange.put_n(p_beg, c);