+ RULES[R].assoc -- the associativity of R.
+
+ RULES[R].line -- the line where R was defined.
+
+ RULES[R].useful -- TRUE iff the rule is used.
+
+ The right hand side is stored as symbol numbers in a portion of
+ RITEM.
+
+ The length of the portion is one greater than the number of symbols
+ in the rule's right hand side. The last element in the portion
+ contains minus R, which identifies it as the end of a portion and
+ says which rule it is for.
+
+ The portions of RITEM come in order of increasing rule number and
+ are followed by an element which is zero to mark the end. nitems
+ is the total length of ritem, not counting the final zero. Each
+ element of RITEM is called an "item" and its index in RITEM is an
+ item number.
+
+ Item numbers are used in the finite state machine to represent
+ places that parsing can get to.
+
+ SYMBOLS[I]->prec records the precedence level of each symbol.
+
+ Precedence levels are assigned in increasing order starting with 1
+ so that numerically higher precedence values mean tighter binding
+ as they ought to. Zero as a symbol or rule's precedence means none
+ is assigned.
+
+ Associativities are recorded similarly in SYMBOLS[I]->assoc. */