https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49278

--- Comment #19 from G. Steinmetz <gs...@t-online.de> ---

Adding a "parameter" attribute :


$ cat z8.f90
program p
   type t
      real :: a
      real :: b = 2.0
   end type
   type(t), parameter :: z = t(4.0, 5.0)
   data z%a /3.0/
end


$ cat z9.f90
program p
   type t
      real :: a
   end type
   type(t), parameter :: z = t(4.0)
   data z%a /3.0/
end


$ gfortran-9-20181021 -c z9.f90
z9.f90:7:0:

    7 | end
      |
internal compiler error: Segmentation fault
0xb1c86f crash_signal
        ../../gcc/toplev.c:325
0x6d9481 check_constant_initializer
        ../../gcc/fortran/trans-decl.c:5198
0x6d9ef4 gfc_emit_parameter_debug_info
        ../../gcc/fortran/trans-decl.c:5262
0x6a80f2 do_traverse_symtree
        ../../gcc/fortran/symbol.c:4151
0x6e53fa gfc_generate_function_code(gfc_namespace*)
        ../../gcc/fortran/trans-decl.c:6671
0x673426 translate_all_program_units
        ../../gcc/fortran/parse.c:6125
0x673426 gfc_parse_file()
        ../../gcc/fortran/parse.c:6328
0x6ba3ff gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:204


Adding "pointer" instead of "parameter" gives pr50410 comment 0.

Reply via email to