https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107215
Bug ID: 107215 Summary: ICE in gfc_real2real and gfc_complex2complex Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Additional examples affect versions down to at least r5 : $ cat z1.f90 program p double precision, parameter :: z = 1.0d0 real :: y(1) complex :: x(1) x = [real :: -'1'] * z y = z * [real :: -'1'] x = [real :: -(.true.)] * z y = z * [real :: -(.true.)] end $ cat z2.f90 program p double precision, parameter :: z = 1.0d0 real :: y(1) complex :: x(1) x = [complex :: -'1'] * z y = z * [complex :: -'1'] x = [complex :: -(.true.)] * z y = z * [complex :: -(.true.)] end $ gfortran-13-20221009 -c z1.f90 f951: internal compiler error: Segmentation fault 0xd93caf crash_signal ../../gcc/toplev.cc:314 0x77ecb7 gfc_real2real(gfc_expr*, int) ../../gcc/fortran/arith.cc:2201 0x8526c2 gfc_convert_constant(gfc_expr*, bt, int) ../../gcc/fortran/simplify.cc:8762 #... $ gfortran-13-20221009 -c z2.f90 f951: internal compiler error: Segmentation fault 0xd93caf crash_signal ../../gcc/toplev.cc:314 0x77f421 gfc_complex2complex(gfc_expr*, int) ../../gcc/fortran/arith.cc:2444 0x8526c2 gfc_convert_constant(gfc_expr*, bt, int) ../../gcc/fortran/simplify.cc:8762 0x7c9a3b do_simplify ../../gcc/fortran/intrinsic.cc:4658 0x7d5501 gfc_convert_type_warn(gfc_expr*, gfc_typespec*, int, int, bool) ../../gcc/fortran/intrinsic.cc:5384 0x7b7958 gfc_type_convert_binary(gfc_expr*, int) ../../gcc/fortran/expr.cc:985 0x77c317 eval_intrinsic ../../gcc/fortran/arith.cc:1606 0x7eed8c match_add_operand ../../gcc/fortran/matchexp.cc:392 0x7eef3c match_level_2 ../../gcc/fortran/matchexp.cc:480 0x7ef092 match_level_3 ../../gcc/fortran/matchexp.cc:551 0x7ef184 match_level_4 ../../gcc/fortran/matchexp.cc:599 0x7ef184 match_and_operand ../../gcc/fortran/matchexp.cc:693 0x7ef372 match_or_operand ../../gcc/fortran/matchexp.cc:722 0x7ef442 match_equiv_operand ../../gcc/fortran/matchexp.cc:765 0x7ef514 match_level_5 ../../gcc/fortran/matchexp.cc:811 0x7ee8e1 gfc_match_expr(gfc_expr**) ../../gcc/fortran/matchexp.cc:870 0x7e5ec0 gfc_match(char const*, ...) ../../gcc/fortran/match.cc:1131 0x7e7c89 gfc_match_assignment() ../../gcc/fortran/match.cc:1330 0x812e40 match_word ../../gcc/fortran/parse.cc:67 0x812e40 decode_statement ../../gcc/fortran/parse.cc:363