https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91944
Bug ID: 91944 Summary: ICE in gfc_conv_array_initializer, at fortran/trans-array.c:6156 Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- If size exceeds actual limit 2**16 or -fmax-array-constructor : $ cat z1.f90 program p integer, parameter :: n = 10 integer, parameter :: m = 6554 integer :: i integer :: x(n,m) = spread([(i,i=1,n)], dim=2, ncopies=m) print *, x(n,m) end $ cat z2.f90 program p integer, parameter :: n = 10 integer, parameter :: m = 6553 integer :: i integer :: x(n,m) = spread([(i,i=1,n)], dim=2, ncopies=m) print *, x(n,m) end $ gfortran-10-20190929 -c z2.f90 $ gfortran-10-20190929 -c z1.f90 -fmax-array-constructor=100000 $ $ gfortran-10-20190929 -c z1.f90 z1.f90:1:0: 1 | program p | internal compiler error: in gfc_conv_array_initializer, at fortran/trans-array.c:6156 0x6db5aa gfc_conv_array_initializer(tree_node*, gfc_expr*) ../../gcc/fortran/trans-array.c:6156 0x70d960 gfc_conv_initializer(gfc_expr*, gfc_typespec*, tree_node*, bool, bool, bool) ../../gcc/fortran/trans-expr.c:7598 0x6f166f gfc_get_symbol_decl(gfc_symbol*) ../../gcc/fortran/trans-decl.c:1894 0x6f40df generate_local_decl ../../gcc/fortran/trans-decl.c:5859 0x6b3f22 do_traverse_symtree ../../gcc/fortran/symbol.c:4165 0x6f5084 generate_local_vars ../../gcc/fortran/trans-decl.c:6058 0x6f5084 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6716 0x67ea76 translate_all_program_units ../../gcc/fortran/parse.c:6254 0x67ea76 gfc_parse_file() ../../gcc/fortran/parse.c:6493 0x6c89af gfc_be_parse_file ../../gcc/fortran/f95-lang.c:204