The following code produces the error "internal compiler error: in fold_convert, at fold-const.c:2626"
when compiled with GCC trunk rev. 128037: module A type A_type real comp end type end module A module B contains function initA() use A implicit none type(A_type):: initA initA%comp=1.0 end function end module B program C use B use A implicit none type(A_type):: A_var A_var = initA() end program C The crucial part here are the USE statements in program C. The error only pops up when they appear as listed above. Exchanging them to use A use B makes the error vanish. The error is also killed by A_var = initA() It happens for GCC 4.3.0 (trunk) as well as 4.1.3 and 4.2.1. The target system is i686-pc-linux-gnu. -- Summary: ICE in fold_const.c (fold_convert) when reordering USE statements Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jaydub66 at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33295