+/* When extending this structure, be sure to complete
+ symbol_check_alias_consistency. */
+struct symbol
+{
+ /* The key, name of the symbol. */
+ uniqstr tag;
+ /* The location of its first occurrence. */
+ location location;
+
+ /* Its %type and associated printer and destructor. */
+ uniqstr type_name;
+ location type_location;
+
+ /* Does not own the memory. */
+ const char *destructor;
+ location destructor_location;
+
+ /* Does not own the memory. */
+ const char *printer;
+ location printer_location;
+
+ symbol_number number;
+ location prec_location;
+ int prec;
+ assoc assoc;