diff options
Diffstat (limited to 'parser.y')
-rw-r--r-- | parser.y | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -449,9 +449,10 @@ expr : IDENT { $$ = intern(string_own($1), nil); } | quasilit { $$ = $1; } ; -regex : '/' regexpr '/' { $$ = $2; } +regex : '/' regexpr '/' { $$ = $2; end_of_regex(); } | '/' error { $$ = nil; - yybadtoken(yychar, lit("regex")); } + yybadtoken(yychar, lit("regex")); + end_of_regex(); } ; regexpr : regbranch { $$ = if3(cdr($1), @@ -504,6 +505,7 @@ regchar : '?' { $$ = '?'; } | ')' { $$ = ')'; } | '^' { $$ = '^'; } | '|' { $$ = '|'; } + | '/' { $$ = '/'; } | REGCHAR { $$ = $1; } ; |