From 9f55b2fec28f8058f006c153bef74a3238f19b00 Mon Sep 17 00:00:00 2001 From: Salvatore Filippone Date: Mon, 8 Feb 2021 16:47:54 +0100 Subject: [PATCH] Fix amg_X_prec_mod for intel compilation --- amgprec/amg_c_prec_mod.f90 | 122 ++++++++++++++++++------------------- amgprec/amg_d_prec_mod.f90 | 122 ++++++++++++++++++------------------- amgprec/amg_s_prec_mod.f90 | 122 ++++++++++++++++++------------------- amgprec/amg_z_prec_mod.f90 | 122 ++++++++++++++++++------------------- 4 files changed, 244 insertions(+), 244 deletions(-) diff --git a/amgprec/amg_c_prec_mod.f90 b/amgprec/amg_c_prec_mod.f90 index babe0cfa..a0072a6f 100644 --- a/amgprec/amg_c_prec_mod.f90 +++ b/amgprec/amg_c_prec_mod.f90 @@ -56,11 +56,11 @@ module amg_c_prec_mod use amg_c_invk_solver use amg_c_invt_solver - interface amg_precset - module procedure amg_c_iprecsetsm, amg_c_iprecsetsv, & - & amg_c_cprecseti, amg_c_cprecsetc, amg_c_cprecsetr, & - & amg_c_iprecsetag - end interface amg_precset +!!$ interface amg_precset +!!$ module procedure amg_c_iprecsetsm, amg_c_iprecsetsv, & +!!$ & amg_c_cprecseti, amg_c_cprecsetc, amg_c_cprecsetr, & +!!$ & amg_c_iprecsetag +!!$ end interface amg_precset interface amg_extprol_bld subroutine amg_c_extprol_bld(a,desc_a,p,prolv,restrv,info,amold,vmold,imold) @@ -82,61 +82,61 @@ module amg_c_prec_mod end subroutine amg_c_extprol_bld end interface amg_extprol_bld -contains - - subroutine amg_c_iprecsetsm(p,val,info,pos) - type(amg_cprec_type), intent(inout) :: p - class(amg_c_base_smoother_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(val,info,pos=pos) - end subroutine amg_c_iprecsetsm - - subroutine amg_c_iprecsetsv(p,val,info,pos) - type(amg_cprec_type), intent(inout) :: p - class(amg_c_base_solver_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_c_iprecsetsv - - subroutine amg_c_iprecsetag(p,val,info,pos) - type(amg_cprec_type), intent(inout) :: p - class(amg_c_base_aggregator_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_c_iprecsetag - - subroutine amg_c_cprecseti(p,what,val,info,pos) - type(amg_cprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - integer(psb_ipk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_c_cprecseti - - subroutine amg_c_cprecsetr(p,what,val,info,pos) - type(amg_cprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - real(psb_spk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_c_cprecsetr - - subroutine amg_c_cprecsetc(p,what,val,info,pos) - type(amg_cprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - character(len=*), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_c_cprecsetc +!!$contains +!!$ +!!$ subroutine amg_c_iprecsetsm(p,val,info,pos) +!!$ type(amg_cprec_type), intent(inout) :: p +!!$ class(amg_c_base_smoother_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(val,info,pos=pos) +!!$ end subroutine amg_c_iprecsetsm +!!$ +!!$ subroutine amg_c_iprecsetsv(p,val,info,pos) +!!$ type(amg_cprec_type), intent(inout) :: p +!!$ class(amg_c_base_solver_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_c_iprecsetsv +!!$ +!!$ subroutine amg_c_iprecsetag(p,val,info,pos) +!!$ type(amg_cprec_type), intent(inout) :: p +!!$ class(amg_c_base_aggregator_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_c_iprecsetag +!!$ +!!$ subroutine amg_c_cprecseti(p,what,val,info,pos) +!!$ type(amg_cprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ integer(psb_ipk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_c_cprecseti +!!$ +!!$ subroutine amg_c_cprecsetr(p,what,val,info,pos) +!!$ type(amg_cprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ real(psb_spk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_c_cprecsetr +!!$ +!!$ subroutine amg_c_cprecsetc(p,what,val,info,pos) +!!$ type(amg_cprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ character(len=*), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_c_cprecsetc end module amg_c_prec_mod diff --git a/amgprec/amg_d_prec_mod.f90 b/amgprec/amg_d_prec_mod.f90 index c63cc6de..8a574250 100644 --- a/amgprec/amg_d_prec_mod.f90 +++ b/amgprec/amg_d_prec_mod.f90 @@ -56,11 +56,11 @@ module amg_d_prec_mod use amg_d_invk_solver use amg_d_invt_solver - interface amg_precset - module procedure amg_d_iprecsetsm, amg_d_iprecsetsv, & - & amg_d_cprecseti, amg_d_cprecsetc, amg_d_cprecsetr, & - & amg_d_iprecsetag - end interface amg_precset +!!$ interface amg_precset +!!$ module procedure amg_d_iprecsetsm, amg_d_iprecsetsv, & +!!$ & amg_d_cprecseti, amg_d_cprecsetc, amg_d_cprecsetr, & +!!$ & amg_d_iprecsetag +!!$ end interface amg_precset interface amg_extprol_bld subroutine amg_d_extprol_bld(a,desc_a,p,prolv,restrv,info,amold,vmold,imold) @@ -82,61 +82,61 @@ module amg_d_prec_mod end subroutine amg_d_extprol_bld end interface amg_extprol_bld -contains - - subroutine amg_d_iprecsetsm(p,val,info,pos) - type(amg_dprec_type), intent(inout) :: p - class(amg_d_base_smoother_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(val,info,pos=pos) - end subroutine amg_d_iprecsetsm - - subroutine amg_d_iprecsetsv(p,val,info,pos) - type(amg_dprec_type), intent(inout) :: p - class(amg_d_base_solver_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_d_iprecsetsv - - subroutine amg_d_iprecsetag(p,val,info,pos) - type(amg_dprec_type), intent(inout) :: p - class(amg_d_base_aggregator_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_d_iprecsetag - - subroutine amg_d_cprecseti(p,what,val,info,pos) - type(amg_dprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - integer(psb_ipk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_d_cprecseti - - subroutine amg_d_cprecsetr(p,what,val,info,pos) - type(amg_dprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - real(psb_dpk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_d_cprecsetr - - subroutine amg_d_cprecsetc(p,what,val,info,pos) - type(amg_dprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - character(len=*), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_d_cprecsetc +!!$contains +!!$ +!!$ subroutine amg_d_iprecsetsm(p,val,info,pos) +!!$ type(amg_dprec_type), intent(inout) :: p +!!$ class(amg_d_base_smoother_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(val,info,pos=pos) +!!$ end subroutine amg_d_iprecsetsm +!!$ +!!$ subroutine amg_d_iprecsetsv(p,val,info,pos) +!!$ type(amg_dprec_type), intent(inout) :: p +!!$ class(amg_d_base_solver_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_d_iprecsetsv +!!$ +!!$ subroutine amg_d_iprecsetag(p,val,info,pos) +!!$ type(amg_dprec_type), intent(inout) :: p +!!$ class(amg_d_base_aggregator_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_d_iprecsetag +!!$ +!!$ subroutine amg_d_cprecseti(p,what,val,info,pos) +!!$ type(amg_dprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ integer(psb_ipk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_d_cprecseti +!!$ +!!$ subroutine amg_d_cprecsetr(p,what,val,info,pos) +!!$ type(amg_dprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ real(psb_dpk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_d_cprecsetr +!!$ +!!$ subroutine amg_d_cprecsetc(p,what,val,info,pos) +!!$ type(amg_dprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ character(len=*), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_d_cprecsetc end module amg_d_prec_mod diff --git a/amgprec/amg_s_prec_mod.f90 b/amgprec/amg_s_prec_mod.f90 index 6de769b6..75adb94d 100644 --- a/amgprec/amg_s_prec_mod.f90 +++ b/amgprec/amg_s_prec_mod.f90 @@ -56,11 +56,11 @@ module amg_s_prec_mod use amg_s_invk_solver use amg_s_invt_solver - interface amg_precset - module procedure amg_s_iprecsetsm, amg_s_iprecsetsv, & - & amg_s_cprecseti, amg_s_cprecsetc, amg_s_cprecsetr, & - & amg_s_iprecsetag - end interface amg_precset +!!$ interface amg_precset +!!$ module procedure amg_s_iprecsetsm, amg_s_iprecsetsv, & +!!$ & amg_s_cprecseti, amg_s_cprecsetc, amg_s_cprecsetr, & +!!$ & amg_s_iprecsetag +!!$ end interface amg_precset interface amg_extprol_bld subroutine amg_s_extprol_bld(a,desc_a,p,prolv,restrv,info,amold,vmold,imold) @@ -82,61 +82,61 @@ module amg_s_prec_mod end subroutine amg_s_extprol_bld end interface amg_extprol_bld -contains - - subroutine amg_s_iprecsetsm(p,val,info,pos) - type(amg_sprec_type), intent(inout) :: p - class(amg_s_base_smoother_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(val,info,pos=pos) - end subroutine amg_s_iprecsetsm - - subroutine amg_s_iprecsetsv(p,val,info,pos) - type(amg_sprec_type), intent(inout) :: p - class(amg_s_base_solver_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_s_iprecsetsv - - subroutine amg_s_iprecsetag(p,val,info,pos) - type(amg_sprec_type), intent(inout) :: p - class(amg_s_base_aggregator_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_s_iprecsetag - - subroutine amg_s_cprecseti(p,what,val,info,pos) - type(amg_sprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - integer(psb_ipk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_s_cprecseti - - subroutine amg_s_cprecsetr(p,what,val,info,pos) - type(amg_sprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - real(psb_spk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_s_cprecsetr - - subroutine amg_s_cprecsetc(p,what,val,info,pos) - type(amg_sprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - character(len=*), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_s_cprecsetc +!!$contains +!!$ +!!$ subroutine amg_s_iprecsetsm(p,val,info,pos) +!!$ type(amg_sprec_type), intent(inout) :: p +!!$ class(amg_s_base_smoother_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(val,info,pos=pos) +!!$ end subroutine amg_s_iprecsetsm +!!$ +!!$ subroutine amg_s_iprecsetsv(p,val,info,pos) +!!$ type(amg_sprec_type), intent(inout) :: p +!!$ class(amg_s_base_solver_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_s_iprecsetsv +!!$ +!!$ subroutine amg_s_iprecsetag(p,val,info,pos) +!!$ type(amg_sprec_type), intent(inout) :: p +!!$ class(amg_s_base_aggregator_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_s_iprecsetag +!!$ +!!$ subroutine amg_s_cprecseti(p,what,val,info,pos) +!!$ type(amg_sprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ integer(psb_ipk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_s_cprecseti +!!$ +!!$ subroutine amg_s_cprecsetr(p,what,val,info,pos) +!!$ type(amg_sprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ real(psb_spk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_s_cprecsetr +!!$ +!!$ subroutine amg_s_cprecsetc(p,what,val,info,pos) +!!$ type(amg_sprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ character(len=*), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_s_cprecsetc end module amg_s_prec_mod diff --git a/amgprec/amg_z_prec_mod.f90 b/amgprec/amg_z_prec_mod.f90 index 484b1829..f7587cce 100644 --- a/amgprec/amg_z_prec_mod.f90 +++ b/amgprec/amg_z_prec_mod.f90 @@ -56,11 +56,11 @@ module amg_z_prec_mod use amg_z_invk_solver use amg_z_invt_solver - interface amg_precset - module procedure amg_z_iprecsetsm, amg_z_iprecsetsv, & - & amg_z_cprecseti, amg_z_cprecsetc, amg_z_cprecsetr, & - & amg_z_iprecsetag - end interface amg_precset +!!$ interface amg_precset +!!$ module procedure amg_z_iprecsetsm, amg_z_iprecsetsv, & +!!$ & amg_z_cprecseti, amg_z_cprecsetc, amg_z_cprecsetr, & +!!$ & amg_z_iprecsetag +!!$ end interface amg_precset interface amg_extprol_bld subroutine amg_z_extprol_bld(a,desc_a,p,prolv,restrv,info,amold,vmold,imold) @@ -82,61 +82,61 @@ module amg_z_prec_mod end subroutine amg_z_extprol_bld end interface amg_extprol_bld -contains - - subroutine amg_z_iprecsetsm(p,val,info,pos) - type(amg_zprec_type), intent(inout) :: p - class(amg_z_base_smoother_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(val,info,pos=pos) - end subroutine amg_z_iprecsetsm - - subroutine amg_z_iprecsetsv(p,val,info,pos) - type(amg_zprec_type), intent(inout) :: p - class(amg_z_base_solver_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_z_iprecsetsv - - subroutine amg_z_iprecsetag(p,val,info,pos) - type(amg_zprec_type), intent(inout) :: p - class(amg_z_base_aggregator_type), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - call p%set(val,info, pos=pos) - end subroutine amg_z_iprecsetag - - subroutine amg_z_cprecseti(p,what,val,info,pos) - type(amg_zprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - integer(psb_ipk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_z_cprecseti - - subroutine amg_z_cprecsetr(p,what,val,info,pos) - type(amg_zprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - real(psb_dpk_), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_z_cprecsetr - - subroutine amg_z_cprecsetc(p,what,val,info,pos) - type(amg_zprec_type), intent(inout) :: p - character(len=*), intent(in) :: what - character(len=*), intent(in) :: val - integer(psb_ipk_), intent(out) :: info - character(len=*), optional, intent(in) :: pos - - call p%set(what,val,info,pos=pos) - end subroutine amg_z_cprecsetc +!!$contains +!!$ +!!$ subroutine amg_z_iprecsetsm(p,val,info,pos) +!!$ type(amg_zprec_type), intent(inout) :: p +!!$ class(amg_z_base_smoother_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(val,info,pos=pos) +!!$ end subroutine amg_z_iprecsetsm +!!$ +!!$ subroutine amg_z_iprecsetsv(p,val,info,pos) +!!$ type(amg_zprec_type), intent(inout) :: p +!!$ class(amg_z_base_solver_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_z_iprecsetsv +!!$ +!!$ subroutine amg_z_iprecsetag(p,val,info,pos) +!!$ type(amg_zprec_type), intent(inout) :: p +!!$ class(amg_z_base_aggregator_type), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ call p%set(val,info, pos=pos) +!!$ end subroutine amg_z_iprecsetag +!!$ +!!$ subroutine amg_z_cprecseti(p,what,val,info,pos) +!!$ type(amg_zprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ integer(psb_ipk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_z_cprecseti +!!$ +!!$ subroutine amg_z_cprecsetr(p,what,val,info,pos) +!!$ type(amg_zprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ real(psb_dpk_), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_z_cprecsetr +!!$ +!!$ subroutine amg_z_cprecsetc(p,what,val,info,pos) +!!$ type(amg_zprec_type), intent(inout) :: p +!!$ character(len=*), intent(in) :: what +!!$ character(len=*), intent(in) :: val +!!$ integer(psb_ipk_), intent(out) :: info +!!$ character(len=*), optional, intent(in) :: pos +!!$ +!!$ call p%set(what,val,info,pos=pos) +!!$ end subroutine amg_z_cprecsetc end module amg_z_prec_mod