diff --git a/src/inference/dev_api/openvino/runtime/so_ptr.hpp b/src/inference/dev_api/openvino/runtime/so_ptr.hpp index 4f8b0d1d05ae5b..921eb88aa14b79 100644 --- a/src/inference/dev_api/openvino/runtime/so_ptr.hpp +++ b/src/inference/dev_api/openvino/runtime/so_ptr.hpp @@ -29,6 +29,12 @@ struct SoPtr { */ SoPtr() = default; + SoPtr(const SoPtr&) = default; + SoPtr(SoPtr&&) noexcept = default; + + SoPtr& operator=(const SoPtr&) = default; + SoPtr& operator=(SoPtr&&) noexcept = default; + /** * @brief Destructor preserves unloading order of implementation object and reference to library */ @@ -53,8 +59,8 @@ struct SoPtr { * @brief Constructs an object with existing shared object reference * @param ptr pointer to the loaded object */ - template ::value, bool>::type = true> - SoPtr(const std::shared_ptr& ptr) : _ptr{std::dynamic_pointer_cast(ptr)}, + template , bool> = true> + SoPtr(const std::shared_ptr& ptr) : _ptr{std::static_pointer_cast(ptr)}, _so{nullptr} {} /**