$ cat z.f program z i = Z'80203040' if (i .ne. Z'80203040') call abort end $ gfortran z.f $ ./a.out Aborted $ g77 z.f $ ./a.out $
This is a signedness/cast issue. .t02.original shows: int4 i; i = 080203040; if ((int8) i != 080203040) { _gfortran_abort (); } else { (void) 0; } (And why is hexadecimal shown as 0 in the dump?) -- Summary: Z and negative integers Product: gcc Version: 4.1.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tkoenig at gcc dot gnu dot org OtherBugsDependingO 19292 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24828