https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109948
Bug ID: 109948 Summary: ICE(segfault) in gfc_expression_rank() from gfc_op_rank_conformable() Product: gcc Version: 13.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: rimvydas.jas at gmail dot com Target Milestone: --- Bisected down to recent g:611be07e48956c8b7371eb580eef124990114fd3 $ cat test_associate.f90 subroutine foo(y, x) implicit none type tlap real, allocatable :: z(:) end type tlap type(tlap) :: y real :: x(:) associate(z=>y%z) if (getpid() == 1) then where ( z < 0.0 ) x(:) = z(:) else where ( z < 0.0 ) x(:) = z(:) endif end associate end subroutine foo $ gfortran -O1 -c test_associate.f90 f951: internal compiler error: Segmentation fault 0xd362af crash_signal /data/g13/gcc/toplev.cc:314 0x2aaaaabfcecf ??? /tmp/glibc-2.37/signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0 0x7ca895 gfc_expression_rank(gfc_expr*) /data/g13/gcc/fortran/resolve.cc:5643 0x7caa44 gfc_op_rank_conformable(gfc_expr*, gfc_expr*) /data/g13/gcc/fortran/resolve.cc:5676 0x71228c eval_intrinsic /data/g13/gcc/fortran/arith.cc:1669 0x789edc match_level_4 /data/g13/gcc/fortran/matchexp.cc:646 0x789edc match_and_operand /data/g13/gcc/fortran/matchexp.cc:693 0x789f66 match_or_operand /data/g13/gcc/fortran/matchexp.cc:722 0x78a076 match_equiv_operand /data/g13/gcc/fortran/matchexp.cc:765 0x78a188 match_level_5gfc_op_rank_conformable( /data/g13/gcc/fortran/matchexp.cc:811 0x7892e4 gfc_match_expr(gfc_expr**) /data/g13/gcc/fortran/matchexp.cc:870 0x7bf2e0 match_actual_arg /data/g13/gcc/fortran/primary.cc:1688 0x7c0c88 gfc_match_actual_arglist(int, gfc_actual_arglist**, bool) /data/g13/gcc/fortran/primary.cc:1953 0x7c3455 gfc_match_rvalue(gfc_expr**) /data/g13/gcc/fortran/primary.cc:3695 0x7894fe match_primary /data/g13/gcc/fortran/matchexp.cc:157 0x7894fe match_level_1 /data/g13/gcc/fortran/matchexp.cc:211 0x7894fe match_mult_operand /data/g13/gcc/fortran/matchexp.cc:267 0x7897c8 match_add_operand /data/g13/gcc/fortran/matchexp.cc:356 0x789a9c match_level_2 /data/g13/gcc/fortran/matchexp.cc:480 0x789c56 match_level_3 /data/g13/gcc/fortran/matchexp.cc:551 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.