Skip to content

Commit a4de12d

Browse files
committed
use ESMF_FINALIZE here
1 parent 5c715db commit a4de12d

File tree

1 file changed

+5
-11
lines changed

1 file changed

+5
-11
lines changed

share/shr_abort_mod.F90

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ module shr_abort_mod
1010
use, intrinsic :: iso_fortran_env, only: output_unit, error_unit
1111

1212
use shr_kind_mod, only : shr_kind_in, shr_kind_cx
13-
use shr_mpi_mod , only : shr_mpi_initialized, shr_mpi_abort
1413
use shr_log_mod , only : s_logunit => shr_log_Unit
1514

1615
#ifdef CPRNAG
@@ -36,7 +35,7 @@ module shr_abort_mod
3635

3736
!===============================================================================
3837
subroutine shr_abort_abort(string,rc, line, file)
39-
use esmf, only : ESMF_LOGWRITE, ESMF_LOGMSG_ERROR
38+
use esmf, only : ESMF_LOGWRITE, ESMF_LOGMSG_ERROR, ESMF_FINALIZE, ESMF_END_ABORT
4039
! Consistent stopping mechanism
4140

4241
!----- arguments -----
@@ -58,22 +57,17 @@ subroutine shr_abort_abort(string,rc, line, file)
5857
else
5958
local_string = "Unknown error submitted to shr_abort_abort."
6059
end if
60+
if(present(rc)) then
61+
write(local_string, *) trim(local_string), ' rc=',rc
62+
endif
6163

6264
call print_error_to_logs("ERROR", local_string)
6365

6466
call ESMF_LogWrite(local_string, ESMF_LOGMSG_ERROR, line=line, file=file)
6567

6668
call shr_abort_backtrace()
6769

68-
call shr_mpi_initialized(flag)
69-
70-
if (flag) then
71-
if (present(rc)) then
72-
call shr_mpi_abort(trim(local_string),rc)
73-
else
74-
call shr_mpi_abort(trim(local_string))
75-
endif
76-
endif
70+
call ESMF_Finalize(endflag=ESMF_END_ABORT)
7771

7872
! A compiler's abort method may print a backtrace or do other nice
7973
! things, but in fact we can rarely leverage this, because MPI_Abort

0 commit comments

Comments
 (0)