------- Comment #11 from fxcoudert at gcc dot gnu dot org 2007-07-27 14:47 ------- Here is the shortest Fortran testcase I could come with:
$ cat a.f90 subroutine foo integer :: i do i = i + 1 select case (' ') case default call bar (i + 1, i - 1) end select enddo end subroutine foo $ gfortran -O2 -c a.f90 Unable to coalesce ssa_names 1 and 3 which are marked as MUST COALESCE. i_1(ab) and i_3(ab) a.f90: In function foo: a.f90:1: internal compiler error: SSA corruption I tried to make a C testcase from the original tree dump of this Fortran code, but couldn't reproduce the ICE. It probably depends on the exact blocks inserted. Anyway, please note that starting with rev. 126978, the Fortran front-end emits different code for this code (due to better translation of SELECT for character variables, fixing PR32035), and thus the ICE is not triggered by the reporter's code (nor is it triggered by my reduced testcase). -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fxcoudert at gcc dot gnu dot | |org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2007-07-27 14:47:48 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32720