diff --git a/lib/modules/LR.pmod/parser.pike b/lib/modules/LR.pmod/parser.pike index fae1d7c58b2258bb7ce333b5f92ed30d3e443f9d..4301bb6e1377dc45dd531f64539a938d6036cdda 100644 --- a/lib/modules/LR.pmod/parser.pike +++ b/lib/modules/LR.pmod/parser.pike @@ -1,5 +1,5 @@ /* - * $Id: parser.pike,v 1.17 1998/11/18 21:52:34 grubba Exp $ + * $Id: parser.pike,v 1.18 1998/11/18 22:08:53 grubba Exp $ * * A BNF-grammar in Pike. * Compiles to a LALR(1) state-machine. @@ -9,7 +9,7 @@ //. //. File: parser.pike -//. RCSID: $Id: parser.pike,v 1.17 1998/11/18 21:52:34 grubba Exp $ +//. RCSID: $Id: parser.pike,v 1.18 1998/11/18 22:08:53 grubba Exp $ //. Author: Henrik Grubbstr�m (grubba@infovav.se) //. //. Synopsis: LALR(1) parser and compiler. @@ -934,6 +934,7 @@ static private int repair(object(kernel) state, multiset(int|string) conflicts) i->r->pri->value, pri->value)); } i->direct_lookahead = (<>); + i->next_state = 0; } else if ((pri->assoc <= 0) && (reduce_pri->value == pri->value)) { if (verbose) { @@ -943,6 +944,7 @@ static private int repair(object(kernel) state, multiset(int|string) conflicts) symbol_to_string(symbol))); } i->direct_lookahead = (<>); + i->next_state = 0; } else { if (verbose) { werror(sprintf("Kept item\n%s\n"