return (unsigned char)*g_parsefile->next_to_pgetc++;
}
+static void
+nlprompt(void)
+{
+ g_parsefile->linno++;
+ setprompt_if(doprompt, 2);
+}
+static void
+nlnoprompt(void)
+{
+ g_parsefile->linno++;
+ needprompt = doprompt;
+}
+
static int
pgetc(void)
{
break;
}
- g_parsefile->linno++;
- setprompt_if(doprompt, 2);
+ nlprompt();
}
return c;
if (syntax == BASESYNTAX)
goto endword; /* exit outer loop */
USTPUTC(c, out);
- g_parsefile->linno++;
- setprompt_if(doprompt, 2);
+ nlprompt();
c = pgetc();
goto loop; /* continue outer loop */
case CWORD:
USTPUTC('\\', out);
pungetc();
} else if (c == '\n') {
- setprompt_if(doprompt, 2);
+ nlprompt();
} else {
#if ENABLE_ASH_EXPAND_PRMT
if (c == '$' && pssyntax) {
continue;
if (*p == '\n' && *q == '\0') {
c = PEOF;
- g_parsefile->linno++;
- needprompt = doprompt;
+ nlnoprompt();
} else {
pushstring(line, NULL);
}
case '\\':
pc = pgetc();
if (pc == '\n') {
- g_parsefile->linno++;
- setprompt_if(doprompt, 2);
+ nlprompt();
/*
* If eating a newline, avoid putting
* the newline into the new character
raise_error_syntax("EOF in backquote substitution");
case '\n':
- g_parsefile->linno++;
- needprompt = doprompt;
+ nlnoprompt();
break;
default:
pungetc();
break; /* return readtoken1(...) */
}
- startlinno = ++g_parsefile->linno;
- setprompt_if(doprompt, 2);
+ nlprompt();
} else {
const char *p;
p = xxreadtoken_chars + sizeof(xxreadtoken_chars) - 1;
if (c != PEOF) {
if (c == '\n') {
- g_parsefile->linno++;
- needprompt = doprompt;
+ nlnoprompt();
}
p = strchr(xxreadtoken_chars, c);
continue;
case '\\':
if (pgetc() == '\n') {
- startlinno = ++g_parsefile->linno;
- setprompt_if(doprompt, 2);
+ nlprompt();
continue;
}
pungetc();
goto breakloop;
case '\n':
- g_parsefile->linno++;
- needprompt = doprompt;
+ nlnoprompt();
RETURN(TNL);
case PEOF:
RETURN(TEOF);