Support a file name argument to %defines. Deprecate `=' in

%file-prefix, %name-prefix, and %output.  Discussed at
<http://lists.gnu.org/archive/html/help-bison/2006-09/msg00001.html>.
* NEWS (2.3a+): Mention.
* doc/bison.texinfo (Decl Summary, Bison Symbols): Add entry for new
form of %defines, and remove `=' from entries for %file-prefix,
%name-prefix, and %output.
* src/parse-gram.y (prologue_declaration): Implement.
* tests/calc.at (Simple LALR Calculator, Simple GLR Calculator, Simple
LALR1 C++ Calculator, Simple GLR C++ Calculator): Remove the `=' from
all but one occurrence of %name-prefix.
* tests/headers.at (export YYLTYPE): Remove the `=' from %name-prefix.
* tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Likewise.
* tests/output.at (AT_CHECK_OUTPUT): Remove the `=' from all but one
occurrence of each of %file-prefix and %output.  Add check for %defines
with argument.
* tests/reduce.at (Useless Terminals, Useless Nonterminals,
Useless Rules, Reduced Automaton, Underivable Rules, Empty Language):
Remove the `=' from %output.
This commit is contained in:
Joel E. Denny
2006-12-02 01:52:16 +00:00
parent 287b314eef
commit 02975b9aad
10 changed files with 535 additions and 445 deletions

12
NEWS
View File

@@ -6,6 +6,18 @@ Changes in version 2.3a+ (????-??-??):
* The -g and --graph options now output graphs in Graphviz DOT format,
not VCG format.
* The grammar file may now specify the name of the parser header file using
%defines. For example:
%defines "parser.h"
* The `=' that used to be required in the following declarations is now
deprecated:
%file-prefix "parser"
%name-prefix "c_"
%output "parser.c"
* Revised warning: unset or unused mid-rule values
Since Bison 2.2, Bison has warned about mid-rule values that are set but not