diff --git a/src/lib/multifact.hpp b/src/lib/multifact.hpp index 37b6fdb79..24dab5128 100644 --- a/src/lib/multifact.hpp +++ b/src/lib/multifact.hpp @@ -95,9 +95,9 @@ namespace lib { template ResultType - wrap (FUN create, ARGS... args) noexcept + wrap (FUN create, ARGS&&... args) noexcept { - return create(args...); + return create(std::forward(args)...); } }; @@ -115,9 +115,9 @@ namespace lib { template ResultType - wrap (FUN create, ARGS... args) + wrap (FUN create, ARGS&&... args) { - return ResultType (create(args...)); + return ResultType (create(std::forward(args)...)); } }; @@ -155,7 +155,7 @@ namespace lib { ResultType wrap (FUN create, ARGS&&... args) { - return wrapper_(std::forward (create(args...))); + return wrapper_(std::forward (create(std::forward(args)...))); } private: