https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95826
Bug ID: 95826
Summary: ICE in gfc_match_decl_type_spec, at
fortran/decl.c:4290
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: [email protected]
Target Milestone: ---
Moving on, this happens between name length 60 (ok) and 61 (ICE) :
$ cat z1_60.f90
program p
type t23456789012345678901234567890123456789012345678901234567890 &
(a23456789012345678901234567890123456789012345678901234567890, &
b23456789012345678901234567890123456789012345678901234567890)
integer, kind ::
a23456789012345678901234567890123456789012345678901234567890
integer, len ::
b23456789012345678901234567890123456789012345678901234567890
end type
integer, parameter ::
n23456789012345678901234567890123456789012345678901234567890 = 16
type (t23456789012345678901234567890123456789012345678901234567890 &
(n23456789012345678901234567890123456789012345678901234567890, :)), &
allocatable ::
x23456789012345678901234567890123456789012345678901234567890
end
$ cat z1_61.f90
program p
type t234567890123456789012345678901234567890123456789012345678901 &
(a234567890123456789012345678901234567890123456789012345678901, &
b234567890123456789012345678901234567890123456789012345678901)
integer, kind ::
a234567890123456789012345678901234567890123456789012345678901
integer, len ::
b234567890123456789012345678901234567890123456789012345678901
end type
integer, parameter ::
n234567890123456789012345678901234567890123456789012345678901 = 16
type (t234567890123456789012345678901234567890123456789012345678901 &
(n234567890123456789012345678901234567890123456789012345678901, :)), &
allocatable ::
x234567890123456789012345678901234567890123456789012345678901
end
$ cat z1_63.f90
program p
type t23456789012345678901234567890123456789012345678901234567890123 &
(a23456789012345678901234567890123456789012345678901234567890123, &
b23456789012345678901234567890123456789012345678901234567890123)
integer, kind ::
a23456789012345678901234567890123456789012345678901234567890123
integer, len ::
b23456789012345678901234567890123456789012345678901234567890123
end type
integer, parameter ::
n23456789012345678901234567890123456789012345678901234567890123 = 16
type (t23456789012345678901234567890123456789012345678901234567890123 &
(n23456789012345678901234567890123456789012345678901234567890123, :)),
&
allocatable ::
x23456789012345678901234567890123456789012345678901234567890123
end
$ gfortran-11-20200621 -c z1_60.f90
$
$ gfortran-11-20200621 -c z1_61.f90
f951: internal compiler error: in gfc_match_decl_type_spec, at
fortran/decl.c:4290
0x64849f gfc_match_decl_type_spec(gfc_typespec*, int)
../../gcc/fortran/decl.c:4290
0x6491dc gfc_match_data_decl()
../../gcc/fortran/decl.c:6124
0x6ad323 match_word
../../gcc/fortran/parse.c:65
0x6ad323 decode_statement
../../gcc/fortran/parse.c:376
0x6aed6a next_free
../../gcc/fortran/parse.c:1280
0x6aed6a next_statement
../../gcc/fortran/parse.c:1512
0x6b03bb parse_spec
../../gcc/fortran/parse.c:3923
0x6b318c parse_progunit
../../gcc/fortran/parse.c:5852
0x6b4869 gfc_parse_file()
../../gcc/fortran/parse.c:6393
0x70098f gfc_be_parse_file
../../gcc/fortran/f95-lang.c:212