static char *sccsid
= "@(#)error.c 3.2 83/08/16";
static char *filename
; /* source file name */
static struct ww
*errwin
; /* window for error reporting */
static int errlineno
; /* lineno in errwin */
static char baderror
; /* can't open the error window */
#define ERRLINES 10 /* number of lines for errwin */
error(fmt
, a
, b
, c
, d
, e
, f
, g
, h
)
(void) wwprintf(cmdwin
, fmt
, a
, b
, c
, d
, e
, f
, g
, h
);
(void) wwputs(" ", cmdwin
);
(void) sprintf(buf
, "Errors from %s", filename
);
if ((errwin
= openiwin(ERRLINES
, buf
)) == 0) {
(void) wwprintf(cmdwin
, "Can't open error window. ");
if (errlineno
++ > ERRLINES
- 4) {
(void) wwprintf(errwin
, "line %d: ", lineno
);
(void) wwprintf(errwin
, fmt
, a
, b
, c
, d
, e
, f
, g
, h
);
(void) wwprintf(errwin
, "\n");
filename
= malloc((unsigned) strlen(fn
) + 1);
(void) strcpy(filename
, fn
);