mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-20 12:52:14 +00:00
psblas3:
base/serial/impl/psb_c_csc_impl.f90 base/serial/impl/psb_c_csr_impl.f90 base/serial/impl/psb_d_csc_impl.f90 base/serial/impl/psb_d_csr_impl.f90 base/serial/impl/psb_s_csc_impl.f90 base/serial/impl/psb_s_csr_impl.f90 base/serial/impl/psb_z_csc_impl.f90 base/serial/impl/psb_z_csr_impl.f90 base/tools/psb_linmap.f90 Workaround allocate-on-assignment problems.
This commit is contained in:
@@ -2156,9 +2156,9 @@ subroutine psb_s_cp_csc_to_fmt(a,b,info)
|
||||
|
||||
type is (psb_s_csc_sparse_mat)
|
||||
call b%psb_s_base_sparse_mat%cp_from(a%psb_s_base_sparse_mat)
|
||||
b%icp = a%icp
|
||||
b%ia = a%ia
|
||||
b%val = a%val
|
||||
call psb_safe_cpy( a%icp, b%icp , info)
|
||||
call psb_safe_cpy( a%ia , b%ia , info)
|
||||
call psb_safe_cpy( a%val, b%val , info)
|
||||
|
||||
class default
|
||||
call a%cp_to_coo(tmp,info)
|
||||
@@ -2236,9 +2236,9 @@ subroutine psb_s_cp_csc_from_fmt(a,b,info)
|
||||
|
||||
type is (psb_s_csc_sparse_mat)
|
||||
call a%psb_s_base_sparse_mat%cp_from(b%psb_s_base_sparse_mat)
|
||||
a%icp = b%icp
|
||||
a%ia = b%ia
|
||||
a%val = b%val
|
||||
call psb_safe_cpy( b%icp, a%icp , info)
|
||||
call psb_safe_cpy( b%ia , a%ia , info)
|
||||
call psb_safe_cpy( b%val, a%val , info)
|
||||
|
||||
class default
|
||||
call b%cp_to_coo(tmp,info)
|
||||
@@ -2598,6 +2598,7 @@ end subroutine psb_s_csc_print
|
||||
|
||||
subroutine psb_s_csc_cp_from(a,b)
|
||||
use psb_error_mod
|
||||
use psb_realloc_mod
|
||||
use psb_s_csc_mat_mod, psb_protect_name => psb_s_csc_cp_from
|
||||
implicit none
|
||||
|
||||
@@ -2615,9 +2616,9 @@ subroutine psb_s_csc_cp_from(a,b)
|
||||
|
||||
call a%allocate(b%get_nrows(),b%get_ncols(),b%get_nzeros())
|
||||
call a%psb_s_base_sparse_mat%cp_from(b%psb_s_base_sparse_mat)
|
||||
a%icp = b%icp
|
||||
a%ia = b%ia
|
||||
a%val = b%val
|
||||
call psb_safe_cpy( b%icp, a%icp , info)
|
||||
call psb_safe_cpy( b%ia , a%ia , info)
|
||||
call psb_safe_cpy( b%val, a%val , info)
|
||||
|
||||
if (info /= psb_success_) goto 9999
|
||||
call psb_erractionrestore(err_act)
|
||||
|
||||
Reference in New Issue
Block a user