]> git.saurik.com Git - bison.git/commitdiff
* NEWS (2.3a+): Don't say %language is experimental. Mention Java and
authorJoel E. Denny <jdenny@ces.clemson.edu>
Sat, 23 Feb 2008 04:26:14 +0000 (04:26 +0000)
committerJoel E. Denny <jdenny@ces.clemson.edu>
Sat, 23 Feb 2008 04:26:14 +0000 (04:26 +0000)
say its interface is experimental.
* doc/bison.texinfo (Decl Summary): In the %language entry, mention
Java.
(Bison Options): In the -L and --language entry, mention Java.
(Java Bison Interface): Say the interface is experimental.
* src/getargs.c (usage): Mention -L and --language.

* NEWS (2.3a+): Say the push parsing interface is experimental.
* doc/bison.texinfo (Push Decl): Likewise.
(Decl Summary): Likewise in the "%define api.push_pull" entry.
(Push Parser Function): Likewise.
(Pull Parser Function): Likewise.
(Parser Create Function): Likewise.
(Parser Delete Function): Likewise.
(Table of Symbols): Likewise in the yypstate_delete, yypstate_new,
yypull_parse, and yypush_parse entries.

* NEWS (2.3a+): Mention XML support, and say the schema is
experimental.
* doc/bison.texinfo (Bison Options): Mention -x and --xml.
* src/getargs.c (usage): Say the XML schema is experimental.

* NEWS (2.3a+): Say option instead of flag.

ChangeLog
NEWS
doc/bison.1
doc/bison.texinfo
src/getargs.c

index 18abb825bdab13730565957d0cc39ef89cf10d26..6b94a4098a775c939c62c91691c421c5e3a6ff0b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,30 @@
+2008-02-22  Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       * NEWS (2.3a+): Don't say %language is experimental.  Mention Java and
+       say its interface is experimental.
+       * doc/bison.texinfo (Decl Summary): In the %language entry, mention
+       Java.
+       (Bison Options): In the -L and --language entry, mention Java.
+       (Java Bison Interface): Say the interface is experimental.
+       * src/getargs.c (usage): Mention -L and --language.
+
+       * NEWS (2.3a+): Say the push parsing interface is experimental.
+       * doc/bison.texinfo (Push Decl): Likewise.
+       (Decl Summary): Likewise in the "%define api.push_pull" entry.
+       (Push Parser Function): Likewise.
+       (Pull Parser Function): Likewise.
+       (Parser Create Function): Likewise.
+       (Parser Delete Function): Likewise.
+       (Table of Symbols): Likewise in the yypstate_delete, yypstate_new,
+       yypull_parse, and yypush_parse entries.
+
+       * NEWS (2.3a+): Mention XML support, and say the schema is
+       experimental.
+       * doc/bison.texinfo (Bison Options): Mention -x and --xml.
+       * src/getargs.c (usage): Say the XML schema is experimental.
+
+       * NEWS (2.3a+): Say option instead of flag.
+
 2008-02-21  Wojciech Polak  <polak@gnu.org>
 
        * data/xslt/xml2xhtml.xsl (xsl:template match="/"): Change footer
 2008-02-21  Wojciech Polak  <polak@gnu.org>
 
        * data/xslt/xml2xhtml.xsl (xsl:template match="/"): Change footer
diff --git a/NEWS b/NEWS
index 1458cb2d3e06cf57bfca7276afedee34f2eebcbd..177454490ebb0c45e786f9b1fc2eed1ae9504c83 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -28,13 +28,35 @@ Changes in version 2.3a+ (????-??-??):
 
   See the new section `A Push Parser' in the Bison manual for details.
 
 
   See the new section `A Push Parser' in the Bison manual for details.
 
+  The current push parsing interface is experimental and may evolve.  More user
+  feedback will help to stabilize it.
+
 * The -g and --graph options now output graphs in Graphviz DOT format,
   not VCG format.
 
 * The -g and --graph options now output graphs in Graphviz DOT format,
   not VCG format.
 
