mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-13 14:23:04 +00:00
* src/parse-gram.y (YYLLOC_DEFAULT, current_lhs_location): New.
(input): Don't try to initialize yylloc here, do it in the scanner. * src/scan-gram.l (YY_USER_INIT): Initialize yylloc. * src/gram.h (rule_t): Change line and action_line into location and action_location, of location_t type. Adjust all dependencies. * src/location.h, src/location.c (empty_location): New. * src/reader.h, src/reader.c (grammar_start_symbol_set) (grammar_symbol_append, grammar_rule_begin, grammar_rule_end) (grammar_current_rule_symbol_append) (grammar_current_rule_action_append): Expect a location as argument. * src/reader.c (grammar_midrule_action): Adjust to attach an action's location as dummy symbol location. * src/symtab.h, src/symtab.c (startsymbol_location): New. * tests/regression.at (Web2c Report, Rule Line Numbers): Adjust the line numbers.
This commit is contained in:
@@ -307,7 +307,7 @@ prepare_rules (void)
|
||||
/* Separator in RHS. */
|
||||
rhs[i++] = -1;
|
||||
/* Line where rule was defined. */
|
||||
rline[r] = rules[r].line;
|
||||
rline[r] = rules[r].location.first_line;
|
||||
}
|
||||
assert (i == nritems);
|
||||
|
||||
@@ -544,7 +544,7 @@ actions_output (FILE *out)
|
||||
|
||||
if (!no_lines_flag)
|
||||
fprintf (out, muscle_find ("linef"),
|
||||
rules[rule].action_line,
|
||||
rules[rule].action_location.first_line,
|
||||
quotearg_style (c_quoting_style,
|
||||
muscle_find ("filename")));
|
||||
fprintf (out, " %s\n break;\n\n",
|
||||
|
||||
Reference in New Issue
Block a user