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: gs...@t-online.de
  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

Reply via email to