Defined alternative error_comm interfaces.

ILmat
Salvatore Filippone 8 years ago
parent 936554eb2c
commit 8a0fea7374

@ -1,14 +1,27 @@
! checks wether an error has occurred on one of the porecesses in the execution pool
subroutine psb_errcomm(ictxt, err)
subroutine psb_errcomm_i(ictxt, err)
use psb_error_mod, psb_protect_name => psb_errcomm
use psb_penv_mod
integer(psb_ipk_), intent(in) :: ictxt
integer(psb_ipk_), intent(inout):: err
integer(psb_mpk_) :: iictxt
iictxt = ictxt
call psb_errcomm(iictxt,err)
end subroutine psb_errcomm_i
#if defined(INT_I8_L8)
subroutine psb_errcomm_m(ictxt, err)
use psb_error_mod, psb_protect_name => psb_errcomm
use psb_penv_mod
integer(psb_mpk_), intent(in) :: ictxt
integer(psb_ipk_), intent(inout):: err
if (psb_get_global_checks()) call psb_amx(ictxt, err)
end subroutine psb_errcomm
end subroutine psb_errcomm_m
#endif
subroutine psb_ser_error_handler(err_act)
use psb_error_mod, psb_protect_name => psb_ser_error_handler
use psb_penv_mod

@ -99,11 +99,18 @@ module psb_error_mod
end interface
interface psb_errcomm
subroutine psb_errcomm(ictxt, err)
#if defined(INT_I8_L8)
subroutine psb_errcomm_m(ictxt, err)
import :: psb_ipk_, psb_mpk_
integer(psb_mpk_), intent(in) :: ictxt
integer(psb_ipk_), intent(inout):: err
end subroutine psb_errcomm_m
#endif
subroutine psb_errcomm_i(ictxt, err)
import :: psb_ipk_
integer(psb_ipk_), intent(in) :: ictxt
integer(psb_ipk_), intent(inout):: err
end subroutine psb_errcomm
end subroutine psb_errcomm_i
end interface psb_errcomm
interface psb_errpop
@ -177,22 +184,6 @@ contains
end function psb_get_global_checks
#if defined(LONG_INTEGERS)
subroutine psb_errcomm_ipk(ictxt, err)
integer(psb_ipk_), intent(in) :: ictxt
integer(psb_ipk_), intent(inout):: err
integer(psb_mpk_) :: iictxt
iictxt = ictxt
call psb_errcomm(iictxt,err)
end subroutine psb_errcomm_ipk
subroutine psb_perror_ipk(ictxt)
integer(psb_ipk_), intent(in) :: ictxt
integer(psb_mpk_) :: iictxt
iictxt = ictxt
call psb_perror(iictxt)
end subroutine psb_perror_ipk
#endif
! saves action to support error traceback
! also changes error action to "return"
subroutine psb_erractionsave(err_act)

Loading…
Cancel
Save