diff --git a/src/entt/meta/factory.hpp b/src/entt/meta/factory.hpp index 4302b0547..51aa96329 100644 --- a/src/entt/meta/factory.hpp +++ b/src/entt/meta/factory.hpp @@ -712,9 +712,9 @@ class extended_meta_factory: public meta_factory { } template - auto unpack(choice_t<1>, Func func) - -> decltype(unpack(choice<3>, func())) { - unpack(choice<3>, func()); + std::enable_if_t, void> + unpack(choice_t<1>, Func &&func) { + unpack(choice<3>, std::forward(func)()); } template