Hi, I'm trying to use a std::function with std::unique_ptr arguments but the std::function invocation ends up using std::unique_ptr copy ctor, which is private/deleted.
Since std::function is a forward call wrapper, its operator() should have forwarded properly its arguments to the wrapped function, but M_invoker(_M_functor, __args...); and (*_Base::_M_get_pointer(__functor))(__args...); doesn't seem to do that. IMHO it should be _M_invoker(_M_functor, std::forward<_ArgTypes>(__args)...); (*_Base::_M_get_pointer(__functor))(std::forward<_ArgTypes>(__args)...); Any objections? Regards, Rodolfo Lima _______________________________________________ help-gplusplus mailing list help-gplusplus@gnu.org http://lists.gnu.org/mailman/listinfo/help-gplusplus