+2006-06-26 Joel E. Denny <jdenny@ces.clemson.edu>
+
+ More cleanup.
+ * src/reader.c (current_rule): Declare it static since it's no longer
+ used outside this file.
+ (grammar_current_rule_action_append): Remove redundant arguments from
+ translate_rule_action invocation.
+ * src/reader.h (current_rule): Remove this unused extern.
+ * src/scan-code.h (translate_rule_action): Remove redundant arguments.
+ * src/scan-code.l (translate_rule_action): Likewise.
+
2006-06-25 Joel E. Denny <jdenny@ces.clemson.edu>
Clean up yesterday's patch.
/* The rule currently being defined, and the previous rule.
CURRENT_RULE points to the first LHS of the current rule, while
PREVIOUS_RULE_END points to the *end* of the previous rule (NULL). */
-symbol_list *current_rule = NULL;
+static symbol_list *current_rule = NULL;
static symbol_list *previous_rule_end = NULL;
{
if (current_rule->action)
grammar_midrule_action ();
- current_rule->action = translate_rule_action (current_rule, action, loc);
+ current_rule->action = action;
current_rule->action_location = loc;
+ current_rule->action = translate_rule_action (current_rule);
}
\f
void grammar_current_rule_merge_set (uniqstr name, location loc);
void grammar_current_rule_symbol_append (symbol *sym, location loc);
void grammar_current_rule_action_append (const char *action, location loc);
-extern symbol_list *current_rule;
void reader (void);
void free_merger_functions (void);
void code_scanner_free (void);
-/* The action A contains $$, $1 etc. referring to the values
+/* The action of the rule R contains $$, $1 etc. referring to the values
of the rule R. */
-const char *translate_rule_action (symbol_list *r, const char *a, location l);
+const char *translate_rule_action (symbol_list *r);
/* The action A refers to $$ and @$ only, referring to a symbol. */
const char *translate_symbol_action (const char *a, location l);
}
const char *
-translate_rule_action (symbol_list *rule, const char *a, location l)
+translate_rule_action (symbol_list *rule)
{
- return translate_action (SC_RULE_ACTION, rule, a, l);
+ return translate_action (SC_RULE_ACTION, rule, rule->action,
+ rule->action_location);
}
const char *