Hi all,
I figure this is one of those things in the standard, but I figured I'd get a better explanation asking here than digging through that myself.
Long story short, if I try the following code:
program foo
use mpi, only: mpi_bcast
end program foo
... This fails to compile in MPICH (3.4.2, at least), IntelMPI and MVAPICH, but does work on OpenMPI and SGI MPT, at least on systems I've tried. Replacing the 'use, only' with just a 'use' directive works fine. And MPI_BCAST is just an example here; things like 'MPI_Finalize' and 'MPI_Integer' appear to be in the module, but MPI_Send also fails. Is this a scenario where the standard doesn't support this, but OpenMPI and MPT do it as a matter of convenience vs strict adherence found in the MPICH-based libraries? Or am I missing some simple issue?
Any insight would be greatly appreciated!
Thanks,
- Brian