https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101729
Bug ID: 101729 Summary: ICE in create_tmp_var, at gimple-expr.c:482 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: --- A legacy feature affects versions down to at least r5, at -O2+ : $ cat z1.f90 program p call g(3) end subroutine g(n) integer, intent(in) :: n integer :: i, k = 1 do i = 1, n if ( k /= 0 ) stop 1 call h end do print *, n, k end subroutine h call g(1, *99) call g(2) stop 2 99 stop 3 end $ gfortran-12-20210801 -c z1.f90 -O2 -std=legacy z1.f90:14:17: 14 | call g(1, *99) | 1 Warning: More actual than formal arguments in procedure call at (1) during GIMPLE pass: fnsplit z1.f90:3:3: 3 | end | ^ internal compiler error: in create_tmp_var, at gimple-expr.c:482 0x993db6 create_tmp_var(tree_node*, char const*) ../../gcc/gimple-expr.c:482 0x15aa794 split_function ../../gcc/ipa-split.c:1643 0x15aa794 execute_split_functions ../../gcc/ipa-split.c:1866