Fixes trac:330
Had the wrong type for one of the arguments of MPI_TYPE_GET_CONTENTS (MPI_Fint should have been MPI_Aint). This commit was SVN r11517. The following Trac tickets were found above: Ticket 330 --> https://svn.open-mpi.org/trac/ompi/ticket/330
Этот коммит содержится в:
родитель
7fe337ce3b
Коммит
8406746854
@ -293,7 +293,7 @@ PN(void, mpi_type_extent, MPI_TYPE_EXTENT, (MPI_Fint *type, MPI_Fint *extent, MP
|
||||
PN(void, mpi_type_free, MPI_TYPE_FREE, (MPI_Fint *type, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_free_keyval, MPI_TYPE_FREE_KEYVAL, (MPI_Fint *type_keyval, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_get_attr, MPI_TYPE_GET_ATTR, (MPI_Fint *type, MPI_Fint *type_keyval, MPI_Aint *attribute_val, MPI_Flogical *flag, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_get_contents, MPI_TYPE_GET_CONTENTS, (MPI_Fint *mtype, MPI_Fint *max_integers, MPI_Fint *max_addresses, MPI_Fint *max_datatypes, MPI_Fint *array_of_integers, MPI_Fint *array_of_addresses, MPI_Fint *array_of_datatypes, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_get_contents, MPI_TYPE_GET_CONTENTS, (MPI_Fint *mtype, MPI_Fint *max_integers, MPI_Fint *max_addresses, MPI_Fint *max_datatypes, MPI_Fint *array_of_integers, MPI_Aint *array_of_addresses, MPI_Fint *array_of_datatypes, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_get_envelope, MPI_TYPE_GET_ENVELOPE, (MPI_Fint *type, MPI_Fint *num_integers, MPI_Fint *num_addresses, MPI_Fint *num_datatypes, MPI_Fint *combiner, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_get_extent, MPI_TYPE_GET_EXTENT, (MPI_Fint *type, MPI_Aint *lb, MPI_Aint *extent, MPI_Fint *ierr));
|
||||
PN(void, mpi_type_get_name, MPI_TYPE_GET_NAME, (MPI_Fint *type, char *type_name, MPI_Fint *resultlen, MPI_Fint *ierr, int name_len));
|
||||
|
@ -33,7 +33,7 @@ OMPI_GENERATE_F77_BINDINGS (PMPI_TYPE_GET_CONTENTS,
|
||||
pmpi_type_get_contents_,
|
||||
pmpi_type_get_contents__,
|
||||
pmpi_type_get_contents_f,
|
||||
(MPI_Fint *mtype, MPI_Fint *max_integers, MPI_Fint *max_addresses, MPI_Fint *max_datatypes, MPI_Fint *array_of_integers, MPI_Fint *array_of_addresses, MPI_Fint *array_of_datatypes, MPI_Fint *ierr),
|
||||
(MPI_Fint *mtype, MPI_Fint *max_integers, MPI_Fint *max_addresses, MPI_Fint *max_datatypes, MPI_Fint *array_of_integers, MPI_Aint *array_of_addresses, MPI_Fint *array_of_datatypes, MPI_Fint *ierr),
|
||||
(mtype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes, ierr) )
|
||||
#endif
|
||||
|
||||
@ -50,7 +50,7 @@ OMPI_GENERATE_F77_BINDINGS (MPI_TYPE_GET_CONTENTS,
|
||||
mpi_type_get_contents_,
|
||||
mpi_type_get_contents__,
|
||||
mpi_type_get_contents_f,
|
||||
(MPI_Fint *mtype, MPI_Fint *max_integers, MPI_Fint *max_addresses, MPI_Fint *max_datatypes, MPI_Fint *array_of_integers, MPI_Fint *array_of_addresses, MPI_Fint *array_of_datatypes, MPI_Fint *ierr),
|
||||
(MPI_Fint *mtype, MPI_Fint *max_integers, MPI_Fint *max_addresses, MPI_Fint *max_datatypes, MPI_Fint *array_of_integers, MPI_Aint *array_of_addresses, MPI_Fint *array_of_datatypes, MPI_Fint *ierr),
|
||||
(mtype, max_integers, max_addresses, max_datatypes, array_of_integers, array_of_addresses, array_of_datatypes, ierr) )
|
||||
#endif
|
||||
|
||||
@ -65,7 +65,7 @@ static const char FUNC_NAME[] = "MPI_TYPE_GET_CONTENTS";
|
||||
void mpi_type_get_contents_f(MPI_Fint *mtype, MPI_Fint *max_integers,
|
||||
MPI_Fint *max_addresses, MPI_Fint *max_datatypes,
|
||||
MPI_Fint *array_of_integers,
|
||||
MPI_Fint *array_of_addresses,
|
||||
MPI_Aint *array_of_addresses,
|
||||
MPI_Fint *array_of_datatypes, MPI_Fint *ierr)
|
||||
{
|
||||
MPI_Aint *c_address_array = NULL;
|
||||
@ -107,7 +107,7 @@ void mpi_type_get_contents_f(MPI_Fint *mtype, MPI_Fint *max_integers,
|
||||
|
||||
if (MPI_SUCCESS == OMPI_FINT_2_INT(*ierr)) {
|
||||
for (i = 0; i < *max_addresses; i++) {
|
||||
array_of_addresses[i] = (MPI_Fint)c_address_array[i];
|
||||
array_of_addresses[i] = c_address_array[i];
|
||||
}
|
||||
for (i = 0; i < *max_datatypes; i++) {
|
||||
array_of_datatypes[i] = MPI_Type_c2f(c_datatype_array[i]);
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user