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

Reply via email to