1
1

mpi_f08: further fixes for MPI_BUFFER_DETACH

A few minor fixes in addition to
open-mpi/ompi@bd94da7de4 and
open-mpi/ompi@fc69c0be24.
Этот коммит содержится в:
Jeff Squyres 2015-07-04 05:17:42 -07:00
родитель bd94da7de4
Коммит 4694b16256
2 изменённых файлов: 11 добавлений и 6 удалений

Просмотреть файл

@ -79,6 +79,7 @@ void ompi_buffer_detach_f(char *buffer, MPI_Fint *size, MPI_Fint *ierr)
int c_ierr;
void *dummy;
OMPI_SINGLE_NAME_DECL(size);
c_ierr = MPI_Buffer_detach(&dummy, OMPI_SINGLE_NAME_CONVERT(size));
if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
@ -96,15 +97,13 @@ void ompi_buffer_detach_f08(char *buffer, MPI_Fint *size, MPI_Fint *ierr)
{
int c_ierr;
void *dummy;
OMPI_SINGLE_NAME_DECL(size);
c_ierr = MPI_Buffer_detach(&dummy, OMPI_SINGLE_NAME_CONVERT(size));
if (NULL != ierr) {
*(void **)buffer = dummy;
*ierr = OMPI_INT_2_FINT(c_ierr);
}
if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
if (MPI_SUCCESS == c_ierr) {
*(void **)buffer = dummy;
OMPI_SINGLE_INT_2_FINT(size);
}
}

Просмотреть файл

@ -9,7 +9,7 @@
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2006-2015 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2011-2013 Inria. All rights reserved.
* Copyright (c) 2011-2013 Universite Bordeaux 1
* Copyright (c) 2013-2015 Los Alamos National Security, LLC. All rights
@ -459,6 +459,12 @@ PN2(void, MPI_Comm_null_delete_fn, mpi_comm_null_delete_fn, MPI_COMM_NULL_DELETE
PN2(void, MPI_Comm_null_copy_fn, mpi_comm_null_copy_fn, MPI_COMM_NULL_COPY_FN, (MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Aint* extra_state, MPI_Aint* attribute_val_in, MPI_Aint* attribute_val_out, ompi_fortran_logical_t * flag, MPI_Fint* ierr));
PN2(void, MPI_Comm_dup_fn, mpi_comm_dup_fn, MPI_COMM_DUP_FN, (MPI_Fint* comm, MPI_Fint* comm_keyval, MPI_Aint* extra_state, MPI_Aint* attribute_val_in, MPI_Aint* attribute_val_out, ompi_fortran_logical_t * flag, MPI_Fint* ierr));
/*
* The following is an mpi_f08-module-specific function that does not
* fit in to the normal/templated prototypes, above.
*/
void ompi_buffer_detach_f08(char *buffer, MPI_Fint *size, MPI_Fint *ierr);
END_C_DECLS
#endif