summaryrefslogtreecommitdiff
path: root/sigc++/functors/ptr_fun.h
diff options
context:
space:
mode:
Diffstat (limited to 'sigc++/functors/ptr_fun.h')
-rw-r--r--sigc++/functors/ptr_fun.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/sigc++/functors/ptr_fun.h b/sigc++/functors/ptr_fun.h
index 288ac87..c1dc8b7 100644
--- a/sigc++/functors/ptr_fun.h
+++ b/sigc++/functors/ptr_fun.h
@@ -92,7 +92,9 @@ public:
* @param a Arguments to be passed on to the function.
* @return The return value of the function invocation.
*/
- T_return operator()(type_trait_take_t<T_args>... a) const { return std::invoke(func_ptr_, a...); }
+ T_return operator()(type_trait_take_t<T_args>... a) const {
+ return std::invoke(func_ptr_, std::forward<type_trait_take_t<T_args>>(a)...);
+ }
};
/** Creates a functor of type sigc::pointer_functor which wraps an existing non-member function.