http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48363
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-03-30 15:54:28 UTC --- (In reply to comment #2) > (In reply to comment #1) > > The parameter has its address taken in > > _gfortran_transfer_integer_write (&dt_parm.0, &i, 4); > > True, but the value is not modified - which the ME should know as the "fn > spec" > is ".wR" The parameter is not in SSA form so tail-recursion would have to insert a store and reload the value at appropriate places. It doesn't support that.