/* Testcase for PR fortran/9974. This was a miscompilation of the g77 | |
front-end caused by the jump bypassing optimizations not handling | |
instructions inserted on CFG edges. */ | |
extern void abort (); | |
int bar () | |
{ | |
return 1; | |
} | |
void foo (int x) | |
{ | |
unsigned char error = 0; | |
if (! (error = ((x == 0) || bar ()))) | |
bar (); | |
if (! error) | |
abort (); | |
} | |
int main() | |
{ | |
foo (1); | |
return 0; | |
} | |