From 65954f614c44e723487aa7da94b7c1e33c91a6a9 Mon Sep 17 00:00:00 2001 From: q66 Date: Mon, 9 May 2016 00:07:25 +0100 Subject: [PATCH] decay map/filter callbacks before storing them --- ostd/algorithm.hh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ostd/algorithm.hh b/ostd/algorithm.hh index 6b83286..180c56e 100644 --- a/ostd/algorithm.hh +++ b/ostd/algorithm.hh @@ -661,7 +661,7 @@ struct MapRange: InputRange< > { private: T p_range; - F p_func; + Decay p_func; public: MapRange() = delete; @@ -757,7 +757,7 @@ struct FilterRange: InputRange< > { private: T p_range; - F p_pred; + Decay p_pred; void advance_valid() { while (!p_range.empty() && !p_pred(front())) p_range.pop_front(); @@ -816,7 +816,7 @@ namespace detail { template inline FilterRange> filter(R range, P pred) { - return FilterRange(range, pred); + return FilterRange(range, move(pred)); } template