-* An experimental directive %language specifies the language of the
-  generated parser, which can be C (the default) or C++.  This
-  directive affects the skeleton used, and the names of the generated
-  files if the grammar file's name ends in ".y".
+* Java
+
+  Bison can now generate an LALR(1) parser in Java.  The skeleton is
+  `data/lalr1.java'.  Consider using the new %language directive instead of
+  %skeleton to select it.
+
+  See the new section `Java Parsers' in the Bison manual for details.
+
+  The current Java interface is experimental and may evolve.  More user
+  feedback will help to stabilize it.
+
+* %language
+
+  This new directive specifies the programming language of the generated
+  parser, which can be C (the default), C++, or Java.  This directive affects
+  the skeleton used and the names of the generated files if the grammar file's
+  name ends in ".y".
+
+* XML Automaton Report
+
+  Bison can now generate an XML report of the LALR(1) automaton using the new
+  `--xml' option.  The current XML schema is experimental and may evolve.  More
+  user feedback will help to stabilize it.
 
 * The grammar file may now specify the name of the parser header file using
   %defines.  For example:
 
 * The grammar file may now specify the name of the parser header file using
   %defines.  For example:
@@ -79,7 +101,8 @@ Changes in version 2.3a+ (????-??-??):
   bug affected only the `.output' file and not the generated parser source
   code.
 
   bug affected only the `.output' file and not the generated parser source
   code.
 
-* --report-file=FILE is a new flag to override the default `.output' file name.
+* --report-file=FILE is a new option to override the default `.output' file
+  name.
 
 * The `=' that used to be required in the following directives is now
   deprecated:
 
 * The `=' that used to be required in the following directives is now
   deprecated:
@@ -126,7 +149,7 @@ Changes in version 2.3a+ (????-??-??):
   sometimes prove to be false alarms in existing grammars employing the Yacc
   constructs $0 or $-N (where N is some positive integer).
 
   sometimes prove to be false alarms in existing grammars employing the Yacc
   constructs $0 or $-N (where N is some positive integer).
 
-  To enable these warnings, specify the flag `--warnings=midrule-values' or
+  To enable these warnings, specify the option `--warnings=midrule-values' or
   `-W', which is a synonym for `--warnings=all'.
 
 * Default %destructor or %printer with `<*>' or `<>'
   `-W', which is a synonym for `--warnings=all'.
 
 * Default %destructor or %printer with `<*>' or `<>'
index d8305c06f5a04e0d693292ac0569ddf179189db5..e46d1ea6b03fa551420cd83aca75d2720204d43a 100644 (file)
@@ -1,5 +1,5 @@
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.36.
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.36.
-.TH BISON "1" "November 2007" "bison 2.3a+" "User Commands"
+.TH BISON "1" "February 2008" "bison 2.3a+" "User Commands"
 .SH NAME
 bison \- GNU Project parser generator (yacc replacement)
 .SH SYNOPSIS
 .SH NAME
 bison \- GNU Project parser generator (yacc replacement)
 .SH SYNOPSIS
@@ -82,6 +82,9 @@ emulate POSIX Yacc
 report the warnings falling in CATEGORY
 .SS "Parser:"
 .TP
 report the warnings falling in CATEGORY
 .SS "Parser:"
 .TP
+\fB\-L\fR, \fB\-\-language\fR=\fILANGUAGE\fR
+specify the output programming language
+.TP
 \fB\-S\fR, \fB\-\-skeleton\fR=\fIFILE\fR
 specify the skeleton to use
 .TP
 \fB\-S\fR, \fB\-\-skeleton\fR=\fIFILE\fR
 specify the skeleton to use
 .TP
@@ -124,6 +127,7 @@ also output a graph of the automaton
 .TP
 \fB\-x\fR, \fB\-\-xml\fR[=\fIFILE\fR]
 also output an XML report of the automaton
 .TP
 \fB\-x\fR, \fB\-\-xml\fR[=\fIFILE\fR]
 also output an XML report of the automaton
+(the XML schema is experimental)
 .SS "Warning categories include:"
 .TP
 `midrule\-values'
 .SS "Warning categories include:"
 .TP
 `midrule\-values'
index d513b5558826ccca1a797bcd44ab5651cf101db9..1f15f825b71ae2fcfba85c5521bf8fde3ce16529 100644 (file)
@@ -4553,6 +4553,9 @@ valid grammar.
 @cindex push parser
 @findex %define api.push_pull
 
 @cindex push parser
 @findex %define api.push_pull
 
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
+
 A pull parser is called once and it takes control until all its input
 is completely parsed.  A push parser, on the other hand, is called
 each time a new token is made available.
 A pull parser is called once and it takes control until all its input
 is completely parsed.  A push parser, on the other hand, is called
 each time a new token is made available.
@@ -4882,6 +4885,8 @@ Some of the accepted @var{variable}s are:
 
 @item Purpose: Requests a pull parser, a push parser, or both.
 @xref{Push Decl, ,A Push Parser}.
 
 @item Purpose: Requests a pull parser, a push parser, or both.
 @xref{Push Decl, ,A Push Parser}.
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
 
 @item Accepted Values: @code{"pull"}, @code{"push"}, @code{"both"}
 
 
 @item Accepted Values: @code{"pull"}, @code{"push"}, @code{"both"}
 
