-void gram_error (gram_control_t *control,
- location_t *loc, const char *msg);
+void gram_error (location_t *loc, const char *msg);
int gram_parse (void *control);
/* The sort of braced code we are in. */
typedef enum braced_code_e
{
action_braced_code,
int gram_parse (void *control);
/* The sort of braced code we are in. */
typedef enum braced_code_e
{
action_braced_code,
} braced_code_t;
/* FIXME: This is really a dirty hack which demonstrates that we
should probably not try to parse the actions now. */
} braced_code_t;
/* FIXME: This is really a dirty hack which demonstrates that we
should probably not try to parse the actions now. */
void grammar_rule_begin PARAMS ((symbol_t *lhs, location_t l));
void grammar_rule_end PARAMS ((location_t l));
void grammar_midrule_action PARAMS ((void));
void grammar_rule_begin PARAMS ((symbol_t *lhs, location_t l));
void grammar_rule_end PARAMS ((location_t l));
void grammar_midrule_action PARAMS ((void));
-void grammar_current_rule_prec_set PARAMS ((symbol_t *precsym));
+void grammar_current_rule_prec_set PARAMS ((symbol_t *precsym,
+ location_t l));
+void grammar_current_rule_dprec_set PARAMS ((int dprec,
+ location_t l));
+void grammar_current_rule_merge_set PARAMS ((const char* name,
+ location_t l));
+
void grammar_current_rule_symbol_append PARAMS ((symbol_t *symbol,
location_t l));
void grammar_current_rule_action_append PARAMS ((const char *action,
location_t l));
extern symbol_list_t *current_rule;
void reader PARAMS ((void));
void grammar_current_rule_symbol_append PARAMS ((symbol_t *symbol,
location_t l));
void grammar_current_rule_action_append PARAMS ((const char *action,
location_t l));
extern symbol_list_t *current_rule;
void reader PARAMS ((void));