[MPI3 Fortran] [Mpi-comments] MPI 3.0: Fortran 2008 interface - issue with the LOGICAL kind
burnus at net-b.de
Thu Mar 21 14:13:33 CDT 2013
Craig Rasmussen wrote:
> BIND(FORTRAN, name="MPI_Test_f08") seems like a great idea.
> Unfortunately I can't find it in the Fortran standard :-(
I have to admit that I do not really see the advantage of having such a
binding name. Surely, it voids issues to find out about the name
mangling of a compiler. But besides the mangling, different compilers
also handle other things differently:
* Function results: By return value or as by-reference argument.
Especially for COMPLEX
* Handling of string lengths - especially for character arrays
* Array descriptors - might be different from the TS29113 array descriptor
In case of BIND(C), most of the ABI issues is defined by the platform
ABI together with the C standard, which mostly solves the interop issues
between different C compiler and different Fortran compilers for BIND(C)
procedures. But NAME()/Bind(Fortran) doesn't.
With all those issues, I do not really see how NAME(...) or
BIND(Fortran,name=...) would help - except in very special cases.
More information about the mpiwg-fortran