style: clarify the use of symbol_lists' locations

symbol_list features a 'location' and a 'sym_loc' member.  The former
is expected to be set only for symbol_lists that denote a symbol (not
a type name), and the latter should only denote the location of the
symbol/type name.  Yet both are set, and the name "location" is too
unprecise.

* src/symlist.h, src/symlist.c (symbol_list::location): Rename as
rhs_loc for clarity.  Move it to the "section" of data valid only
for rules.
* src/reader.c, src/scan-code.l: Adjust.
This commit is contained in:
Akim Demaille
2019-05-03 08:30:02 +02:00
parent 5bb44cca81
commit 365b4d95a4
4 changed files with 22 additions and 19 deletions

View File

@@ -34,7 +34,7 @@ symbol_list_sym_new (symbol *sym, location loc)
res->content_type = SYMLIST_SYMBOL;
res->content.sym = sym;
res->location = res->sym_loc = loc;
res->sym_loc = loc;
res->named_ref = NULL;
res->midrule = NULL;
@@ -42,6 +42,7 @@ symbol_list_sym_new (symbol *sym, location loc)
res->midrule_parent_rhs_index = 0;
/* Members used for LHS only. */
res->rhs_loc = empty_location;
res->ruleprec = NULL;
res->percent_empty_loc = empty_location;
code_props_none_init (&res->action_props);
@@ -73,7 +74,7 @@ symbol_list_type_new (uniqstr type_name, location loc)
res->content.sem_type->location = loc;
res->content.sem_type->status = undeclared;
res->location = res->sym_loc = loc;
res->sym_loc = loc;
res->named_ref = NULL;
res->next = NULL;