------- Comment #11 from burnus at gcc dot gnu dot org 2010-05-18 12:24 ------- (In reply to comment #8) > > If one adds "b = ALLOCATED(x)" one finds: > Where do you add this?
Add in bug14 of attachment 20491 before 'end subroutine': logical b b = allocated(a%a) However, this is now fixed. * * * There are other problems related to allocatable scalars, but I think those are tracked in PR 42647. For instance (again based on attachment 20491): use d_mat_mod implicit none type(d_sparse_mat), ALLOCATABLE :: x call bug14(x) ! << OK around here contains subroutine bug14(a) type(d_sparse_mat), ALLOCATABLE, intent(out) :: a logical b ! <<< ICE here b = allocated(a); if (b) call abort() ! << OK here end subroutine bug14 end -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43895