style: rename local variable

* src/reduce.c (nonterminals_reduce): Rename nontermmap as nterm_map.
We will expose it.
This commit is contained in:
Akim Demaille
2019-02-02 16:21:45 +01:00
parent 69061fed82
commit 31788ed4c7

View File

@@ -265,16 +265,16 @@ nonterminals_reduce (void)
/* Map the nonterminals to their new index: useful first, useless /* Map the nonterminals to their new index: useful first, useless
afterwards. Kept for later report. */ afterwards. Kept for later report. */
symbol_number *nontermmap = xnmalloc (nvars, sizeof *nontermmap); symbol_number *nterm_map = xnmalloc (nvars, sizeof *nterm_map);
{ {
symbol_number n = ntokens; symbol_number n = ntokens;
for (symbol_number i = ntokens; i < nsyms; ++i) for (symbol_number i = ntokens; i < nsyms; ++i)
if (bitset_test (V, i)) if (bitset_test (V, i))
nontermmap[i - ntokens] = n++; nterm_map[i - ntokens] = n++;
for (symbol_number i = ntokens; i < nsyms; ++i) for (symbol_number i = ntokens; i < nsyms; ++i)
if (!bitset_test (V, i)) if (!bitset_test (V, i))
{ {
nontermmap[i - ntokens] = n++; nterm_map[i - ntokens] = n++;
if (symbols[i]->content->status != used) if (symbols[i]->content->status != used)
complain (&symbols[i]->location, Wother, complain (&symbols[i]->location, Wother,
_("nonterminal useless in grammar: %s"), _("nonterminal useless in grammar: %s"),
@@ -282,32 +282,32 @@ nonterminals_reduce (void)
} }
} }
/* Shuffle elements of tables indexed by symbol number. */ /* Shuffle elements of tables indexed by symbol number. */
{ {
symbol **symbols_sorted = xnmalloc (nvars, sizeof *symbols_sorted); symbol **symbols_sorted = xnmalloc (nvars, sizeof *symbols_sorted);
for (symbol_number i = ntokens; i < nsyms; ++i) for (symbol_number i = ntokens; i < nsyms; ++i)
symbols[i]->content->number = nontermmap[i - ntokens]; symbols[i]->content->number = nterm_map[i - ntokens];
for (symbol_number i = ntokens; i < nsyms; ++i) for (symbol_number i = ntokens; i < nsyms; ++i)
symbols_sorted[nontermmap[i - ntokens] - ntokens] = symbols[i]; symbols_sorted[nterm_map[i - ntokens] - ntokens] = symbols[i];
for (symbol_number i = ntokens; i < nsyms; ++i) for (symbol_number i = ntokens; i < nsyms; ++i)
symbols[i] = symbols_sorted[i - ntokens]; symbols[i] = symbols_sorted[i - ntokens];
free (symbols_sorted); free (symbols_sorted);
} }
/* Renumber non terminal numbers in the RHS of the rules. LHS are
pointers to the symbol structure, they don't need renumbering. */
{ {
for (rule_number r = 0; r < nrules; ++r) for (rule_number r = 0; r < nrules; ++r)
for (item_number *rhsp = rules[r].rhs; 0 <= *rhsp; ++rhsp) for (item_number *rhsp = rules[r].rhs; 0 <= *rhsp; ++rhsp)
if (ISVAR (*rhsp)) if (ISVAR (*rhsp))
*rhsp = symbol_number_as_item_number (nontermmap[*rhsp *rhsp = symbol_number_as_item_number (nterm_map[*rhsp - ntokens]);
- ntokens]); accept->content->number = nterm_map[accept->content->number - ntokens];
accept->content->number = nontermmap[accept->content->number - ntokens];
} }
nsyms -= nuseless_nonterminals; nsyms -= nuseless_nonterminals;
nvars -= nuseless_nonterminals; nvars -= nuseless_nonterminals;
free (nontermmap); free (nterm_map);
} }