This problem still exists in OpenMPI 1.1a3r9704 (Apr 24, 2006), I reported it for 9663 (Apr 20, 2006).

Michael

On Apr 21, 2006, at 12:32 AM, Jeff Squyres (jsquyres) wrote:

You're correct on all counts.

I've corrected the .h.sh script in the trunk and will get the correct
XSL (!) fixes in shortly (even the .h.sh script is generated from a
marked up version of mpi.h -- don't ask ;-) ).  I also corrected
type_get_attr and win_get_attr.

Thanks!


-----Original Message-----
From: users-boun...@open-mpi.org
[mailto:users-boun...@open-mpi.org] On Behalf Of Michael Kluskens
Sent: Thursday, April 20, 2006 3:22 PM
To: Open MPI Users
Subject: Re: [OMPI users] f90 interface error?: MPI_Comm_get_attr

The file 'ompi/mpi/f90/mpi-f90-interfaces.h' is automatically
generated by ompi/mpi/f90/scripts/mpi-f90-interfaces.h.sh?  I
couldn't get my temp fix to stick so I modified the latter.

Should be?

----------------------------------------
subroutine ${procedure}(comm, comm_keyval, attribute_val, flag, ierr)
   include 'mpif.h'
   integer, intent(in) :: comm
   integer, intent(in) :: comm_keyval
   integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
   logical, intent(out) :: flag
   integer, intent(out) :: ierr
end subroutine ${procedure}

EOF
}

start MPI_Comm_get_attr small
output MPI_Comm_get_attr
end MPI_Comm_get_attr
----------------------------------------

I notice that f77 is correct in: ompi/mpi/f77/prototypes_mpi.h
PN(void, mpi_comm_get_attr, MPI_COMM_GET_ATTR, (MPI_Fint *comm,
MPI_Fint *comm_keyval, MPI_Aint *attribute_val, MPI_Flogical *flag,
MPI_Fint *ierr));

On Apr 20, 2006, at 2:24 PM, Michael Kluskens wrote:

Error in:

openmpi-1.1a3r9663/ompi/mpi/f90/mpi-f90-interfaces.h

subroutine MPI_Comm_get_attr(comm, comm_keyval, attribute_val, flag,
ierr)
   include 'mpif.h'
   integer, intent(in) :: comm
   integer, intent(in) :: comm_keyval
   integer(kind=MPI_ADDRESS_KIND), intent(out) :: attribute_val
   integer, intent(out) :: flag
   integer, intent(out) :: ierr
end subroutine MPI_Comm_get_attr

flag should be a logical.  Only in C is it an integer.

Compare with page 294 of MPI--The Complete Reference, Volume 1 and
page 176 of Using MPI, 2nd ed.

In my test case I'm using:

   call MPI_Comm_get_attr(MPI_COMM_WORLD, MPI_UNIVERSE_SIZE, &
               universe_size, flag, ierr)

   integer :: ierr
   integer  (kind=MPI_ADDRESS_KIND) :: universe_size
   logical :: flag

This compiled and worked as of version 9427.

Michael

_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


Reply via email to