The following case is reduced from a LAPACK testsuite failure on i686-pc- cygwin with gfortran 20050129. The equivalence is just a way to capture the floating point value that triggers the error. Not sure yet if this a gfortran bug or a cygwin libc problem.
Test case is real r integer i equivalence (r,i) i = 2139095040 write(6,*) 'r = ', r end g77 gives: r = Inf gfortran gives: At line 5 of file printf_bug.f Internal Error: printf is broken r = -- Summary: gfortran reports "Internal Error: printf is broken" Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: billingd at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-cygwin GCC host triplet: i686-pc-cygwin GCC target triplet: i686-pc-cygwin http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19691