RULE_TABLE[R].precsym -- the symbol-number of the symbol in %prec
for R (if any).
- RULE_TABLE[R].assoc -- the associativity of the rule.
+ RULE_TABLE[R].assoc -- the associativity of R.
+
+ RULE_TABLE[R].line -- the line where R was defined.
+
+ RULE_TABLE[R].useful -- TRUE iff the rule is used.
The right hand side is stored as symbol numbers in a portion of
RITEM.
extern short *sprec;
extern short *sassoc;
-extern short *rline; /* Source line number of each rule */
extern int start_symbol;
short prec;
short precsym;
short assoc;
+ short line;
+ bool useful;
+
+ const char *action;
+ short action_line;
+
+ const char *guard;
+ short guard_line;
} rule_t;
extern struct rule_s *rule_table;
/* ERROR_TOKEN_NUMBER is the token number of the error token. */
extern int error_token_number;
+
+
+/* Dump RITEM for traces. */
+void ritem_print PARAMS ((FILE *out));
+
+/* Return the size of the longest rule RHS. */
+size_t ritem_longest_rhs PARAMS ((void));
+
#endif /* !GRAM_H_ */