@@ -5,6 +5,7 @@ module mpi
55 integer , parameter :: MPI_THREAD_FUNNELED = 1
66
77 integer , parameter :: MPI_INTEGER = - 10002
8+ integer , parameter :: MPI_REAL = - 10003
89 integer , parameter :: MPI_DOUBLE_PRECISION = - 10004
910 integer , parameter :: MPI_REAL4 = - 10013
1011 integer , parameter :: MPI_REAL8 = - 10014
@@ -173,10 +174,12 @@ integer(kind=MPI_HANDLE_KIND) function handle_mpi_info_f2c(info_f) result(c_info
173174 end function handle_mpi_info_f2c
174175
175176 integer (kind= MPI_HANDLE_KIND) function handle_mpi_datatype_f2c(datatype_f) result(c_datatype)
176- use mpi_c_bindings, only: c_mpi_float, c_mpi_double, c_mpi_int, c_mpi_logical, c_mpi_character
177+ use mpi_c_bindings, only: c_mpi_float, c_mpi_double, c_mpi_int, c_mpi_logical, c_mpi_character, c_mpi_real
177178 integer , intent (in ) :: datatype_f
178179 if (datatype_f == MPI_REAL4) then
179180 c_datatype = c_mpi_float
181+ else if (datatype_f == MPI_REAL) then
182+ c_datatype = c_mpi_real
180183 else if (datatype_f == MPI_REAL8 .OR. datatype_f == MPI_DOUBLE_PRECISION) then
181184 c_datatype = c_mpi_double
182185 else if (datatype_f == MPI_INTEGER) then
0 commit comments