]> 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 62622a61a15a47fe063e05f7dd39b9b9355b76d3..80a7cf8cec21a0e943b8a60d84fd0539d0f47017 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,11 +1,38 @@
 -*- outline -*-
 
-* tokendefs
-This muscle should not exist: the information it contains should be
-available from the rest of bison.  Once the information public, get
-rid of it.
+* Prologue
+The %union is declared after the user C declarations. It can be
+a problem if YYSTYPE is declared after the user part.  []
 
-* Broken options ?.
+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                []
@@ -23,9 +50,6 @@ Must we keep %no-parser?
             %token-table?
 *** New skeletons.     []
 
-* src/macrotab.[ch]
-Removing warnings when compiling. (gcc-warnings).      [ok]
-
 * src/print_graph.c
 Find the best graph parameters.        []
 
@@ -36,7 +60,6 @@ informations about ERROR_VERBOSE.     []
 skeleton muscles.      []
 %skeleton.             []
 
-* testsuite.
-** tests/reduce.at     [ok]
+* testsuite
 ** tests/pure-parser.at        []
 New tests.