1
1

fortran: fix compile issue with ABSoft compilers

one more fix ...

cmr=v1.8.2:ticket=trac:4792

This commit was SVN r32255.

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

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

@ -2441,6 +2441,17 @@ subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
end subroutine ompi_win_shared_query_f
#else
subroutine ompi_win_shared_query_f_error(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_error
subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror)
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR

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

@ -53,6 +53,7 @@ subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror)
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
use :: mpi_f08_types, only : MPI_ADDRESS_KIND
use :: mpi_f08, only : ompi_win_shared_query_f_error
implicit none
INTEGER, INTENT(IN) :: win
INTEGER, INTENT(IN) :: rank
@ -60,17 +61,16 @@ subroutine ompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
if (present(ierror) then
call MPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr, ierror)
else
call MPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr)
endif
INTEGER :: cerror
call ompi_win_shared_query_f_error(win, rank, size, disp_unit, baseptr, cerror)
if (present(ierror)) ierror = cerror
end subroutine ompi_win_shared_query_f
subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror)
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
use :: mpi_f08_types, only : MPI_ADDRESS_KIND
use :: mpi_f08, only : pompi_win_shared_query_f_error
implicit none
INTEGER, INTENT(IN) :: win
INTEGER, INTENT(IN) :: rank
@ -78,10 +78,8 @@ subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
if (present(ierror) then
call PMPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr, ierror)
else
call PMPI_Win_shared_query_f08(win, rank, size, disp_unit, baseptr)
endif
INTEGER :: cerror
call pompi_win_shared_query_f_error(win, rank, size, disp_unit, baseptr, cerror)
if (present(ierror)) ierror = cerror
end subroutine pompi_win_shared_query_f
#endif

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

@ -2278,7 +2278,19 @@ subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
end subroutine pompi_win_shared_query_f
#else
subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
subroutine pompi_win_shared_query_f_error(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 pompi_win_shared_query_f_error
subroutine pmpi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
ierror)
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR
use :: mpi_f08_types, only : MPI_ADDRESS_KIND
@ -2288,7 +2300,7 @@ subroutine pompi_win_shared_query_f(win, rank, size, disp_unit, baseptr,&
INTEGER, INTENT(OUT) :: disp_unit
TYPE(C_PTR), INTENT(OUT) :: baseptr
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
end subroutine pompi_win_shared_query_f
end subroutine pmpi_win_shared_query_f
#endif
subroutine pompi_win_start_f(group,assert,win,ierror) &