mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-04-24 10:39:38 +00:00
b7c49edf13
reductions, then output the report anyway if requested, then die. * src/symtab.c (bucket_new): Initialize `value' to -1, not 0. * src/reader.c (eoftoken): New. (parse_token_decl): If the token being defined has value `0', it is the eoftoken. (packsymbols): No longer hack `tags' to insert `$' by hand. Be sure to preserve the value of the eoftoken. (reader): Make sure eoftoken is defined. Initialize nsyms to 0: now eoftoken is created just like the others. * src/print.c (print_grammar): Don't special case the eof token. * src/regression.at: Adjust: `$' has value 0, not -1, which was a lie anyway, albeit pleasant. * tests/calc.at: Exercise error messages with eoftoken. Change the grammar so that empty input is invalid. Adjust expectations. When yyungeting, be sure to use a valid yylloc: use last_yylloc.
142 lines
3.9 KiB
Plaintext
142 lines
3.9 KiB
Plaintext
Bison News
|
|
----------
|
|
|
|
Changes in version 1.49a:
|
|
|
|
* Items overflow
|
|
Bison no longer dumps core when there are too many items, it just
|
|
dies.
|
|
|
|
* Token end-of-file
|
|
The token end of file may be specified by the user, in which case,
|
|
the user symbol is used in the reports, the graphs, and the verbose
|
|
error messages instead of `$', which remains being the defaults.
|
|
For instance
|
|
%token YYEOF 0
|
|
or
|
|
%token YYEOF 0 "end of file"
|
|
|
|
Changes in version 1.30:
|
|
|
|
* `--defines' and `--graph' have now an optionnal argument which is the
|
|
output file name. `-d' and `-g' do not change, they do not take any
|
|
argument.
|
|
|
|
* `%source_extension' and `%header_extension' are removed, failed
|
|
experiment.
|
|
|
|
* Portability fixes.
|
|
|
|
Changes in version 1.29, 2001-09-07:
|
|
|
|
* The output file does not define const, as this caused problems when used
|
|
with common autoconfiguration schemes. If you still use ancient compilers
|
|
that lack const, compile with the equivalent of the C compiler option
|
|
`-Dconst='. autoconf's AC_C_CONST macro provides one way to do this.
|
|
|
|
* Added `-g' and `--graph'.
|
|
|
|
* The Bison manual is now distributed under the terms of the GNU FDL.
|
|
|
|
* The input and the output files has automatically a similar extension.
|
|
|
|
* Russian translation added.
|
|
|
|
* NLS support updated; should hopefully be less troublesome.
|
|
|
|
* Added the old Bison reference card.
|
|
|
|
* Added `--locations' and `%locations'.
|
|
|
|
* Added `-S' and `--skeleton'.
|
|
|
|
* `%raw', `-r', `--raw' is disabled.
|
|
|
|
* Special characters are escaped when output. This solves the problems
|
|
of the #line lines with path names including backslashes.
|
|
|
|
* New directives.
|
|
`%yacc', `%fixed_output_files', `%defines', `%no_parser', `%verbose',
|
|
`%debug', `%source_extension' and `%header_extension'.
|
|
|
|
* @$
|
|
Automatic location tracking.
|
|
|
|
Changes in version 1.28, 1999-07-06:
|
|
|
|
* Should compile better now with K&R compilers.
|
|
|
|
* Added NLS.
|
|
|
|
* Fixed a problem with escaping the double quote character.
|
|
|
|
* There is now a FAQ.
|
|
|
|
Changes in version 1.27:
|
|
|
|
* The make rule which prevented bison.simple from being created on
|
|
some systems has been fixed.
|
|
|
|
Changes in version 1.26:
|
|
|
|
* Bison now uses automake.
|
|
|
|
* New mailing lists: <bug-bison@gnu.org> and <help-bison@gnu.org>.
|
|
|
|
* Token numbers now start at 257 as previously documented, not 258.
|
|
|
|
* Bison honors the TMPDIR environment variable.
|
|
|
|
* A couple of buffer overruns have been fixed.
|
|
|
|
* Problems when closing files should now be reported.
|
|
|
|
* Generated parsers should now work even on operating systems which do
|
|
not provide alloca().
|
|
|
|
Changes in version 1.25, 1995-10-16:
|
|
|
|
* Errors in the input grammar are not fatal; Bison keeps reading
|
|
the grammar file, and reports all the errors found in it.
|
|
|
|
* Tokens can now be specified as multiple-character strings: for
|
|
example, you could use "<=" for a token which looks like <=, instead
|
|
of chosing a name like LESSEQ.
|
|
|
|
* The %token_table declaration says to write a table of tokens (names
|
|
and numbers) into the parser file. The yylex function can use this
|
|
table to recognize multiple-character string tokens, or for other
|
|
purposes.
|
|
|
|
* The %no_lines declaration says not to generate any #line preprocessor
|
|
directives in the parser file.
|
|
|
|
* The %raw declaration says to use internal Bison token numbers, not
|
|
Yacc-compatible token numbers, when token names are defined as macros.
|
|
|
|
* The --no-parser option produces the parser tables without including
|
|
the parser engine; a project can now use its own parser engine.
|
|
The actions go into a separate file called NAME.act, in the form of
|
|
a switch statement body.
|
|
|
|
Changes in version 1.23:
|
|
|
|
The user can define YYPARSE_PARAM as the name of an argument to be
|
|
passed into yyparse. The argument should have type void *. It should
|
|
actually point to an object. Grammar actions can access the variable
|
|
by casting it to the proper pointer type.
|
|
|
|
Line numbers in output file corrected.
|
|
|
|
Changes in version 1.22:
|
|
|
|
--help option added.
|
|
|
|
Changes in version 1.20:
|
|
|
|
Output file does not redefine const for C++.
|
|
|
|
Local Variables:
|
|
mode: outline
|
|
End:
|