-/* Copyright (c) 2007-2020. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2007-2022. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
* check if the topology is nullptr, but we should check if it is the good topology type (so we have to add a
* MPIR_Topo_Type field, and replace the MPI_Topology field by an union)*/
-int PMPI_Cart_create(MPI_Comm comm_old, int ndims, const int* dims, const int* periodic, int reorder, MPI_Comm* comm_cart) {
- CHECK_COMM2(1, comm_old)
+int PMPI_Cart_create(MPI_Comm comm, int ndims, const int* dims, const int* periodic, int reorder, MPI_Comm* comm_cart) {
+ CHECK_COMM(1)
if (ndims > 0){
CHECK_NULL(3, MPI_ERR_ARG, dims)
CHECK_NULL(4, MPI_ERR_ARG, periodic)
CHECK_NEGATIVE(2, MPI_ERR_ARG, ndims)
for (int i = 0; i < ndims; i++)
CHECK_NEGATIVE(2, MPI_ERR_ARG, dims[i])
- const simgrid::smpi::Topo_Cart* topo =
- new simgrid::smpi::Topo_Cart(comm_old, ndims, dims, periodic, reorder, comm_cart);
+ const auto* topo = new simgrid::smpi::Topo_Cart(comm, ndims, dims, periodic, reorder, comm_cart);
if (*comm_cart == MPI_COMM_NULL) {
delete topo;
} else {
CHECK_COMM(1)
CHECK_NULL(1, MPI_ERR_TOPOLOGY, comm->topo())
CHECK_NULL(2, MPI_SUCCESS, coords)
- MPIR_Cart_Topology topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
+ auto* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
if (topo==nullptr) {
return MPI_ERR_ARG;
}
CHECK_NEGATIVE(3, MPI_ERR_ARG, direction)
CHECK_NULL(4, MPI_ERR_ARG, source)
CHECK_NULL(5, MPI_ERR_ARG, dest)
- MPIR_Cart_Topology topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
+ auto* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
if (topo==nullptr) {
return MPI_ERR_ARG;
}
if(maxdims==0 || coords == nullptr) {
return MPI_SUCCESS;
}
- MPIR_Cart_Topology topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
+ auto* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
if (topo==nullptr) {
return MPI_ERR_ARG;
}
CHECK_COMM(1)
CHECK_NULL(1, MPI_ERR_TOPOLOGY, comm->topo())
CHECK_NEGATIVE(3, MPI_ERR_ARG, maxdims)
- MPIR_Cart_Topology topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
+ auto* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
if (topo==nullptr) {
return MPI_ERR_ARG;
}
CHECK_COMM(1)
CHECK_NULL(1, MPI_ERR_TOPOLOGY, comm->topo())
CHECK_NULL(2, MPI_ERR_ARG, ndims)
- const simgrid::smpi::Topo_Cart* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
+ const auto* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
if (topo==nullptr) {
return MPI_ERR_ARG;
}
CHECK_COMM(1)
CHECK_NULL(1, MPI_ERR_TOPOLOGY, comm->topo())
CHECK_NULL(3, MPI_ERR_ARG, comm_new)
- MPIR_Cart_Topology topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
+ auto* topo = static_cast<MPIR_Cart_Topology>(comm->topo().get());
if (topo==nullptr) {
return MPI_ERR_ARG;
}
- const simgrid::smpi::Topo_Cart* cart = topo->sub(remain_dims, comm_new);
+ const auto* cart = topo->sub(remain_dims, comm_new);
if(*comm_new==MPI_COMM_NULL)
delete cart;
if(cart==nullptr)