mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-18 10:35:55 +00:00
45 lines
1.4 KiB
Plaintext
45 lines
1.4 KiB
Plaintext
|
Bison News
|
|||
|
----------
|
|||
|
|
|||
|
Change in version 1.25:
|
|||
|
|
|||
|
* 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++.
|