diff --git a/hpx/runtime/agas/request.hpp b/hpx/runtime/agas/request.hpp index 1a62d0da47ea..446e3057f75b 100644 --- a/hpx/runtime/agas/request.hpp +++ b/hpx/runtime/agas/request.hpp @@ -20,6 +20,8 @@ #include #include +#include + // The number of types that the request's variant can represent. #define HPX_AGAS_REQUEST_SUBTYPES 13 @@ -122,6 +124,8 @@ struct HPX_EXPORT request , hpx::id_type result_lco ); + ~request(); + /////////////////////////////////////////////////////////////////////////// // copy constructor request( @@ -240,7 +244,7 @@ struct HPX_EXPORT request HPX_SERIALIZATION_SPLIT_MEMBER() namespace_action_code mc; //-V707 - boost::shared_ptr data; + std::unique_ptr data; }; }} diff --git a/hpx/runtime/agas/response.hpp b/hpx/runtime/agas/response.hpp index 7caa230bb72d..879fd390bbb0 100644 --- a/hpx/runtime/agas/response.hpp +++ b/hpx/runtime/agas/response.hpp @@ -23,6 +23,7 @@ #include #include +#include #include namespace hpx { namespace agas @@ -113,6 +114,8 @@ struct HPX_EXPORT response , error status_ = success ); + ~response(); + /////////////////////////////////////////////////////////////////////////// // copy constructor response( @@ -220,9 +223,7 @@ struct HPX_EXPORT response namespace_action_code mc; //-V707 error status; - - // FIXME: std::unique_ptr doesn't seem to work with incomplete types - boost::shared_ptr data; + std::unique_ptr data; }; } diff --git a/src/runtime/agas/request.cpp b/src/runtime/agas/request.cpp index c249fefbc51e..e574224ff036 100644 --- a/src/runtime/agas/request.cpp +++ b/src/runtime/agas/request.cpp @@ -382,6 +382,9 @@ namespace hpx { namespace agas HPX_ASSERT(type_ == symbol_ns_on_event); } + request::~request() + {} + /////////////////////////////////////////////////////////////////////////// // copy constructor request::request( diff --git a/src/runtime/agas/response.cpp b/src/runtime/agas/response.cpp index faa5ef15383b..b9b1882d987b 100644 --- a/src/runtime/agas/response.cpp +++ b/src/runtime/agas/response.cpp @@ -366,6 +366,9 @@ namespace hpx { namespace agas // TODO: verification of namespace_action_code } + response::~response() + {} + response::response( response const& other )