OK, finally got it. MPI_WAITALL gets MPI_STATUSES_IGNORE, but MPI_WAITANY gets MPI_STATUS_IGNORE. I'm otherwise familiar with just MPI_WAIT.
Thanks again! - Ted On Jul 27, 2015, at 4:07 PM, Jeff Squyres (jsquyres) <jsquy...@cisco.com> wrote: > On Jul 27, 2015, at 4:45 PM, Ted Mansell <ted.mans...@noaa.gov> wrote: >> >> That was a fast response! Of course, it's not my code :). > > :-) > >> I had looked at the arguments and thought they were OK, but eventually >> noticed that the fourth argument is supposed to be an *array* of statuses. >> Apparently passing 'MPI_STATUS_IGNORE' there did not cause a problem for the >> 'mpif.h' interface. > > Yes, the mpif.h interface does not check your arguments at compile time. The > "mpi" and "mpi_f08" interfaces do. > >> I also tried MPI_STATUSES_IGNORE, but it still didn't like it, so I created >> an array [integer :: statuses(MPI_STATUS_SIZE)] that it was happy with. So >> your suggestion was correct -- thank you! >> >> Shouldn't MPI_STATUSES_IGNORE work, however? > > Yes, it should. What didn't work -- can you send a test program and/or exact > error output from the compiler? > >> Or is it something about using the module interface being pickier than the >> include file? (I suppose with the explicit "intent(out)" in the interface.) >> I don't know what flavor of MPI was used to test the code, but perhaps it >> was less picky, because it must have worked for the developer. >> >> -- Ted >> >> >> On Jul 27, 2015, at 2:19 PM, Jeff Squyres (jsquyres) <jsquy...@cisco.com> >> wrote: >> >>>> On Jul 27, 2015, at 3:15 PM, Ted Mansell <ted.mans...@noaa.gov> wrote: >>>> >>>> Hi, >>>> >>>> I'm getting a compile-time error on MPI_WAITALL and MPI_WAITANY when using >>>> "use mpi": >>>> >>>> parcel.f90(555): error #6285: There is no matching specific subroutine for >>>> this generic subroutine call. [MPI_WAITANY] >>>> call mpi_waitany(numprocs-1,reqt(1),index,MPI_STATUS_IGNORE,ierr) >>>> ---------------^ >>> >>> This error *usually* means an error in your source code. It's the Fortran >>> compiler's way of saying "I couldn't find a version of the MPI_WAITANY >>> subroutine that has the type of arguments that you have provided." >>> >>> Can you send a short reproducer program that shows this error? >>> >>>> comm.f90(1516): error #6285: There is no matching specific subroutine for >>>> this generic subroutine call. [MPI_WAITALL] >>>> call MPI_WAITALL(nr,reqs(3),MPI_STATUSES_IGNORE,ierr) >>>> -----------^ >>>> comm.f90(1737): error #6285: There is no matching specific subroutine for >>>> this generic subroutine call. [MPI_WAITANY] >>>> call MPI_WAITANY(nr,reqs(1),index,MPI_STATUS_IGNORE,ierr) >>>> -----------^ >>>> >>>> but it compiles fine with the alternate >>>> >>>> include 'mpif.h' >>>> >>>> This is OS X 10.9.5 with Intel ifort 13, Openmpi 1.8.4. I did try >>>> substituting a generic integer variable as the fourth argument, but it >>>> made no difference. >>>> >>>> The compiler appears to be finding the module, and seems to find >>>> everything else needed for this particular code (e.g., MPI_IRECV, >>>> MPI_ISEND, contants, etc.) The mpi.mod is built in the >>>> "use-mpi-ignore-tkr" directory, if that matters. >>>> >>>> Is there any known issue here? I have not tried with gfortran yet. This is >>>> on a stand-alone Mac Pro tower, so nothing too fancy. As far as I can >>>> tell, it is not using some other version of mpi.mod. >>>> >>>> Thanks.... >>>> -- Ted >>>> >>>> __________________________________________________________ >>>> | Ted Mansell <ted.mans...@noaa.gov> >>>> | National Severe Storms Laboratory >>>> |-------------------------------------------------------------- >>>> | "The contents of this message are mine personally and >>>> | do not reflect any position of the U.S. Government or NOAA." >>>> |-------------------------------------------------------------- >>>> >>>> _______________________________________________ >>>> users mailing list >>>> us...@open-mpi.org >>>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users >>>> Link to this post: >>>> http://www.open-mpi.org/community/lists/users/2015/07/27336.php >>> >>> >>> -- >>> Jeff Squyres >>> jsquy...@cisco.com >>> For corporate legal information go to: >>> http://www.cisco.com/web/about/doing_business/legal/cri/ >>> >>> _______________________________________________ >>> users mailing list >>> us...@open-mpi.org >>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users >>> Link to this post: >>> http://www.open-mpi.org/community/lists/users/2015/07/27337.php >> >> _______________________________________________ >> users mailing list >> us...@open-mpi.org >> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users >> Link to this post: >> http://www.open-mpi.org/community/lists/users/2015/07/27338.php > > > -- > Jeff Squyres > jsquy...@cisco.com > For corporate legal information go to: > http://www.cisco.com/web/about/doing_business/legal/cri/ > > _______________________________________________ > users mailing list > us...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users > Link to this post: > http://www.open-mpi.org/community/lists/users/2015/07/27339.php