summaryrefslogtreecommitdiff
path: root/Src/lex.c
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2007-01-19 21:36:00 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2007-01-19 21:36:00 +0000
commitde272e0309bc1739f13cc8271a2f94bcde7ba23c (patch)
treed094cb847e41520af34ef250e4c82eea66f52016 /Src/lex.c
parenta5729be83502b3d2ba93e38a485393c9af13a935 (diff)
downloadzsh-de272e0309bc1739f13cc8271a2f94bcde7ba23c.tar.gz
zsh-de272e0309bc1739f13cc8271a2f94bcde7ba23c.zip
23115: ";|" at end of case clause causes later patterns to be tested
Diffstat (limited to 'Src/lex.c')
-rw-r--r--Src/lex.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/Src/lex.c b/Src/lex.c
index 7a0bf2b1c..095d58150 100644
--- a/Src/lex.c
+++ b/Src/lex.c
@@ -155,6 +155,7 @@ mod_export char *tokstrings[WHILE + 1] = {
"))", /* DOUTPAR */
"&|", /* AMPERBANG 30 */
";&", /* SEMIAMP */
+ ";|", /* SEMIBAR */
};
/* lexical state */
@@ -381,6 +382,7 @@ ctxtlex(void)
case SEMI:
case DSEMI:
case SEMIAMP:
+ case SEMIBAR:
case AMPER:
case AMPERBANG:
case INPAR:
@@ -713,6 +715,8 @@ gettok(void)
return DSEMI;
else if(d == '&')
return SEMIAMP;
+ else if (d == '|')
+ return SEMIBAR;
hungetc(d);
lexstop = 0;
return SEMI;