1
1

fortran: fix compile issue with ABSoft compilers

Simplify and fix the r32246

cmr=v1.8.2:ticket=trac:4792

This commit was SVN r32254.

The following SVN revision numbers were found above:
  r32246 --> open-mpi/ompi@08d2a1a48d

The following Trac tickets were found above:
  Ticket 4792 --> https://svn.open-mpi.org/trac/ompi/ticket/4792
Этот коммит содержится в:
Gilles Gouaillardet 2014-07-17 06:00:32 +00:00
родитель 948432da2a
Коммит 232d4dbb7b
2 изменённых файлов: 7 добавлений и 33 удалений

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

@ -49,18 +49,6 @@ module mpi_f08
end module mpi_f08 end module mpi_f08
#if ! OMPI_FORTRAN_HAVE_BIND_C_WITH_OPTIONAL_ARGS #if ! OMPI_FORTRAN_HAVE_BIND_C_WITH_OPTIONAL_ARGS
subroutine ompi_win_shared_query_f_with_ierror(win, rank, size, disp_unit, baseptr,&
ierror) BIND(C, name="ompi_win_shared_query_f")
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
use :: mpi_f08_types, only : MPI_ADDRESS_KIND
INTEGER, INTENT(IN) :: win
INTEGER, INTENT(IN) :: rank
INTEGER(KIND=MPI_ADDRESS_KIND), INTENT(OUT) :: size
INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, INTENT(OUT) :: ierror
end subroutine ompi_win_shared_query_f_with_ierror
subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,& subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror) ierror)
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
@ -72,26 +60,13 @@ subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, INTENT(OUT) :: disp_unit INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, OPTIONAL, INTENT(OUT) :: ierror INTEGER, OPTIONAL, INTENT(OUT) :: ierror
INTEGER :: ilerror if (present(ierror) then
if (PRESENT(ierror)) then call MPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr, ierror)
call ompi_win_shared_query_f_with_ierror(win, rank, size, disp_unit, baseptr, ierror)
else else
call ompi_win_shared_query_f_with_ierror(win, rank, size, disp_unit, baseptr, ilerror) call MPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr)
endif endif
end subroutine ompi_win_shared_query_f end subroutine ompi_win_shared_query_f
subroutine pompi_win_shared_query_f_with_ierror(win, rank, size, disp_unit, baseptr,&
ierror) BIND(C, name="pompi_win_shared_query_f")
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
use :: mpi_f08_types, only : MPI_ADDRESS_KIND
INTEGER, INTENT(IN) :: win
INTEGER, INTENT(IN) :: rank
INTEGER(KIND=MPI_ADDRESS_KIND), INTENT(OUT) :: size
INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, INTENT(OUT) :: ierror
end subroutine pompi_win_shared_query_f_with_ierror
subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,& subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror) ierror)
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
@ -103,11 +78,10 @@ subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, INTENT(OUT) :: disp_unit INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, OPTIONAL, INTENT(OUT) :: ierror INTEGER, OPTIONAL, INTENT(OUT) :: ierror
INTEGER :: ilerror if (present(ierror) then
if (PRESENT(ierror)) then call PMPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr, ierror)
call pompi_win_shared_query_f_with_ierror(win, rank, size, disp_unit, baseptr, ierror)
else else
call pompi_win_shared_query_f_with_ierror(win, rank, size, disp_unit, baseptr, ilerror) call PMPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr)
endif endif
end subroutine pompi_win_shared_query_f end subroutine pompi_win_shared_query_f
#endif #endif

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

@ -2267,7 +2267,7 @@ end subroutine pompi_win_post_f
#if OMPI_FORTRAN_HAVE_BIND_C_WITH_OPTIONAL_ARGS #if OMPI_FORTRAN_HAVE_BIND_C_WITH_OPTIONAL_ARGS
subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,& subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror) BIND(C, name="ompi_win_shared_query_f") ierror) BIND(C, name="pompi_win_shared_query_f")
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
use :: mpi_f08_types, only : MPI_ADDRESS_KIND use :: mpi_f08_types, only : MPI_ADDRESS_KIND
INTEGER, INTENT(IN) :: win INTEGER, INTENT(IN) :: win