MPI_Datatypeis indeed a pointer in Open MPI, but it is a number in MPICH iirc. (older) Fortran uses integer in order to refer a datatype, so one option is to use the following subroutines MPI_Fint MPI_Type_c2f(MPI_Datatype datatype); MPI_Datatype MPI_Type_f2c(MPI_Fint datatype)...