mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-17 16:23:04 +00:00
java: fix parser stack popping bug.
Reported at
<http://lists.gnu.org/archive/html/bug-bison/2011-02/msg00005.html>.
* THANKS (Angelo Borsotti): Add.
* data/lalr1.java (YYParser::YYStack::pop): Fix off-by-one error
in clearing the value stack. Previously, the top element of the
stack wasn't cleared and so the value was not garbage collected.
(cherry picked from commit 6f75992be5)
Conflicts:
data/lalr1.java
This commit is contained in:
committed by
Joel E. Denny
parent
15e46f2df4
commit
3f8ffd15ee
10
ChangeLog
10
ChangeLog
@@ -1,3 +1,13 @@
|
|||||||
|
2011-03-06 Angelo Borsotti <angelo.borsotti@gmail.com> (tiny change)
|
||||||
|
|
||||||
|
java: fix parser stack popping bug.
|
||||||
|
Reported at
|
||||||
|
<http://lists.gnu.org/archive/html/bug-bison/2011-02/msg00005.html>.
|
||||||
|
* THANKS (Angelo Borsotti): Add.
|
||||||
|
* data/lalr1.java (YYParser::YYStack::pop): Fix off-by-one error
|
||||||
|
in clearing the value stack. Previously, the top element of the
|
||||||
|
stack wasn't cleared and so the value was not garbage collected.
|
||||||
|
|
||||||
2011-03-06 Joel E. Denny <joeldenny@joeldenny.org>
|
2011-03-06 Joel E. Denny <joeldenny@joeldenny.org>
|
||||||
|
|
||||||
doc: cite publication for LAC.
|
doc: cite publication for LAC.
|
||||||
|
|||||||
1
THANKS
1
THANKS
@@ -8,6 +8,7 @@ Alexander Belopolsky alexb@rentec.com
|
|||||||
Alexandre Duret-Lutz adl@src.lip6.fr
|
Alexandre Duret-Lutz adl@src.lip6.fr
|
||||||
Andreas Schwab schwab@suse.de
|
Andreas Schwab schwab@suse.de
|
||||||
Andrew Suffield asuffield@users.sourceforge.net
|
Andrew Suffield asuffield@users.sourceforge.net
|
||||||
|
Angelo Borsotti angelo.borsotti@gmail.com
|
||||||
Anthony Heading ajrh@ajrh.net
|
Anthony Heading ajrh@ajrh.net
|
||||||
Arnold Robbins arnold@skeeve.com
|
Arnold Robbins arnold@skeeve.com
|
||||||
Art Haas ahaas@neosoft.com
|
Art Haas ahaas@neosoft.com
|
||||||
|
|||||||
@@ -303,7 +303,7 @@ b4_lexer_if([[
|
|||||||
public final void pop (int num) {
|
public final void pop (int num) {
|
||||||
// Avoid memory leaks... garbage collection is a white lie!
|
// Avoid memory leaks... garbage collection is a white lie!
|
||||||
if (num > 0) {
|
if (num > 0) {
|
||||||
java.util.Arrays.fill (valueStack, height - num + 1, height, null);
|
java.util.Arrays.fill (valueStack, height - num + 1, height + 1, null);
|
||||||
]b4_locations_if([[java.util.Arrays.fill (locStack, height - num + 1, height, null);]])[
|
]b4_locations_if([[java.util.Arrays.fill (locStack, height - num + 1, height, null);]])[
|
||||||
}
|
}
|
||||||
height -= num;
|
height -= num;
|
||||||
|
|||||||
Reference in New Issue
Block a user