From: David Wells Date: Mon, 23 May 2022 16:57:38 +0000 (-0400) Subject: Add some missing MPI boolean instantiations. X-Git-Tag: v9.4.0-rc1~169^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F13795%2Fhead;p=dealii.git Add some missing MPI boolean instantiations. --- diff --git a/source/base/mpi.cc b/source/base/mpi.cc index aa582c6bf9..12e2f1ff4e 100644 --- a/source/base/mpi.cc +++ b/source/base/mpi.cc @@ -1197,6 +1197,42 @@ namespace Utilities #ifndef DOXYGEN // explicit instantiations + + // booleans aren't in MPI_SCALARS + template bool + reduce(const bool &, + const MPI_Comm &, + const std::function &, + const unsigned int); + + template std::vector + reduce(const std::vector &, + const MPI_Comm &, + const std::function(const std::vector &, + const std::vector &)> &, + const unsigned int); + + template bool + all_reduce(const bool &, + const MPI_Comm &, + const std::function &); + + template std::vector + all_reduce( + const std::vector &, + const MPI_Comm &, + const std::function(const std::vector &, + const std::vector &)> &); + + // We need an explicit instantiation of this for the same reason as the + // other types described in mpi.inst.in + template void + internal::all_reduce(const MPI_Op &, + const ArrayView &, + const MPI_Comm &, + const ArrayView &); + + template bool logical_or(const bool &, const MPI_Comm &);