From ae5f12d6ac9312c1aedcbb074b14e995dd30ceb0 Mon Sep 17 00:00:00 2001 From: Simon Praetorius <simon.praetorius@tu-dresden.de> Date: Mon, 2 Sep 2019 14:40:13 +0200 Subject: [PATCH] default initialize MPI_Requests --- src/amdis/common/parallel/Communicator.hpp | 4 ++-- src/amdis/common/parallel/Communicator.inc.hpp | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/amdis/common/parallel/Communicator.hpp b/src/amdis/common/parallel/Communicator.hpp index 67e72c4b..0795f41a 100644 --- a/src/amdis/common/parallel/Communicator.hpp +++ b/src/amdis/common/parallel/Communicator.hpp @@ -111,7 +111,7 @@ namespace Mpi Request isend(std::string const& str, int to, Tag tag = {}) const { - MPI_Request request; + MPI_Request request = nullptr; MPI_Isend(to_void_ptr(str.data()), int(str.size()), MPI_CHAR, to, tag.value, comm_, &request); return {request}; } @@ -199,7 +199,7 @@ namespace Mpi MPI_Get_count(&status, MPI_CHAR, &size); str.resize(size); - MPI_Request req; + MPI_Request req = nullptr; MPI_Irecv(&str[0], size, MPI_CHAR, status.MPI_SOURCE, status.MPI_TAG, comm, &req); return req; diff --git a/src/amdis/common/parallel/Communicator.inc.hpp b/src/amdis/common/parallel/Communicator.inc.hpp index 8d9ae94f..4ec39f83 100644 --- a/src/amdis/common/parallel/Communicator.inc.hpp +++ b/src/amdis/common/parallel/Communicator.inc.hpp @@ -34,7 +34,7 @@ void Communicator::send(std::vector<T> const& vec, int to, Tag tag) const template <class Data, REQUIRES_(not Concepts::RawPointer<Data>)> Request Communicator::isend(Data const& data, int to, Tag tag) const { - MPI_Request request; + MPI_Request request = nullptr; MPI_Isend(to_void_ptr(&data), 1, type_to_mpi<Data>(), to, tag.value, comm_, &request); return {request}; } @@ -44,7 +44,7 @@ Request Communicator::isend(Data const& data, int to, Tag tag) const template <class Data> Request Communicator::isend(Data const* data, std::size_t size, int to, Tag tag) const { - MPI_Request request; + MPI_Request request = nullptr; MPI_Isend(to_void_ptr(data), size, type_to_mpi<Data>(), to, tag.value, comm_, &request); return {request}; } @@ -53,7 +53,7 @@ Request Communicator::isend(Data const* data, std::size_t size, int to, Tag tag) template <class T> Request Communicator::isend(std::vector<T> const& vec, int to, Tag tag) const { - MPI_Request request; + MPI_Request request = nullptr; MPI_Isend(to_void_ptr(vec.data()), int(vec.size()), type_to_mpi<T>(), to, tag.value, comm_, &request); return {request}; } @@ -105,7 +105,7 @@ MPI_Status Communicator::recv(std::vector<T>& vec, int from, Tag tag) const template <class Data, REQUIRES_(not Concepts::RawPointer<Data>)> Request Communicator::irecv(Data& data, int from, Tag tag) const { - MPI_Request request; + MPI_Request request = nullptr; MPI_Irecv(&data, 1, type_to_mpi<Data>(), from, tag.value, comm_, &request); return {request}; } @@ -115,7 +115,7 @@ Request Communicator::irecv(Data& data, int from, Tag tag) const template <class Data> Request Communicator::irecv(Data* data, std::size_t size, int from, Tag tag) const { - MPI_Request request; + MPI_Request request = nullptr; MPI_Irecv(data, size, type_to_mpi<Data>(), from, tag.value, comm_, &request); return {request}; } @@ -132,7 +132,7 @@ Request Communicator::irecv(std::vector<T>& vec, int from, Tag tag) const int min_size = std::max(size,1); vec.resize(min_size); - MPI_Request req; + MPI_Request req = nullptr; MPI_Irecv(vec.data(), min_size, type_to_mpi<T>(), status.MPI_SOURCE, status.MPI_TAG, comm, &req); return req; }, -- GitLab