diff --git a/src/frontend/parser/lexical.c b/src/frontend/parser/lexical.c index 55bcd6267..d2cd5ec87 100644 --- a/src/frontend/parser/lexical.c +++ b/src/frontend/parser/lexical.c @@ -85,10 +85,8 @@ static int numeofs = 0; } #define newword \ - if (delayed) append; \ - delayed = 0; \ + append; \ cw->wl_word = copy(buf); \ - delayed = 1; \ bzero(buf, NEW_BSIZE_SP); \ i = 0; @@ -121,7 +119,6 @@ cp_lexer(char *string) wordlist *wlist = NULL, *cw = NULL; char buf[NEW_BSIZE_SP], linebuf[NEW_BSIZE_SP]; int paren; - int delayed; if (cp_inp_cur == NULL) cp_inp_cur = cp_in; @@ -137,7 +134,6 @@ nloop: paren = 0; bzero(linebuf, NEW_BSIZE_SP); bzero(buf, NEW_BSIZE_SP); - delayed = 1; for (;;) { if (string) { c = *string++; @@ -175,7 +171,7 @@ gotchar: if ((c == EOF) && cp_bqflag) c = '\n'; if ((c == cp_hash) && !cp_interactive && (j == 1)) { - if (delayed) append; + append; if (string) return (NULL); while (((c = input(cp_inp_cur)) != '\n') && (c != EOF)) @@ -202,7 +198,7 @@ gotchar: buf[i] = '\0'; newword; } - if (delayed) append; + append; if (cw->wl_prev) { cw->wl_prev->wl_next = NULL; tfree(cw); @@ -250,7 +246,7 @@ gotchar: case '\004': case EOF: - if (delayed) append; + append; if (cp_interactive && !cp_nocc && (string == NULL)) { if (j == 0) { @@ -297,7 +293,7 @@ gotchar: #else fputc(linebuf[j], cp_out); /* But you can't edit */ #endif - if (delayed) append; + append; // cp_ccom doesn't mess wlist, read only access to wlist->wl_word cp_ccom(wlist, buf, TRUE); wl_free(wlist);