https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103505
Bug ID: 103505 Summary: ICE in compare_bound_mpz_t, at fortran/resolve.c:4587 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: --- Started with r8 : $ cat z1.f90 program p integer, parameter :: a((2.)) = [4, 8] integer(a(1:1)) :: b end $ cat z2.f90 program p integer, parameter :: a((2.)) = [4, 8] print *, [integer(a(1:1)) :: 2] end $ cat z3.f90 program p integer, parameter :: a((2.)) = [4, 8] integer :: b(a(1:1)) end $ gfortran-12-20211128 -c z1.f90 f951: internal compiler error: compare_bound_int(): Bad expression 0x7977b9 gfc_report_diagnostic ../../gcc/fortran/error.c:874 0x799327 gfc_internal_error(char const*, ...) ../../gcc/fortran/error.c:1494 0x807111 compare_bound_mpz_t ../../gcc/fortran/resolve.c:4587 0x80765c check_dimension ../../gcc/fortran/resolve.c:4770 0x81a51d compare_spec_to_ref ../../gcc/fortran/resolve.c:4835 0x81a51d resolve_array_ref ../../gcc/fortran/resolve.c:5126 0x81a51d gfc_resolve_ref(gfc_expr*) ../../gcc/fortran/resolve.c:5340 0x80a7a7 resolve_variable ../../gcc/fortran/resolve.c:5842 0x80a7a7 gfc_resolve_expr(gfc_expr*) ../../gcc/fortran/resolve.c:7168 0x79d694 gfc_reduce_init_expr(gfc_expr*) ../../gcc/fortran/expr.c:3130 0x7a0560 gfc_match_init_expr(gfc_expr**) ../../gcc/fortran/expr.c:3178 0x781265 gfc_match_kind_spec(gfc_typespec*, bool) ../../gcc/fortran/decl.c:3241 0x787ae9 gfc_match_decl_type_spec(gfc_typespec*, int) ../../gcc/fortran/decl.c:4672 0x78947c gfc_match_data_decl() ../../gcc/fortran/decl.c:6226 0x7f49c3 match_word ../../gcc/fortran/parse.c:67 0x7f49c3 decode_statement ../../gcc/fortran/parse.c:378 0x7f640a next_free ../../gcc/fortran/parse.c:1397 0x7f640a next_statement ../../gcc/fortran/parse.c:1629 0x7f7b2b parse_spec ../../gcc/fortran/parse.c:4168 0x7fae8c parse_progunit ../../gcc/fortran/parse.c:6179