53 SUBROUTINE mpl_message(KERROR,CDMESSAGE,CDSTRING,LDABORT)
56 #ifdef USE_8_BYTE_WORDS 58 mpi_error_string => mpi_error_string8
64 INTEGER(KIND=JPIM),
INTENT(IN),
OPTIONAL :: KERROR
65 CHARACTER*(*),
INTENT(IN) :: CDMESSAGE
66 CHARACTER*(*),
INTENT(IN),
OPTIONAL :: CDSTRING
67 LOGICAL ,
INTENT(IN),
OPTIONAL :: LDABORT
69 CHARACTER*(MPI_MAX_ERROR_STRING) :: CLMPI_ERROR
70 CHARACTER*10 :: CLERROR
71 INTEGER(KIND=JPIM) :: IRESULTLEN,IERROR
73 IF(
PRESENT(kerror))
THEN 74 WRITE(clerror,
'(I10)') kerror
78 IF(
PRESENT(cdstring))
THEN 79 WRITE(
mpl_unit,
'(4A,I8)') cdstring,cdmessage,clerror, &
82 WRITE(
mpl_unit,
'(3A,I8)') cdmessage,clerror, &
86 IF(
PRESENT(kerror))
THEN 87 CALL mpi_error_string(kerror,clmpi_error,iresultlen,ierror)
94 IF(
PRESENT(ldabort))
THEN 96 WRITE(0,
'(2A,I8)') clmpi_error(1:iresultlen),
' in process ',
mpl_rank subroutine, public mpl_message(KERROR, CDMESSAGE, CDSTRING, LDABORT)
subroutine, public mpl_abort(CDMESSAGE)
integer(kind=jpim) mpl_rank
integer(kind=jpim) mpl_unit