diff options
author | Martin Mares <mj@ucw.cz> | 1999-11-15 12:36:09 +0100 |
---|---|---|
committer | Martin Mares <mj@ucw.cz> | 1999-11-15 12:36:09 +0100 |
commit | fd54b602665f71879087faeb0b733fefa9c964bb (patch) | |
tree | bb41872780984f62e7d336c3bca177a39159d4e2 /filter | |
parent | 944f008af7a46144e38f963097e8e4cce493e2a7 (diff) | |
download | bird-fd54b602665f71879087faeb0b733fefa9c964bb.tar bird-fd54b602665f71879087faeb0b733fefa9c964bb.zip |
ENUM's are now recognized as constants.
Diffstat (limited to 'filter')
-rw-r--r-- | filter/config.Y | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/filter/config.Y b/filter/config.Y index 4fe1473..5d84b92 100644 --- a/filter/config.Y +++ b/filter/config.Y @@ -33,9 +33,7 @@ CF_KEYWORDS(FUNCTION, PRINT, PRINTN, CONST, LEN, DEFINED, IMPOSSIBLE, - RTSDUMMY, RTSSTATIC, RTSINHERIT, RTSDEVICE, RTSSTATIC_DEVICE, RTSREDIRECT, RTSRIP, RTSRIP_EXT, RTSOSPF, RTSOSPF_EXT, RTSOSPF_IA, RTSOSPF_BOUNDARY, RTSBGP, RTSPIPE, - FILTER - ) + FILTER) %nonassoc THEN %nonassoc ELSE @@ -238,6 +236,7 @@ constant: | ipa { NEW_F_VAL; $$ = f_new_inst(); $$->code = 'C'; $$->a1.p = val; *val = $1; } | prefix_s {NEW_F_VAL; $$ = f_new_inst(); $$->code = 'C'; $$->a1.p = val; *val = $1; } | '[' set_items ']' { printf( "We've got a set here..." ); $$ = f_new_inst(); $$->code = 'c'; $$->a1.i = T_SET; $$->a2.p = build_tree($2); printf( "ook\n" ); } + | ENUM { $$ = f_new_inst(); $$->code = 'c'; $$->a1.i = $1 >> 16; $$->a2.i = $1 & 0xffff; } ; any_dynamic: |