diff --git a/src/entt/locator/locator.hpp b/src/entt/locator/locator.hpp index c5f9c772e..668b28111 100644 --- a/src/entt/locator/locator.hpp +++ b/src/entt/locator/locator.hpp @@ -141,12 +141,13 @@ public: /** * @brief Resets or replaces a service. + * @tparam Type Service type. * @tparam Deleter Deleter type. * @param elem A pointer to a service to manage. * @param deleter A deleter to use to destroy the service. */ - template> - static void reset(std::derived_from auto *elem, Deleter deleter = {}) { + template Type, typename Deleter = std::default_delete> + static void reset(Type *elem, Deleter deleter = {}) { service = std::shared_ptr{elem, std::move(deleter)}; }