This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/48706] New: [OOP] ICE (segfault) with TBP
- From: "burnus at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 20 Apr 2011 19:39:53 +0000
- Subject: [Bug fortran/48706] New: [OOP] ICE (segfault) with TBP
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48706
Summary: [OOP] ICE (segfault) with TBP
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
CC: janus@gcc.gnu.org
The following program (tbp_diffscope_01_pos.f90) fails with an ICE (segfault)
The test case is part of LRZ's fortran_tests.
module mod_diff_01
implicit none
type :: foo
integer :: i = -1
contains
procedure :: pfoo
end type
contains
subroutine pfoo(this, i)
class(foo) :: this
integer :: i
this%i = i
select type(this)
type is (foo)
write(*, *) 'FAIL'
class default
write(*, *) 'OK'
end select
end subroutine pfoo
subroutine create_ext(this)
type, extends(foo) :: foo_e
real :: r = 0.0
end type foo_e
class(foo), allocatable :: this
allocate(foo_e :: this)
call this%pfoo(1)
! ifort 11.1U6 crash at TBP call (premier issue 590191)
end subroutine create_ext
end module mod_diff_01
program diff_01
use mod_diff_01
implicit none
class(foo), allocatable :: o
call create_ext(o)
end program diff_01