Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Jeff Squyres \(jsquyres\) (jsquyres_at_[hidden])
Date: 2006-05-01 23:50:03


You're absolutely right -- this is another logical type that we missed.

This has now been fixed on both the trunk and the v1.1 branch; should be
in tomorrow's snapshots.

Thanks!
 

> -----Original Message-----
> From: users-bounces_at_[hidden]
> [mailto:users-bounces_at_[hidden]] On Behalf Of Michael Kluskens
> Sent: Sunday, April 30, 2006 12:17 PM
> To: Open MPI Users
> Subject: [OMPI users] MPI_Intercomm_Merge -- Fortran
>
> MPI_Intercomm_Merge( intercomm, high, newintracomm, ier )
>
> None of the books I have state the variable type of the second
> argument for MPI_Intercomm_Merge for Fortran. Class notes I have
> from David Cronk state it is a Logical.
>
> In C it is an "int" with values of true and false.
>
> Looking at OpenMPI 1.1a4r9780 (& openmpi-1.2a1r9780) I find the
> following:
>
> ./ompi/mpi/f77/intercomm_merge_f.c:
>
> OMPI_GENERATE_F77_BINDINGS (PMPI_INTERCOMM_MERGE,
> pmpi_intercomm_merge,
> pmpi_intercomm_merge_,
> pmpi_intercomm_merge__,
> pmpi_intercomm_merge_f,
> (MPI_Fint *intercomm,
> MPI_Flogical *high,
> MPI_Fint *newintercomm, MPI_Fint *ierr),
> (intercomm, high, newintercomm, ierr) )
>
> and
>
> *ierr = MPI_Intercomm_merge (c_intercomm, OMPI_LOGICAL_2_INT
> (*high),
> &c_newcomm);
>
> This implies to me that in Fortran the second argument should be a
> logical which makes sense.
>
>
> But in ./ompi/mpi/f90/mpi-f90-interfaces.h, I find:
> -------------
> interface MPI_Intercomm_merge
>
> subroutine MPI_Intercomm_merge(intercomm, high, newintercomm, ierr)
> include 'mpif.h'
> integer, intent(in) :: intercomm
> integer, intent(in) :: high
> integer, intent(out) :: newintercomm
> integer, intent(out) :: ierr
> end subroutine MPI_Intercomm_merge
>
> end interface MPI_Intercomm_merge
> -------------
> which I suspect is wrong or at least incomplete with regards to the
> second argument.
>
> In which case the problem is also in ./ompi/mpi/f90/scripts/mpi-f90-
> interfaces.h.sh
> ----------
> subroutine ${procedure}(intercomm, high, newintercomm, ierr)
> include 'mpif.h'
> integer, intent(in) :: intercomm
> integer, intent(in) :: high
> integer, intent(out) :: newintercomm
> integer, intent(out) :: ierr
> end subroutine ${procedure}
>
> EOF
> }
>
> start MPI_Intercomm_merge small
> output_162 MPI_Intercomm_merge
> end MPI_Intercomm_merge
> -------------
>
> Michael
>
> ps. MPI_Comm_get_attr is fixed in both these versions.
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>