X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/652a871c294ff727099daa57c494eaca9da6c1d3..b49717356495d8150abc7806b3380b273a864ce2:/src/reader.c diff --git a/src/reader.c b/src/reader.c index b7795dee..5abb46ed 100644 --- a/src/reader.c +++ b/src/reader.c @@ -1251,20 +1251,6 @@ copy_guard (symbol_list *rule, int stack_offset) } -static void -record_rule_line (void) -{ - /* Record each rule's source line number in rline table. */ - - if (nrules >= rline_allocated) - { - rline_allocated = nrules * 2; - rline = XREALLOC (rline, short, rline_allocated); - } - rline[nrules] = lineno; -} - - /*-------------------------------------------------------------------. | Generate a dummy symbol, a nonterminal, whose name cannot conflict | | with the user's names. | @@ -1407,8 +1393,6 @@ readgram (void) nrules++; nitems++; - record_rule_line (); - p = XCALLOC (symbol_list, 1); p->sym = lhs; @@ -1486,7 +1470,6 @@ readgram (void) just read can belong to it. */ nrules++; nitems++; - record_rule_line (); p = XCALLOC (symbol_list, 1); if (crule1) crule1->next = p; @@ -1494,9 +1477,10 @@ readgram (void) grammar = p; p->sym = sdummy; crule1 = XCALLOC (symbol_list, 1); - p->next = crule1; crule1->next = crule; + p->next = crule1; + /* Insert the dummy generated by that rule into this rule. */ nitems++; @@ -1932,6 +1916,7 @@ packgram (void) { rule_table[ruleno].lhs = p->sym->value; rule_table[ruleno].rhs = itemno; + rule_table[ruleno].line = p->sym->line; ruleprec = p->ruleprec; p = p->next; @@ -1986,8 +1971,6 @@ reader (void) nvars = 0; nrules = 0; nitems = 0; - rline_allocated = 10; - rline = XCALLOC (short, rline_allocated); typed = 0; lastprec = 0;