summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Src/parse.c6
2 files changed, 6 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 87d47ac65..fd954ba26 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,7 @@
2001-06-21 Bart Schaefer <schaefer@zsh.org>
- * 15023: Src/parse.c: Accept newlines before the "in" keyword in
- "for" and "select", per POSIX.
+ * 15023, 15027: Src/parse.c: Accept newlines before the "in"
+ keyword in "for" and "select", per POSIX.
* 15020: Completion/Zsh/Command/_cd, Completion/Zsh/Context/_autocd,
Completion/Zsh/Type/_command_names: When AUTO_CD is set, complete
diff --git a/Src/parse.c b/Src/parse.c
index 9ea691d2c..b611e8e0c 100644
--- a/Src/parse.c
+++ b/Src/parse.c
@@ -903,13 +903,15 @@ par_for(int *complex)
yylex();
type = WC_FOR_COND;
} else {
+ int posix_in;
infor = 0;
if (tok != STRING || !isident(tokstr))
YYERRORV(oecused);
ecstr(tokstr);
incmdpos = 1;
yylex();
- while (isnewlin && !csh)
+ posix_in = isnewlin;
+ while (isnewlin)
yylex();
if (tok == STRING && !strcmp(tokstr, "in")) {
int np, n;
@@ -922,7 +924,7 @@ par_for(int *complex)
YYERRORV(oecused);
ecbuf[np] = n;
type = (sel ? WC_SELECT_LIST : WC_FOR_LIST);
- } else if (tok == INPAR) {
+ } else if (!posix_in && tok == INPAR) {
int np, n;
incmdpos = 0;