diff options
Diffstat (limited to 'sys/cmd/rc/lex.c')
-rw-r--r-- | sys/cmd/rc/lex.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/sys/cmd/rc/lex.c b/sys/cmd/rc/lex.c index 8ddf270..5de238e 100644 --- a/sys/cmd/rc/lex.c +++ b/sys/cmd/rc/lex.c @@ -217,6 +217,19 @@ yylex(void) put3('E','O','F'); return EOF; + case '$': + lexer.haddollar = 1; + if(nextis('#')){ + put2('$','#'); + return Tcount; + } + if(nextis('^')){ + put2('$','^'); + return Tjoin; + } + put1('$'); + return '$'; + case '@': lexer.haddollar = 0; put1('@'); @@ -324,19 +337,6 @@ yylex(void) return node->type; - case '$': - lexer.haddollar = 1; - if(nextis('#')){ - put2('$','#'); - return Tcount; - } - if(nextis('^')){ - put2('$','^'); - return Tflat; - } - put1('$'); - return '$'; - case '\'': lexer.hadword = 1; lexer.inquote = 1; |