Ethereal-cvs: [ethereal-cvs] cvs commit: ethereal dfilter.c dfilter-int.h dfilter-scanner.l
guy 1999/10/07 16:47:27 CDT
Modified files:
. dfilter.c dfilter-int.h dfilter-scanner.l
dfilter-grammar.y
Log:
Make "dfilter_error()" available to the lexical analyzer.
Get rid of the declaration of the non-existent "dfilter_yyerror()", and
put in some #defines to work around the fact that the #defines to
replace "yy" with "dfilter_" in the names of Flex-generated and
Yacc-generated routines aren't put into a header file, they're put into
".c" files.
Have it remember the error message it was handed (unless it's Yacc's
boring "parse error" message).
When generating the message to be shown to the user on a parse error,
make it be the "Unable to parse filter string" message, and, if a
non-boring error message was supplied to "dfilter_error()", take that
error message onto the end.
Don't panic if a field type we don't yet support in the parser is seen;
generate an error, telling the user we don't support filter on that type
yet.
Don't assume that "global_df" has been set if we see an empty statement
(if the first token was the end-marker, because, say, the first token
the lexical analyzer found was a field of a type not yet supported in
filter expressions, "global_df" won't have been set).
Revision Changes Path
1.24 +22 -6 ethereal/dfilter.c
1.5 +16 -2 ethereal/dfilter-int.h
1.15 +29 -9 ethereal/dfilter-scanner.l
1.20 +2 -2 ethereal/dfilter-grammar.y