This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/67883] ICE on empty array constructor of character function


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

--- Comment #3 from Gerhard Steinmetz <gerhard.steinmetz.fortran@t-online.de> ---

For the following cases, every line produces an ICE :


$ cat zz5.f90
program p
   character(*), parameter :: x1(*) = [character(*) ::] // [character(0) ::]
   character(*), parameter :: x2(*) = [character(*) ::] // [character(*) ::]
   character(*), parameter :: x3(*) = [character(*) ::]
   character(*), parameter :: x4(0) = [character(*) ::]
   character(1), parameter :: x5(*) = [character(*) ::]
   character(1), parameter :: x6(0) = [character(*) ::]
   character(0), parameter :: x7(0) = [character(*) ::]
   character(0), parameter :: x8(1) = [character(*) ::]
   character(1), parameter :: x9(1) = [character(*) ::]
end


$ gfortran-7-20160703 zz5.f90
f951: internal compiler error: in gfc_resolve_character_array_constructor, at
fortran/array.c:2020
0x65b719 gfc_resolve_character_array_constructor(gfc_expr*)
        ../../gcc/fortran/array.c:2020
0x6e16d6 gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.c:6402
0x6875bf gfc_reduce_init_expr(gfc_expr*)
        ../../gcc/fortran/expr.c:2668
0x688549 gfc_match_init_expr(gfc_expr**)
        ../../gcc/fortran/expr.c:2709
0x679d53 variable_decl
        ../../gcc/fortran/decl.c:2400
0x679d53 gfc_match_data_decl()
        ../../gcc/fortran/decl.c:4841
0x6cc069 match_word_omp_simd
        ../../gcc/fortran/parse.c:93
0x6cf40e match_word
        ../../gcc/fortran/parse.c:373
0x6cf40e decode_statement
        ../../gcc/fortran/parse.c:373
0x6d1114 next_free
        ../../gcc/fortran/parse.c:1120
0x6d1114 next_statement
        ../../gcc/fortran/parse.c:1354
0x6d259c parse_spec
        ../../gcc/fortran/parse.c:3498
0x6d4543 parse_progunit
        ../../gcc/fortran/parse.c:5463
0x6d5ae4 gfc_parse_file()
        ../../gcc/fortran/parse.c:5972
0x718022 gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:198

---


$ cat zz6.f90
program p
   character(0) :: z1(0)
   character(0), allocatable :: z2(:)
   character(:), allocatable :: z3(:)
   z1 = [character(*) ::]
   z2 = [character(*) ::]
   z3 = [character(*) ::]
   call sub ([character(*) ::])
contains
   subroutine sub (z)
      character(*) :: z(:)
      print *, z
   end
end


$ gfortran-6 zz6.f90
f951: internal compiler error: in gfc_resolve_character_array_constructor, at
fortran/array.c:2020

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]