@@ -5042,7 +5047,7 @@ chosen as if the input file were named @file{@var{prefix}.y}.
 
 @deffn {Directive} %language "@var{language}"
 Specify the programming language for the generated parser.  Currently
 
 @deffn {Directive} %language "@var{language}"
 Specify the programming language for the generated parser.  Currently
-supported languages include C and C++.
+supported languages include C, C++, and Java.
 @var{language} is case-insensitive.
 @end deffn
 
 @var{language} is case-insensitive.
 @end deffn
 
@@ -5304,6 +5309,9 @@ exp: @dots{}    @{ @dots{}; *randomness += 1; @dots{} @}
 @section The Push Parser Function @code{yypush_parse}
 @findex yypush_parse
 
 @section The Push Parser Function @code{yypush_parse}
 @findex yypush_parse
 
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
+
 You call the function @code{yypush_parse} to parse a single token.  This
 function is available if either the @code{%define api.push_pull "push"} or
 @code{%define api.push_pull "both"} declaration is used.
 You call the function @code{yypush_parse} to parse a single token.  This
 function is available if either the @code{%define api.push_pull "push"} or
 @code{%define api.push_pull "both"} declaration is used.
@@ -5319,6 +5327,9 @@ is required to finish parsing the grammar.
 @section The Pull Parser Function @code{yypull_parse}
 @findex yypull_parse
 
 @section The Pull Parser Function @code{yypull_parse}
 @findex yypull_parse
 
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
+
 You call the function @code{yypull_parse} to parse the rest of the input
 stream.  This function is available if the @code{%define api.push_pull "both"}
 declaration is used.
 You call the function @code{yypull_parse} to parse the rest of the input
 stream.  This function is available if the @code{%define api.push_pull "both"}
 declaration is used.
@@ -5332,6 +5343,9 @@ The value returned by @code{yypull_parse} is the same as for @code{yyparse}.
 @section The Parser Create Function @code{yystate_new}
 @findex yypstate_new
 
 @section The Parser Create Function @code{yystate_new}
 @findex yypstate_new
 
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
+
 You call the function @code{yypstate_new} to create a new parser instance.
 This function is available if either the @code{%define api.push_pull "push"} or
 @code{%define api.push_pull "both"} declaration is used.
 You call the function @code{yypstate_new} to create a new parser instance.
 This function is available if either the @code{%define api.push_pull "push"} or
 @code{%define api.push_pull "both"} declaration is used.
@@ -5348,6 +5362,9 @@ allocated.
 @section The Parser Delete Function @code{yystate_delete}
 @findex yypstate_delete
 
 @section The Parser Delete Function @code{yystate_delete}
 @findex yypstate_delete
 
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
+
 You call the function @code{yypstate_delete} to delete a parser instance.
 function is available if either the @code{%define api.push_pull "push"} or
 @code{%define api.push_pull "both"} declaration is used.
 You call the function @code{yypstate_delete} to delete a parser instance.
 function is available if either the @code{%define api.push_pull "push"} or
 @code{%define api.push_pull "both"} declaration is used.
@@ -7775,7 +7792,7 @@ already defined, so that the debugging facilities are compiled.
 @itemx --language=@var{language}
 Specify the programming language for the generated parser, as if
 @code{%language} was specified (@pxref{Decl Summary, , Bison Declaration
 @itemx --language=@var{language}
 Specify the programming language for the generated parser, as if
 @code{%language} was specified (@pxref{Decl Summary, , Bison Declaration
-Summary}).  Currently supported languages include C and C++.
+Summary}).  Currently supported languages include C, C++, and Java.
 @var{language} is case-insensitive.
 
 @item --locations
 @var{language} is case-insensitive.
 
 @item --locations
@@ -7876,9 +7893,18 @@ If the grammar file is @file{foo.y}, the output file will
 be @file{foo.dot}.
 
 @item --graph=@var{graph-file}
 be @file{foo.dot}.
 
 @item --graph=@var{graph-file}
-The behavior of @var{--graph} is the same than @samp{-g}.  The only
+The behavior of @var{--graph} is the same as @samp{-g}.  The only
 difference is that it has an optional argument which is the name of
 the output graph file.
 difference is that it has an optional argument which is the name of
 the output graph file.
