doc: fix lalr1.cc documentation.

* doc/bison.texinfo (C++ Scanner Interface): Fix yylex signature.
	(C++ Bison Interface): Fix lalr1.cc skeleton name.
	(C++ Parser Interface): Fix semantic_type and location_type names.
	Document yy::parser::token.
	Reported by Jerry Quinn.

(cherry picked from commit 0100cd629d)

Conflicts:

	ChangeLog
	doc/bison.texinfo
This commit is contained in:
Akim Demaille
2010-05-10 10:41:21 +02:00
parent bb9191dd31
commit 86e5b4402f
3 changed files with 22 additions and 4 deletions

View File

@@ -1,3 +1,12 @@
2010-05-10 Akim Demaille <demaille@gostai.com>
doc: fix lalr1.cc documentation.
* doc/bison.texinfo (C++ Scanner Interface): Fix yylex signature.
(C++ Bison Interface): Fix lalr1.cc skeleton name.
(C++ Parser Interface): Fix semantic_type and location_type names.
Document yy::parser::token.
Reported by Jerry Quinn.
2010-05-10 Akim Demaille <demaille@gostai.com> 2010-05-10 Akim Demaille <demaille@gostai.com>
c++: use YYRHSLOC. c++: use YYRHSLOC.

1
THANKS
View File

@@ -44,6 +44,7 @@ Guido Trentalancia trentalg@aston.ac.uk
H. Merijn Brand h.m.brand@hccnet.nl H. Merijn Brand h.m.brand@hccnet.nl
Hans Aberg haberg@matematik.su.se Hans Aberg haberg@matematik.su.se
Jan Nieuwenhuizen janneke@gnu.org Jan Nieuwenhuizen janneke@gnu.org
Jerry Quinn jlquinn@optonline.net
Jesse Thilo jthilo@gnu.org Jesse Thilo jthilo@gnu.org
Jim Kent jkent@arch.sel.sony.com Jim Kent jkent@arch.sel.sony.com
Jim Meyering jim@meyering.net Jim Meyering jim@meyering.net

View File

@@ -8569,8 +8569,8 @@ int yyparse (void);
@c - initial action @c - initial action
The C++ deterministic parser is selected using the skeleton directive, The C++ deterministic parser is selected using the skeleton directive,
@samp{%skeleton "lalr1.c"}, or the synonymous command-line option @samp{%skeleton "lalr1.cc"}, or the synonymous command-line option
@option{--skeleton=lalr1.c}. @option{--skeleton=lalr1.cc}.
@xref{Decl Summary}. @xref{Decl Summary}.
When run, @command{bison} will create several entities in the @samp{yy} When run, @command{bison} will create several entities in the @samp{yy}
@@ -8828,6 +8828,14 @@ additional argument for its constructor.
The types for semantic values and locations (if enabled). The types for semantic values and locations (if enabled).
@end defcv @end defcv
@defcv {Type} {parser} {token}
A structure that contains (only) the definition of the tokens as the
@code{yytokentype} enumeration. To refer to the token @code{FOO}, the
scanner should use @code{yy::parser::token::FOO}. The scanner can use
@samp{typedef yy::parser::token token;} to ``import'' the token enumeration
(@pxref{Calc++ Scanner}).
@end defcv
@defcv {Type} {parser} {syntax_error} @defcv {Type} {parser} {syntax_error}
This class derives from @code{std::runtime_error}. Throw instances of it This class derives from @code{std::runtime_error}. Throw instances of it
from user actions to raise parse errors. This is equivalent with first from user actions to raise parse errors. This is equivalent with first
@@ -8894,8 +8902,8 @@ depends whether you use unions, or variants.
Therefore the interface is as follows. Therefore the interface is as follows.
@deftypemethod {parser} {int} yylex (semantic_type& @var{yylval}, location_type& @var{yylloc}, @var{type1} @var{arg1}, ...) @deftypemethod {parser} {int} yylex (semantic_type* @var{yylval}, location_type* @var{yylloc}, @var{type1} @var{arg1}, ...)
@deftypemethodx {parser} {int} yylex (semantic_type& @var{yylval}, @var{type1} @var{arg1}, ...) @deftypemethodx {parser} {int} yylex (semantic_type* @var{yylval}, @var{type1} @var{arg1}, ...)
Return the next token. Its type is the return value, its semantic value and Return the next token. Its type is the return value, its semantic value and
location (if enabled) being @var{yylval} and @var{yylloc}. Invocations of location (if enabled) being @var{yylval} and @var{yylloc}. Invocations of
@samp{%lex-param @{@var{type1} @var{arg1}@}} yield additional arguments. @samp{%lex-param @{@var{type1} @var{arg1}@}} yield additional arguments.