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

            Bug ID: 93497
           Summary: ICE in gfc_conv_array_constructor_expr, at
                    fortran/trans-expr.c:7594
           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: ---

Providing an invalid expression for len, down to at least r5 :


$ cat z0.f90
program p
   print *, [character([1]) :: 'a','b']
end


$ cat z1.f90
program p
   print *, [character(([1])) :: 'a','b']
end


$ cat z2.f90
program p
   print *, [character(1+[1]) :: 'a','b']
end


$ gfortran-10-20200126 -c z0.f90
z0.f90:2:23:

    2 |    print *, [character([1]) :: 'a','b']
      |                       1
Error: Scalar INTEGER expression expected at (1)


$ gfortran-10-20200126 -c z1.f90
z1.f90:2:0:

    2 |    print *, [character(([1])) :: 'a','b']
      |
internal compiler error: in gfc_conv_array_constructor_expr, at
fortran/trans-expr.c:7594
0x727196 gfc_conv_array_constructor_expr
        ../../gcc/fortran/trans-expr.c:7594
0x727196 gfc_conv_expr(gfc_se*, gfc_expr*)
        ../../gcc/fortran/trans-expr.c:8685
0x729283 gfc_conv_expr_val(gfc_se*, gfc_expr*)
        ../../gcc/fortran/trans-expr.c:8714
0x7293d0 gfc_conv_expr_type(gfc_se*, gfc_expr*, tree_node*)
        ../../gcc/fortran/trans-expr.c:8728
0x707081 trans_array_constructor
        ../../gcc/fortran/trans-array.c:2527
0x707081 gfc_add_loop_ss_code
        ../../gcc/fortran/trans-array.c:2924
0x707365 gfc_conv_loop_setup(gfc_loopinfo*, locus*)
        ../../gcc/fortran/trans-array.c:5216
0x7554f5 gfc_trans_transfer(gfc_code*)
        ../../gcc/fortran/trans-io.c:2646
0x6f5e57 trans_code
        ../../gcc/fortran/trans.c:2084
0x752e7e build_dt
        ../../gcc/fortran/trans-io.c:2026
0x6f5e37 trans_code
        ../../gcc/fortran/trans.c:2056
0x71f134 gfc_generate_function_code(gfc_namespace*)
        ../../gcc/fortran/trans-decl.c:6823
0x6a8056 translate_all_program_units
        ../../gcc/fortran/parse.c:6305
0x6a8056 gfc_parse_file()
        ../../gcc/fortran/parse.c:6544
0x6f265f gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:210

Reply via email to