Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[SMPI] Make MPI_DATATYPE_NULL a non-null object
authorChristian Heinrich <franz-christian.heinrich@inria.fr>
Fri, 6 Jul 2018 06:37:37 +0000 (08:37 +0200)
committerChristian Heinrich <franz-christian.heinrich@inria.fr>
Fri, 6 Jul 2018 06:39:58 +0000 (08:39 +0200)
commit1f9b69e371e621ff8a7152b7ab8f5a7459563a2d
treec82db15d65cc1a08e333e759722530b0a6b219ec
parent1fc5d774ff8e253d3127812d681e7d08b489fc4a
[SMPI] Make MPI_DATATYPE_NULL a non-null object

We're calling methods on the Datatype objects, such as
datatype->size(), especially in the replay component.
With MPI_DATATYPE_NULL being the nullptr, we'd have to
check every time whether or not a given object is
actually MPI_DATATYPE_NULL before using it.

Making MPI_DATATYPE_NULL a real object allows us to call methods
on this object that will be meaningful (for instance, size() returns 0)
and to avoid this constant checking.

Thanks to Michael Mercier for reporting this bug.
include/smpi/smpi.h
src/smpi/mpi/smpi_datatype.cpp