&sizes[0], 1, MPI_INT,
communicator(pg));
BOOST_ASSERT(result == MPI_SUCCESS);
+ (void)result;
// Adjust sizes based on the number of bytes
- std::transform(sizes.begin(), sizes.end(), sizes.begin(),
- std::bind2nd(std::multiplies<int>(), sizeof(T)));
+ //
+ // std::transform(sizes.begin(), sizes.end(), sizes.begin(),
+ // std::bind2nd(std::multiplies<int>(), sizeof(T)));
+ //
+ // std::bind2nd has been removed from C++17
+
+ for( std::size_t i = 0, n = sizes.size(); i < n; ++i )
+ {
+ sizes[ i ] *= sizeof( T );
+ }
// Compute displacements
std::vector<int> displacements;
MPI_Group current_group;
int result = MPI_Comm_group(communicator(pg), ¤t_group);
BOOST_ASSERT(result == MPI_SUCCESS);
+ (void)result;
MPI_Group new_group;
result = MPI_Group_incl(current_group, ranks.size(), &ranks[0], &new_group);