diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2011-03-23 12:49:53 +0100 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2011-03-23 12:49:53 +0100 |
commit | 26d92bb8921ac4e022cdc88bde8fc7bc617f8766 (patch) | |
tree | 5e900b466e46e1848b4d2bd98a5894cf6214b08b /filter/config.Y | |
parent | 6bcef22580010aec695fb2b559c7b33ee00261b0 (diff) |
A hack to distinguish if..else from else: in case.
The old BIRD grammar needs two lookaheads to distinguish if..else from
else: in case, which caused the parser to fail on some combinations of
both expressions.
This patch replaces two tokens 'else' ':' by one token 'else:' to fix
that.
Diffstat (limited to 'filter/config.Y')
-rw-r--r-- | filter/config.Y | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/filter/config.Y b/filter/config.Y index 8ff20466..b9aa67f8 100644 --- a/filter/config.Y +++ b/filter/config.Y @@ -305,11 +305,11 @@ switch_body: /* EMPTY */ { $$ = NULL; } $$->data = $4; $$->left = $1; } - | switch_body ELSE ':' cmds { + | switch_body ELSECOL cmds { $$ = f_new_tree(); $$->from.type = T_VOID; $$->to.type = T_VOID; - $$->data = $4; + $$->data = $3; $$->left = $1; } ; |