extern void abort (void); | |
static char * __attribute__((noinline)) | |
itos(int num) | |
{ | |
return (char *)0; | |
} | |
static void __attribute__((noinline)) | |
foo(int i, const char *x) | |
{ | |
if (i >= 4) | |
abort (); | |
} | |
int main() | |
{ | |
int x = -__INT_MAX__ + 3; | |
int i; | |
for (i = 0; i < 4; ++i) | |
{ | |
char *p; | |
--x; | |
p = itos(x); | |
foo(i, p); | |
} | |
return 0; | |
} | |