[Bug fortran/96386] New: Internal compiler error in ASSOCIATE
m.deij at marin dot nl
gcc-bugzilla@gcc.gnu.org
Thu Jul 30 06:39:15 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96386
Bug ID: 96386
Summary: Internal compiler error in ASSOCIATE
Product: gcc
Version: 9.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: m.deij at marin dot nl
Target Milestone: ---
The code below triggers an ICE with the message
f951: internal compiler error: find_array_spec(): Missing spec
Note that older version of the compiler (I could test 6.3.1) does not give an
ICE, but newer versions (I have access to 8.3.1 and 9.2.0) do have this
problem.
MODULE assoc
TYPE Level3
INTEGER :: someNumber
END TYPE Level3
TYPE Level2
INTEGER :: nLevel3
TYPE (Level3), ALLOCATABLE :: levels3(:)
END TYPE Level2
TYPE Level1
INTEGER :: nLevel2
TYPE (Level2), ALLOCATABLE :: levels2(:)
END TYPE Level1
TYPE outer_type
INTEGER :: nLevel1
TYPE (Level1), ALLOCATABLE :: levels1(:)
END TYPE outer_type
TYPE(outer_type), TARGET :: outer
CONTAINS
SUBROUTINE internal_compiler_error_repro()
INTEGER F,B,Z
ASSOCIATE(l1 => outer%levels1 ) ! <-- this gives an ICE
!ASSOCIATE(l1 => outer%levels1(:) ) ! <-- No ICE if array spec is added
DO F=1,outer%nLevel1
ASSOCIATE(l2 => l1(F)%levels2 )
DO B=1,l2(F)%nLevel3 ! <-- condition for ICE to be triggered
END DO
END ASSOCIATE
END DO
END ASSOCIATE
END SUBROUTINE internal_compiler_error_repro
END MODULE
More information about the Gcc-bugs
mailing list