+
+@item -x
+@itemx --xml=@var{file}
+Output an XML report of the @acronym{LALR}(1) automaton computed by Bison.
+@code{=@var{file}} is optional.
+If omitted and the grammar file is @file{foo.y}, the output file will be
+@file{foo.xml}.
+(The current XML schema is experimental and may evolve.
+More user feedback will help to stabilize it.)
 @end table
 
 @node Option Cross Key
 @end table
 
 @node Option Cross Key
@@ -8669,6 +8695,9 @@ main (int argc, char *argv[])
 @c - %language "Java"
 @c - initial action
 
 @c - %language "Java"
 @c - initial action
 
+(The current Java interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
+
 The Java parser skeletons are selected using a language directive,
 @samp{%language "Java"}, or the synonymous command-line option
 @option{--language=java}.
 The Java parser skeletons are selected using a language directive,
 @samp{%language "Java"}, or the synonymous command-line option
 @option{--language=java}.
@@ -9781,6 +9810,8 @@ The function to delete a parser instance, produced by Bison in push mode;
 call this function to delete the memory associated with a parser.
 @xref{Parser Delete Function, ,The Parser Delete Function
 @code{yypstate_delete}}.
 call this function to delete the memory associated with a parser.
 @xref{Parser Delete Function, ,The Parser Delete Function
 @code{yypstate_delete}}.
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
 @end deffn
 
 @deffn {Function} yypstate_new
 @end deffn
 
 @deffn {Function} yypstate_new
@@ -9788,6 +9819,8 @@ The function to create a parser instance, produced by Bison in push mode;
 call this function to create a new parser.
 @xref{Parser Create Function, ,The Parser Create Function
 @code{yypstate_new}}.
 call this function to create a new parser.
 @xref{Parser Create Function, ,The Parser Create Function
 @code{yypstate_new}}.
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
 @end deffn
 
 @deffn {Function} yypull_parse
 @end deffn
 
 @deffn {Function} yypull_parse
@@ -9795,12 +9828,16 @@ The parser function produced by Bison in push mode; call this function to
 parse the rest of the input stream.
 @xref{Pull Parser Function, ,The Pull Parser Function
 @code{yypull_parse}}.
 parse the rest of the input stream.
 @xref{Pull Parser Function, ,The Pull Parser Function
 @code{yypull_parse}}.
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
 @end deffn
 
 @deffn {Function} yypush_parse
 The parser function produced by Bison in push mode; call this function to
 parse a single token.  @xref{Push Parser Function, ,The Push Parser Function
 @code{yypush_parse}}.
 @end deffn
 
 @deffn {Function} yypush_parse
 The parser function produced by Bison in push mode; call this function to
 parse a single token.  @xref{Push Parser Function, ,The Push Parser Function
 @code{yypush_parse}}.
+(The current push parsing interface is experimental and may evolve.
+More user feedback will help to stabilize it.)
 @end deffn
 
 @deffn {Macro} YYPARSE_PARAM
 @end deffn
 
 @deffn {Macro} YYPARSE_PARAM
index c030db805ed6a75949eb4e8332b760c87cc637be..9661fefee8e0f35f00c2f63fed66a7c484640298 100644 (file)
@@ -1,7 +1,7 @@
 /* Parse command line arguments for Bison.
 
    Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004,
 /* Parse command line arguments for Bison.
 
    Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004,
-   2005, 2006, 2007 Free Software Foundation, Inc.
+   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
@@ -269,6 +269,7 @@ Operation modes:\n\
 
       fputs (_("\
 Parser:\n\
 
       fputs (_("\
 Parser:\n\
+  -L, --language=LANGUAGE    specify the output programming language\n\
   -S, --skeleton=FILE        specify the skeleton to use\n\
   -t, --debug                instrument the parser for debugging\n\
       --locations            enable locations computation\n\
   -S, --skeleton=FILE        specify the skeleton to use\n\
   -t, --debug                instrument the parser for debugging\n\
       --locations            enable locations computation\n\
@@ -288,6 +289,7 @@ Output:\n\
   -o, --output=FILE          leave output to FILE\n\
   -g, --graph[=FILE]         also output a graph of the automaton\n\
   -x, --xml[=FILE]           also output an XML report of the automaton\n\
   -o, --output=FILE          leave output to FILE\n\
   -g, --graph[=FILE]         also output a graph of the automaton\n\
   -x, --xml[=FILE]           also output an XML report of the automaton\n\
+                             (the XML schema is experimental)\n\
 \n\
 "), stdout);
 
 \n\
 "), stdout);