Fix to George's and my bugs. :-) A comedy of errors made the test
case still compile properly, even though these bindings were wrong. :-( - Both interface functions are necessary. - I accidentally had a subroutine interface named the same thing as the back-end F77 function -- a definite no-no. Ensure that all F90 interface functions have a suffix to make them different than the back-end F77 function names. - Also parameterize the output() subroutine on the type of the argvs parameter to switch between the character arrays and the integer. This commit was SVN r9202.
Этот коммит содержится в:
родитель
a649ebc7c6
Коммит
2cceba7230
@ -15438,7 +15438,7 @@ procedure='MPI_Comm_spawn_multiple'
|
||||
|
||||
echo "interface ${procedure}"
|
||||
echo
|
||||
proc="${procedure}"
|
||||
proc="${procedure}N"
|
||||
echo "subroutine ${proc}(count, array_of_commands, array_of_argv, array_of_maxprocs, array_of_info, &
|
||||
root, comm, intercomm, array_of_errcodes, ierr)"
|
||||
echo " use mpi_kinds"
|
||||
|
@ -4,10 +4,8 @@
|
||||
|
||||
output() {
|
||||
procedure=$1
|
||||
proc=$2
|
||||
if test "$proc" = ""; then
|
||||
proc=$procedure
|
||||
fi
|
||||
proc="$1$2"
|
||||
type=$3
|
||||
|
||||
cat <<EOF
|
||||
subroutine ${proc}(count, array_of_commands, array_of_argv, &
|
||||
@ -16,7 +14,7 @@ subroutine ${proc}(count, array_of_commands, array_of_argv, &
|
||||
use mpi_kinds
|
||||
integer, intent(in) :: count
|
||||
character(len=*), dimension(*), intent(in) :: array_of_commands
|
||||
integer, intent(in) :: array_of_argv
|
||||
$type, intent(in) :: array_of_argv
|
||||
integer, dimension(*), intent(in) :: array_of_maxprocs
|
||||
integer, dimension(*), intent(in) :: array_of_info
|
||||
integer, intent(in) :: root
|
||||
@ -33,4 +31,5 @@ end subroutine ${proc}
|
||||
EOF
|
||||
}
|
||||
|
||||
output MPI_Comm_spawn_multiple MPI_Comm_spawn_multipleAN
|
||||
output MPI_Comm_spawn_multiple N "character(len=*), dimension(count,*)"
|
||||
output MPI_Comm_spawn_multiple AN integer
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user