* doc/bison.texinfo (Calc++ Parser): Fix memory leak reported by

Sander Brandenburg in
<http://lists.gnu.org/archive/html/bug-bison/2006-09/msg00002.html>.
Also, fix minor white space and comment issues.
This commit is contained in:
Paul Eggert
2006-09-11 18:02:10 +00:00
parent b2a0b7ca70
commit 3dc5e96b85
2 changed files with 15 additions and 6 deletions

View File

@@ -1,3 +1,10 @@
2006-09-11 Paul Eggert <eggert@cs.ucla.edu>
* doc/bison.texinfo (Calc++ Parser): Fix memory leak reported by
Sander Brandenburg in
<http://lists.gnu.org/archive/html/bug-bison/2006-09/msg00002.html>.
Also, fix minor white space and comment issues.
2006-09-04 Joel E. Denny <jdenny@ces.clemson.edu>
Finish implementation of per-type %destructor/%printer. Discussed

View File

@@ -7423,8 +7423,8 @@ factor both as follows.
@comment file: calc++-driver.hh
@example
// Announce to Flex the prototype we want for lexing function, ...
# define YY_DECL \
// Tell Flex the lexer's prototype ...
# define YY_DECL \
yy::calcxx_parser::token_type \
yylex (yy::calcxx_parser::semantic_type* yylval, \
yy::calcxx_parser::location_type* yylloc, \
@@ -7675,7 +7675,9 @@ unit: assignments exp @{ driver.result = $2; @};
assignments: assignments assignment @{@}
| /* Nothing. */ @{@};
assignment: "identifier" ":=" exp @{ driver.variables[*$1] = $3; @};
assignment:
"identifier" ":=" exp
@{ driver.variables[*$1] = $3; delete $1; @};
%left '+' '-';
%left '*' '/';
@@ -7683,7 +7685,7 @@ exp: exp '+' exp @{ $$ = $1 + $3; @}
| exp '-' exp @{ $$ = $1 - $3; @}
| exp '*' exp @{ $$ = $1 * $3; @}
| exp '/' exp @{ $$ = $1 / $3; @}
| "identifier" @{ $$ = driver.variables[*$1]; @}
| "identifier" @{ $$ = driver.variables[*$1]; delete $1; @}
| "number" @{ $$ = $1; @};
%%
@end example
@@ -7844,8 +7846,8 @@ main (int argc, char *argv[])
driver.trace_scanning = true;
else
@{
driver.parse (*argv);
std::cout << driver.result << std::endl;
driver.parse (*argv);
std::cout << driver.result << std::endl;
@}
@}
@end example