c = getc(lb); if (c == '\t' && tflag) do
if ((c = getc(lb)) == EOF) { puts("\n\\ No newline at end of file"); return; } if (c == '\t' && tflag) { do {
fetch(long *f, int a, int b, FILE *lb, char *s, int oldfile){	int i, j, c, col, nc;	/*	 * When doing #ifdef's, copy down to current line	 * if this is the first file, so that stuff makes it to output.	 */	if (format == D_IFDEF && oldfile) {		long curpos = ftell(lb);		/* print through if append (a>b), else to (nb: 0 vs 1 orig) */		nc = f[a > b ? b : a - 1] - curpos;		for (i = 0; i < nc; i++)			putchar(getc(lb));	}	if (a > b)		return;	if (format == D_IFDEF) {		if (inifdef) {			printf("#else /* %s%s */\n",			    oldfile == 1 ? "!" : "", ifdefname);		} else {			if (oldfile)				printf("#ifndef %s\n", ifdefname);			else				printf("#ifdef %s\n", ifdefname);		}		inifdef = 1 + oldfile;	}	for (i = a; i <= b; i++) {		fseek(lb, f[i - 1], SEEK_SET);		nc = f[i] - f[i - 1];		if (format != D_IFDEF)			fputs(s, stdout);		col = 0;		for (j = 0; j < nc; j++) {			c = getc(lb);			if (c == '\t' && tflag)				do					putchar(' ');				while (++col & 7);			else {				putchar(c);				col++;			}		}	}}