]> git.saurik.com Git - bison.git/blobdiff - TODO
* src/Makefile.am (bison_SOURCES): Add parse-skel.h and
[bison.git] / TODO
diff --git a/TODO b/TODO
index 301bfa71be8d88aa8eb463b8b17177d43543dd03..80a7cf8cec21a0e943b8a60d84fd0539d0f47017 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,44 +1,65 @@
 -*- outline -*-
 
-* src/reader.c
-Complete parse_skel_decl () with parse_dquoted_param ().       [ok]
-Check and cleanup for CPP-out code.    []
-
-* src/output.c
-Remove %%verbose which is useless.     [ok]
-
-* Broken options.
-%no-lines      []
-%no-parser     []
-%pure-parser ? []
-%semantic-parser       []
-%token-table   []
-** which could use parse_dquoted_param ().
-%skeleton      [ok]
-%output                []
-%file-prefix   []
-%name-prefix   []
-
-Cleanup dirty CPP-out code.    []
-** Output sub-skeleton files.  []
-Useful for %no_parser. []
-*** New skeleton.      []
-
-* src/macrotab.[ch]
-Removing warnings when compiling. (gcc-warnings).      [ok]
+* Prologue
+The %union is declared after the user C declarations. It can be
+a problem if YYSTYPE is declared after the user part.  []
+
+Actually, the real problem seems that the %union ought to be output
+where it was defined.  For instance, in gettext/intl/plural.y, we
+have:
+
+       %{
+       ...
+       #include "gettextP.h"
+       ...
+       %}
+
+       %union {
+         unsigned long int num;
+         enum operator op;
+         struct expression *exp;
+       }
+
+       %{
+       ...
+       static int yylex PARAMS ((YYSTYPE *lval, const char **pexp));
+       ...
+       %}
+
+Where the first part defines struct expression, the second uses it to
+define YYSTYPE, and the last uses YYSTYPE.  Only this order is valid.
+
+* --graph
+Show reductions.       []
+
+* Broken options ?
+** %no-lines           [ok]
+** %no-parser          []
+** %pure-parser                []
+** %semantic-parser    []
+** %token-table                []
+** Options which could use parse_dquoted_param ().
+Maybe transfered in lex.c.
+*** %skeleton          [ok]
+*** %output            []
+*** %file-prefix       []
+*** %name-prefix       []
+
+** Skeleton strategy.  []
+Must we keep %no-parser?
+            %token-table?
+*** New skeletons.     []
 
 * src/print_graph.c
 Find the best graph parameters.        []
 
 * doc/bison.texinfo
-Update informations about ERROR_VERBOSE.       []
-Add explainations about skeleton muscles.      []
-Add explainations about %skeleton.     []
-
-* testsuite.
-** tests/calc.at
-Remove --yyerror-verbose.      []
-** tests/torture.at
-Remove --yyerror-verbose.      [ok]
-** tests/calc.at
-Test --error-verbose.  []
+** Update
+informations about ERROR_VERBOSE.      []
+** Add explainations about
+skeleton muscles.      []
+%skeleton.             []
+
+* testsuite
+** tests/pure-parser.at        []
+New tests.