Improve iterator_range to take non-&& arguments
The current implementation takes forwarding reference arguments, which is fine when you call it with rvalues, like make_iterator_range(V.begin(), V.end()). If you call it with lvalues though, it doesn't do what you'd expect. ForwardIterator becomes a reference: Foo I = V.begin(); make_iterator_range(I, I); //ForwardIterator is deduced as Foo& Since iterator are supposed to be small, no harm in passing them by value. Change-Id: I151c87304949d810c72c42f60e9d1a7151f61f83 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2020780 Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66007}
Showing
Please
register
or
sign in
to comment