Fix problem reported by Henrik Grubbstroem in
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 13 Oct 2002 08:40:10 +0000 (08:40 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 13 Oct 2002 08:40:10 +0000 (08:40 +0000)
 <http://mail.gnu.org/pipermail/bug-bison/2002-October/001670.html>:
 "nonterm: { $$ = 123; } { $$ = $1; };" was wrongly rejected,
 because the Bison parser reads the second action before reducing
 the first one.
 * src/scan-gram.l (rule_length): New static var.
 Use it to keep track of the rule length in the scanner, since
 we can't expect the parser to be in lock-step sync with the scanner.
 (handle_action_dollar, handle_action_at): Use this var.
 * tests/actions.at (Exotic Dollars): Test for the problem.

ChangeLog

index 7157416..cf9d75a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2002-10-13  Paul Eggert  <eggert@twinsun.com>
+
+       Fix problem reported by Henrik Grubbstroem in
+       <http://mail.gnu.org/pipermail/bug-bison/2002-October/001670.html>:
+       "nonterm: { $$ = 123; } { $$ = $1; };" was wrongly rejected,
+       because the Bison parser reads the second action before reducing
+       the first one.
+       * src/scan-gram.l (rule_length): New static var.
+       Use it to keep track of the rule length in the scanner, since
+       we can't expect the parser to be in lock-step sync with the scanner.
+       (handle_action_dollar, handle_action_at): Use this var.
+       * tests/actions.at (Exotic Dollars): Test for the problem.
+       
 2002-10-12  Paul Eggert  <eggert@twinsun.com>
 
        * lib/timevar.c [! IN_GCC && HAVE_SYS_TIME_H]: Include <sys/time.h>.