Skip to content

Commit a7cb425

Browse files
PhilippOtteggouaillardet
authored andcommitted
fortran/use-mpi-f08: Corrections to Fortran08 signatures of collectives
Corrected the signatures of the collectives used by the Fortran 2008 interface to state correct intent for inout arguments and use the ASYNCHRONOUS attribute in non-blocking collective calls. Also corrected the C-bindings in Fortran accordingly Signed-off-by: Philipp Otte <[email protected]> (back-ported from commit e98d794)
1 parent 468418a commit a7cb425

35 files changed

+182
-120
lines changed

ompi/mpi/fortran/use-mpi-f08/allgather_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ subroutine MPI_Allgather_f08(sendbuf,sendcount,sendtype,recvbuf,recvcount,recvty
1111
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1212
use :: mpi_f08, only : ompi_allgather_f
1313
implicit none
14-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
14+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1516
INTEGER, INTENT(IN) :: sendcount, recvcount
1617
TYPE(MPI_Datatype), INTENT(IN) :: sendtype
1718
TYPE(MPI_Datatype), INTENT(IN) :: recvtype

ompi/mpi/fortran/use-mpi-f08/allgatherv_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ subroutine MPI_Allgatherv_f08(sendbuf,sendcount,sendtype,recvbuf,recvcounts,&
1212
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1313
use :: mpi_f08, only : ompi_allgatherv_f
1414
implicit none
15-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
16+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1617
INTEGER, INTENT(IN) :: sendcount
1718
INTEGER, INTENT(IN) :: recvcounts(*), displs(*)
1819
TYPE(MPI_Datatype), INTENT(IN) :: sendtype

ompi/mpi/fortran/use-mpi-f08/allreduce_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ subroutine MPI_Allreduce_f08(sendbuf,recvbuf,count,datatype,op,comm,ierror)
1111
use :: mpi_f08_types, only : MPI_Datatype, MPI_Op, MPI_Comm
1212
use :: mpi_f08, only : ompi_allreduce_f
1313
implicit none
14-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
14+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1516
INTEGER, INTENT(IN) :: count
1617
TYPE(MPI_Datatype), INTENT(IN) :: datatype
1718
TYPE(MPI_Op), INTENT(IN) :: op

ompi/mpi/fortran/use-mpi-f08/alltoall_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ subroutine MPI_Alltoall_f08(sendbuf,sendcount,sendtype,recvbuf,&
1212
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1313
use :: mpi_f08, only : ompi_alltoall_f
1414
implicit none
15-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
16+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1617
INTEGER, INTENT(IN) :: sendcount, recvcount
1718
TYPE(MPI_Datatype), INTENT(IN) :: sendtype
1819
TYPE(MPI_Datatype), INTENT(IN) :: recvtype

ompi/mpi/fortran/use-mpi-f08/alltoallv_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ subroutine MPI_Alltoallv_f08(sendbuf,sendcounts,sdispls,sendtype,recvbuf,&
1212
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1313
use :: mpi_f08, only : ompi_alltoallv_f
1414
implicit none
15-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
16+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1617
INTEGER, INTENT(IN) :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*)
1718
TYPE(MPI_Datatype), INTENT(IN) :: sendtype
1819
TYPE(MPI_Datatype), INTENT(IN) :: recvtype

ompi/mpi/fortran/use-mpi-f08/alltoallw_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ subroutine MPI_Alltoallw_f08(sendbuf,sendcounts,sdispls,sendtypes,&
1212
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1313
use :: mpi_f08, only : ompi_alltoallw_f
1414
implicit none
15-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
16+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1617
INTEGER, INTENT(IN) :: sendcounts(*), sdispls(*), recvcounts(*), rdispls(*)
1718
TYPE(MPI_Datatype), INTENT(IN) :: sendtypes(*)
1819
TYPE(MPI_Datatype), INTENT(IN) :: recvtypes(*)

ompi/mpi/fortran/use-mpi-f08/bcast_f08.F90

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ subroutine MPI_Bcast_f08(buffer,count,datatype,root,comm,ierror)
1111
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1212
use :: mpi_f08, only : ompi_bcast_f
1313
implicit none
14-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: buffer
14+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: buffer
1515
INTEGER, INTENT(IN) :: count, root
1616
TYPE(MPI_Datatype), INTENT(IN) :: datatype
1717
TYPE(MPI_Comm), INTENT(IN) :: comm

ompi/mpi/fortran/use-mpi-f08/exscan_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ subroutine MPI_Exscan_f08(sendbuf,recvbuf,count,datatype,op,comm,ierror)
1111
use :: mpi_f08_types, only : MPI_Datatype, MPI_Op, MPI_Comm
1212
use :: mpi_f08, only : ompi_exscan_f
1313
implicit none
14-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
14+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1516
INTEGER, INTENT(IN) :: count
1617
TYPE(MPI_Datatype), INTENT(IN) :: datatype
1718
TYPE(MPI_Op), INTENT(IN) :: op

ompi/mpi/fortran/use-mpi-f08/gather_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ subroutine MPI_Gather_f08(sendbuf,sendcount,sendtype,recvbuf,recvcount,&
1212
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1313
use :: mpi_f08, only : ompi_gather_f
1414
implicit none
15-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
16+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1617
INTEGER, INTENT(IN) :: sendcount, recvcount, root
1718
TYPE(MPI_Datatype), INTENT(IN) :: sendtype
1819
TYPE(MPI_Datatype), INTENT(IN) :: recvtype

ompi/mpi/fortran/use-mpi-f08/gatherv_f08.F90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ subroutine MPI_Gatherv_f08(sendbuf,sendcount,sendtype,recvbuf,recvcounts,&
1212
use :: mpi_f08_types, only : MPI_Datatype, MPI_Comm
1313
use :: mpi_f08, only : ompi_gatherv_f
1414
implicit none
15-
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf, recvbuf
15+
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: sendbuf
16+
OMPI_FORTRAN_IGNORE_TKR_TYPE :: recvbuf
1617
INTEGER, INTENT(IN) :: sendcount, root
1718
INTEGER, INTENT(IN) :: recvcounts(*), displs(*)
1819
TYPE(MPI_Datatype), INTENT(IN) :: sendtype

0 commit comments

Comments
 (0)