mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
todo: short term
* TODO (syntax_error, variable names): New.
This commit is contained in:
22
TODO
22
TODO
@@ -1,6 +1,28 @@
|
||||
-*- outline -*-
|
||||
|
||||
* Short term
|
||||
** Use syntax_error from the scanner?
|
||||
This would provide a means to raise syntax error from function called
|
||||
from the scanner. Actually, there is no good solution to report a
|
||||
lexical error in general. Usually they are kept at the scanner level
|
||||
only, ignoring the guilty token. But that might not be the best bet,
|
||||
since we don't benefit from the syntactic error recovery.
|
||||
|
||||
We still have the possibility to return an invalid token number, which
|
||||
does the trick. But then the error message from the parser is poor
|
||||
(something like "unexpected $undefined"). Since the scanner probably
|
||||
already reported the error, we should directly enter error-recovery,
|
||||
without reporting the error message (i.e., YYERROR's semantics).
|
||||
|
||||
Back to lalr1.cc (whose name is now quite unfortunate, since it also
|
||||
covers lr and ielr), if we support exceptions from yylex, should we
|
||||
propose a lexical_error in addition to syntax_error? Should they have
|
||||
a common root, say parse_error? Should syntax_error be renamed
|
||||
syntactic_error for consistency with lexical_error?
|
||||
|
||||
** Variable names.
|
||||
What should we name `variant' and `lex_symbol'?
|
||||
|
||||
** Use b4_symbol in all the skeleton
|
||||
Then remove the older system, including the tables generated by
|
||||
output.c
|
||||
|
||||
Reference in New Issue
Block a user