mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-13 06:13:02 +00:00
Because useless nonterminals are now kept alive (instead of being
`destroyed'), we now sometimes examine them, and store information related to them. Hence we need to know their number, and adjust memory allocations. * src/reduce.c, src/reduce.h (nuseless_nonterminals): No longer static. * src/LR0.c (allocate_itemsets): The memory allocated to `symbol_count' was used for two different purpose: once to count the number of occurrences of each symbol, and later reassigned to `shift_symbol', containing the symbol that can be shifted from a given state. Deobfuscate, i.e., allocate, use and free `symbol_count' here only, and... (new_itemsets): Allocate `shift_symbol' here. (allocate_itemsets): symbol_count includes useless nonterminals. Make room for them. (free_storage): Use `free', not `XFREE', for pointers that cannot be null.
This commit is contained in:
@@ -54,7 +54,7 @@ static BSet V1;
|
||||
static int nuseful_productions;
|
||||
static int nuseless_productions;
|
||||
static int nuseful_nonterminals;
|
||||
static int nuseless_nonterminals;
|
||||
int nuseless_nonterminals;
|
||||
|
||||
static bool
|
||||
bits_equal (BSet L, BSet R, int n)
|
||||
|
||||
Reference in New Issue
Block a user