[Bug fortran/85544] New: ICE in gfc_conv_scalarized_array_ref, at fortran/trans-array.c:3385

gscfq@t-online.de gcc-bugzilla@gcc.gnu.org
Thu Apr 26 17:49:00 GMT 2018


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

            Bug ID: 85544
           Summary: ICE in gfc_conv_scalarized_array_ref, at
                    fortran/trans-array.c:3385
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gscfq@t-online.de
  Target Milestone: ---

Affects versions down to 4.9 at -O[gs123], gfortran-4.8 works :


$ cat z1.f90
program p
   integer, parameter :: na = -3, ne = 10
   integer :: i, a(na:ne), b(na:ne)
   a = [(i, i=na, ne)]
   b = [2**a]
   print *, b
end


$ gfortran-4.8 z1.f90 -O2
$ a.out
           0           0           0           1           2           4       
   8          16          32          64         128         256         512   
    1024
$
$ gfortran-8-20180422 z1.f90 -O0 -static-libgfortran
$ a.out
           0           0           0           1           2           4       
   8          16          32          64         128         256         512   
    1024
$
$ gfortran-8-20180422 -c z1.f90 -O2
z1.f90:5:0:

    b = [2**a]

internal compiler error: Segmentation fault
0xb9d82f crash_signal
        ../../gcc/toplev.c:325
0x752e3b gfc_conv_scalarized_array_ref
        ../../gcc/fortran/trans-array.c:3385
0x753b49 gfc_conv_array_ref(gfc_se*, gfc_array_ref*, gfc_expr*, locus*)
        ../../gcc/fortran/trans-array.c:3540
0x78194d gfc_conv_variable
        ../../gcc/fortran/trans-expr.c:2737
0x77e672 gfc_conv_expr(gfc_se*, gfc_expr*)
        ../../gcc/fortran/trans-expr.c:7930
0x780be3 gfc_conv_expr_val(gfc_se*, gfc_expr*)
        ../../gcc/fortran/trans-expr.c:7975
0x78b434 gfc_conv_intrinsic_function_args
        ../../gcc/fortran/trans-intrinsic.c:229
0x79e112 gfc_conv_intrinsic_ishft
        ../../gcc/fortran/trans-intrinsic.c:5760
0x79e112 gfc_conv_intrinsic_function(gfc_se*, gfc_expr*)
        ../../gcc/fortran/trans-intrinsic.c:9265
0x77e0b5 gfc_conv_function_expr
        ../../gcc/fortran/trans-expr.c:6788
0x77e652 gfc_conv_expr(gfc_se*, gfc_expr*)
        ../../gcc/fortran/trans-expr.c:7922
0x74fbb7 gfc_trans_array_ctor_element
        ../../gcc/fortran/trans-array.c:1524
0x75aea5 gfc_trans_array_constructor_value
        ../../gcc/fortran/trans-array.c:1783
0x75b7f3 trans_array_constructor
        ../../gcc/fortran/trans-array.c:2543
0x75b7f3 gfc_add_loop_ss_code
        ../../gcc/fortran/trans-array.c:2819
0x75c025 gfc_conv_loop_setup(gfc_loopinfo*, locus*)
        ../../gcc/fortran/trans-array.c:5110
0x7862fc gfc_trans_assignment_1
        ../../gcc/fortran/trans-expr.c:10058
0x74ac87 trans_code
        ../../gcc/fortran/trans.c:1828
0x771f99 gfc_generate_function_code(gfc_namespace*)
        ../../gcc/fortran/trans-decl.c:6507
0x701120 translate_all_program_units
        ../../gcc/fortran/parse.c:6121


More information about the Gcc-bugs mailing list