struct parsefile { long fd; char *buf; }; struct parsefile basepf; struct parsefile *parsefile = &basepf; #ifdef STACK_SIZE int filler[STACK_SIZE / (2*sizeof(int))]; #else int filler[0x3000]; #endif int el; char * g1 (a, b) int a; int *b; { } g2 (a) long a; { if (a != 0xdeadbeefL) abort (); exit (0); } f () { register char *p, *q; register int i; register int something; if (parsefile->fd == 0L && el) { const char *rl_cp; int len; rl_cp = g1 (el, &len); strcpy (p, rl_cp); } else { alabel: i = g2 (parsefile->fd); } } main () { el = 0; parsefile->fd = 0xdeadbeefL; f (); }