[Bug fortran/51864] New: [OOP] ALLOCATE with polymorphic array constructor as SOURCE=
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Jan 15 13:37:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51864
Bug #: 51864
Summary: [OOP] ALLOCATE with polymorphic array constructor as
SOURCE=
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: burnus@gcc.gnu.org
See also http://gcc.gnu.org/ml/fortran/2012-01/msg00147.html
The following program causes gfortran to ICE with a segfault. The program
compiles with NAG f95 5.1 and crayftn 7.1 - though it segfaults at run time.
I think the program is valid F2003/F2008.
type t
integer :: i = 5
end type t
type, extends(t) :: t2
integer :: j = 6
end type t2
class(t), allocatable :: a(:), b(:), c(:)
allocate(t2 :: a(3))
allocate(t2 :: b(5))
!allocate(c, source=[ a, b ]) ! F2008, PR 44672
allocate(c(8), source=[ a, b ])
! c = [ a, b ] ! F2008, PR 43366
select type(c)
type is(t)
print '(8(i2))', c%i
type is(t2)
print '(8(i2))', c%i
print '(8(i2))', c%j
end select
end
More information about the Gcc-bugs
mailing list