diff --git a/src/libslic3r/AnyPtr.hpp b/src/libslic3r/AnyPtr.hpp index c40d10093..823fac080 100644 --- a/src/libslic3r/AnyPtr.hpp +++ b/src/libslic3r/AnyPtr.hpp @@ -38,16 +38,16 @@ class AnyPtr { } public: - template>> + template>> AnyPtr(TT *p = nullptr) : ptr{p} {} - template>> + template>> AnyPtr(std::unique_ptr p) : ptr{std::unique_ptr(std::move(p))} {} - template>> + template>> AnyPtr(std::shared_ptr p) : ptr{std::shared_ptr(std::move(p))} {} - template>> + template>> AnyPtr(std::weak_ptr p) : ptr{std::weak_ptr(std::move(p))} {} @@ -59,16 +59,16 @@ public: AnyPtr &operator=(AnyPtr &&other) noexcept { ptr = std::move(other.ptr); return *this; } AnyPtr &operator=(const AnyPtr &other) = delete; - template>> + template>> AnyPtr &operator=(TT *p) { ptr = p; return *this; } - template>> + template>> AnyPtr &operator=(std::unique_ptr p) { ptr = std::move(p); return *this; } - template>> + template>> AnyPtr &operator=(std::shared_ptr p) { ptr = p; return *this; } - template>> + template>> AnyPtr &operator=(std::weak_ptr p) { ptr = std::move(p); return *this; } const T &operator*() const { return *get_ptr(*this); }