+++ This bug was initially created as a clone of Bug #38095 +++ In trying to reduce the ICE, Mikael Morin actually found a different ICE: ------- Bug #38095 Comment #8 From Mikael Morin 2008-11-12 22:43 ------- I tried to reduce the case. module bar implicit none contains ! elemental function trim_append(xx,yy) result(xy) character (len=*), intent(in) :: xx,yy character (len=len(xx) + len(yy)) :: xy xy = xx // yy end function trim_append ! function same(xx) result(yy) character (len=*), intent(in) :: xx(:) character (len=len(xx)) :: yy(size(xx)) yy = xx end function same ! subroutine xmain() character(len=2) :: c(1) c = trim_append(["a"],same(["b"])) end subroutine xmain ! end module bar pr38095.f90:5: erreur interne du compilateur: dans gfc_trans_create_temp_array, à fortran/trans-array.c:648 Veuillez soumettre un rapport complet d'anomalies, avec le source pré-traité si nécessaire. Consultez pour plus de détail. I bet some of you guys recognize that old friend of ours, PR31610, whose patch was reverted in PR37903. Of course characters are a special (understand: not working) case. Argh! This is probably unrelated to the original ICE though. -- Summary: [4.4 Regression] character ICE in gfc_trans_create_temp_array Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org BugsThisDependsOn: 38095 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38119