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

            Bug ID: 104350
           Summary: ICE in gfc_array_dimen_size(): Bad dimension
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Affects versions down to at least r5 :


$ cat z1.f90
program p
   integer :: x(1) = 1
   integer :: k
   print *, product([(size(x, dim=k), k=0,rank(x))])
end


$ cat z2.f90
program p
   integer :: x(0) = 0
   integer :: k
   print *, product([(size(x, dim=k), k=0,rank(x))])
end


$ cat z3.f90
program p
   integer :: x(1) = 1
   integer :: k
   print *, product([(size(x, dim=k), k=1,2)])
end


$ cat z4.f90
program p
   integer :: x(1) = 1
   integer :: k
   print *, product([(size(x, dim=k), k=-3,3)])
end


$ gfortran-12-20220130 -c z1.f90
f951: internal compiler error: gfc_array_dimen_size(): Bad dimension
0x6ec739 gfc_report_diagnostic
        ../../gcc/fortran/error.cc:883
0x6ee2b7 gfc_internal_error(char const*, ...)
        ../../gcc/fortran/error.cc:1503
0x6bc99f gfc_array_dimen_size(gfc_expr*, int, __mpz_struct (*) [1])
        ../../gcc/fortran/array.cc:2574
0x77896f simplify_size
        ../../gcc/fortran/simplify.cc:7580
0x786995 gfc_simplify_size(gfc_expr*, gfc_expr*, gfc_expr*)
        ../../gcc/fortran/simplify.cc:7601
0x70276a do_simplify
        ../../gcc/fortran/intrinsic.cc:4676
0x70d538 gfc_intrinsic_func_interface(gfc_expr*, int)
        ../../gcc/fortran/intrinsic.cc:4941
0x6f346c gfc_simplify_expr(gfc_expr*, int)
        ../../gcc/fortran/expr.cc:2220
0x6b9e11 expand_constructor
        ../../gcc/fortran/array.cc:1827
0x6ba0be expand_expr
        ../../gcc/fortran/array.cc:1685
0x6ba0be expand_iterator
        ../../gcc/fortran/array.cc:1755
0x6ba0be expand_constructor
        ../../gcc/fortran/array.cc:1798
0x6bc1f7 gfc_array_size(gfc_expr*, __mpz_struct (*) [1])
        ../../gcc/fortran/array.cc:2665
0x75e30f expression_shape
        ../../gcc/fortran/resolve.cc:5501
0x75e30f gfc_expression_rank(gfc_expr*)
        ../../gcc/fortran/resolve.cc:5575
0x75fbdf gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.cc:7205
0x763cbf gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.cc:2217
0x763cbf resolve_actual_arglist
        ../../gcc/fortran/resolve.cc:2136
0x75f96e resolve_function
        ../../gcc/fortran/resolve.cc:3274
0x75f96e gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.cc:7169

Reply via email to