mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-22 18:53:04 +00:00
NEWS: update
This commit is contained in:
32
NEWS
32
NEWS
@@ -2,7 +2,23 @@ GNU Bison NEWS
|
|||||||
|
|
||||||
* Noteworthy changes in release ?.? (????-??-??) [?]
|
* Noteworthy changes in release ?.? (????-??-??) [?]
|
||||||
|
|
||||||
** Reports include the type of the symbols
|
** New features
|
||||||
|
|
||||||
|
*** Typed midrule actions
|
||||||
|
|
||||||
|
Because their type is unknown to Bison, the values of midrule actions are
|
||||||
|
not treated like the others: they don't have %printer and %destructor
|
||||||
|
support. It also prevents C++ (Bison) variants to handle them properly.
|
||||||
|
|
||||||
|
Typed midrule actions address these issues. Instead of:
|
||||||
|
|
||||||
|
exp: { $<ival>$ = 1; } { $<ival>$ = 2; } { $$ = $<ival>1 + $<ival>2; }
|
||||||
|
|
||||||
|
write:
|
||||||
|
|
||||||
|
exp: <ival>{ $$ = 1; } <ival>{ $$ = 2; } { $$ = $1 + $2; }
|
||||||
|
|
||||||
|
*** Reports include the type of the symbols
|
||||||
|
|
||||||
The sections about terminal and nonterminal symbols of the '*.output' file
|
The sections about terminal and nonterminal symbols of the '*.output' file
|
||||||
now specify their declared type. For instance, for:
|
now specify their declared type. For instance, for:
|
||||||
@@ -15,7 +31,7 @@ GNU Bison NEWS
|
|||||||
|
|
||||||
NUM <ival> (258) 5
|
NUM <ival> (258) 5
|
||||||
|
|
||||||
** Diagnostics about useless rules
|
*** Diagnostics about useless rules
|
||||||
|
|
||||||
In the following grammar, the 'exp' nonterminal is trivially useless. So,
|
In the following grammar, the 'exp' nonterminal is trivially useless. So,
|
||||||
of course, its rules are useless too.
|
of course, its rules are useless too.
|
||||||
@@ -58,6 +74,18 @@ GNU Bison NEWS
|
|||||||
input: '0' | exp
|
input: '0' | exp
|
||||||
^^^
|
^^^
|
||||||
|
|
||||||
|
** Bug fixes
|
||||||
|
|
||||||
|
*** GLR: Predicates support broken by #line directives
|
||||||
|
|
||||||
|
Predicates (%?) in GLR such as
|
||||||
|
|
||||||
|
widget:
|
||||||
|
%? {new_syntax} 'w' id new_args
|
||||||
|
| %?{!new_syntax} 'w' id old_args
|
||||||
|
|
||||||
|
were issued with #lines in the middle of C code.
|
||||||
|
|
||||||
* Noteworthy changes in release 3.0.5 (2018-05-27) [stable]
|
* Noteworthy changes in release 3.0.5 (2018-05-27) [stable]
|
||||||
|
|
||||||
** Bug fixes
|
** Bug fixes
|
||||||
|
|||||||
Reference in New Issue
Block a user