https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95688
Bug ID: 95688
Summary: ICE in gfc_get_string, at fortran/iresolve.c:70
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: ---
Happens between name length 45 (ok) and 46 (ICE) :
$ cat z1_45.f90
module m23456789012345678901234567890123456789012345
interface
module subroutine s23456789012345678901234567890123456789012345
end
end interface
end
submodule(m23456789012345678901234567890123456789012345) &
n23456789012345678901234567890123456789012345
character(:), pointer :: x23456789012345678901234567890123456789012345 =>
null()
end
$ cat z1_46.f90
module m234567890123456789012345678901234567890123456
interface
module subroutine s234567890123456789012345678901234567890123456
end
end interface
end
submodule(m234567890123456789012345678901234567890123456) &
n234567890123456789012345678901234567890123456
character(:), pointer :: x234567890123456789012345678901234567890123456 =>
null()
end
$ cat z1_63.f90
module m23456789012345678901234567890123456789012345678901234567890123
interface
module subroutine
s23456789012345678901234567890123456789012345678901234567890123
end
end interface
end
submodule(m23456789012345678901234567890123456789012345678901234567890123) &
n23456789012345678901234567890123456789012345678901234567890123
character(:), pointer ::
x23456789012345678901234567890123456789012345678901234567890123 => null()
end
$ gfortran-11-20200614 -c z1_45.f90
$
$ gfortran-11-20200614 -c z1_46.f90
f951: internal compiler error: identifier overflow: 147
0x6562b9 gfc_report_diagnostic
../../gcc/fortran/error.c:782
0x6579da gfc_internal_error(char const*, ...)
../../gcc/fortran/error.c:1402
0x67f2d7 gfc_get_string(char const*, ...)
../../gcc/fortran/iresolve.c:70
0x720c90 gfc_create_string_length
../../gcc/fortran/trans-decl.c:1353
0x729317 gfc_get_symbol_decl(gfc_symbol*)
../../gcc/fortran/trans-decl.c:1765
0x72c188 gfc_create_module_variable
../../gcc/fortran/trans-decl.c:5302
0x6eb7d2 do_traverse_symtree
../../gcc/fortran/symbol.c:4162
0x72c98b gfc_generate_module_vars(gfc_namespace*)
../../gcc/fortran/trans-decl.c:5801
0x707684 gfc_generate_module_code(gfc_namespace*)
../../gcc/fortran/trans.c:2238
0x6b4501 translate_all_program_units
../../gcc/fortran/parse.c:6293
0x6b4501 gfc_parse_file()
../../gcc/fortran/parse.c:6545
0x70036f gfc_be_parse_file
../../gcc/fortran/f95-lang.c:212