<div dir="ltr"><div><br></div><div>Hi all,</div><div><br></div><div>  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.<br></div><div><br></div><div>  Long story short, if I try the following code:</div><div><span style="font-family:monospace"><br></span></div><div><span style="font-family:monospace"><i>program foo</i></span></div><div><span style="font-family:monospace"><i>  use mpi, only: mpi_bcast</i></span></div><div><span style="font-family:monospace"><i>end program foo</i></span></div><div><br></div><div>  ... This fails to compile in MPICH (3.4.2, at least), IntelMPI and MVAPICH, but <i>does</i> 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?</div><div><br></div><div>  Any insight would be greatly appreciated!</div><div><br></div><div>  Thanks,</div><div>  - Brian</div><div><br></div></div>