[Bug fortran/46244] gfc_compare_derived_types is buggy
dominiq at lps dot ens.fr
gcc-bugzilla@gcc.gnu.org
Sun Feb 20 22:20:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46244
--- Comment #14 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-02-20 22:01:54 UTC ---
> (apparently this new feature is not tested in the test suite)
This wrong, there are several tests;-) The one that is missing is of the form:
module psb_base_mat_mod
type :: psb_base_sparse_mat
integer, private :: m, n
integer, private :: state, duplicate
logical, private :: triangle, unitd, upper, sorted
end type psb_base_sparse_mat
end module psb_base_mat_mod
module psb_d_base_mat_mod
use psb_base_mat_mod
integer, parameter :: psb_dpk_ = kind(1.d0)
type, extends(psb_base_sparse_mat) :: psb_d_base_sparse_mat
end type psb_d_base_sparse_mat
type, extends(psb_d_base_sparse_mat) :: psb_d_coo_sparse_mat
integer :: nnz
integer, allocatable :: ia(:), ja(:)
real(psb_dpk_), allocatable :: val(:)
end type psb_d_coo_sparse_mat
end module psb_d_base_mat_mod
module psb_d_mat_mod
use psb_d_base_mat_mod
type :: psb_d_sparse_mat
class(psb_d_base_sparse_mat), allocatable :: a
contains
procedure, pass(a) :: d_csclip
generic, public :: csclip => d_csclip
end type psb_d_sparse_mat
contains
subroutine d_csclip(a,b,info)
use psb_d_base_mat_mod
implicit none
class(psb_d_sparse_mat), intent(in) :: a
class(psb_d_sparse_mat), intent(out) :: b
integer,intent(out) :: info
type(psb_d_coo_sparse_mat), allocatable :: acoo
info = 0
allocate(acoo,stat=info)
if (info == 0) call move_alloc(acoo,b%a)
end subroutine d_csclip
end module psb_d_mat_mod
More information about the Gcc-bugs
mailing list