X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/fc2476c7cd70ff882dd29058d0fd6440972a6c64..1e0348079323bc0dcf023e60873c976c77ece418:/TODO diff --git a/TODO b/TODO index e42c4b5c..a9ec3083 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,47 @@ -*- outline -*- +* Short term +** Use b4_symbol in all the skeleton +Then remove the older system, including the tables generated by +output.c + +** Update the documentation on gnu.org + +** Get rid of fake #lines [Bison: ...] +Possibly as simple as checking whether the column number is nonnegative. + +I have seen messages like the following from GCC. + +:0: fatal error: opening dependency file .deps/libltdl/argz.Tpo: No such file or directory + + +** Document %define assert + +** Discuss about %printer/%destroy in the case of C++. +It would be very nice to provide the symbol classes with an operator<< +and a destructor. Unfortunately the syntax we have chosen for +%destroy and %printer make them hard to reuse. For instance, the user +is invited to write something like + + %printer { debug_stream() << $$; } ; + +which is hard to reuse elsewhere since it wants to use +"debug_stream()" to find the stream to use. The same applies to +%destroy: we told the user she could use the members of the Parser +class in the printers/destructors, which is not good for an operator<< +since it is no longer bound to a particular parser, it's just a +(standalone symbol). + +** Rename LR0.cc +as lr0.cc, why upper case? + +** bench several bisons. +Enhance bench.pl with %b to run different bisons. + +** Use b4_symbol everywhere. +Move its definition in the more standard places and deploy it in other +skeletons. + * Various ** YYPRINT glr.c inherits its symbol_print function from c.m4, which supports