A high quality MPI-/ implementation should provide a mechanism to
ensure that MPI-/ choice arguments do not cause fatal compile-time or run-time
errors due to type mismatch. An MPI-/ implementation may require
applications to use the mpi module, or require that it be
compiled with a particular compiler flag, in order to avoid type
mismatch problems.
-
- Advice
to implementors.
In the case where the compiler does not generate errors, nothing needs
to be done to the existing interface. In the case where the compiler
may generate errors, a set of overloaded
functions may be used. See the paper of M. Hennecke [8].
Even if the compiler does not generate errors, explicit interfaces for
all routines would be useful for detecting errors in the argument
list. Also, explicit interfaces which give INTENT information
can reduce the amount of copying for BUF(*) arguments. (End of advice to implementors.)
MPI-Standard for MARMOT