+static symbol_t *
+symbol_new (const char *tag)
+{
+ symbol_t *res = XMALLOC (symbol_t, 1);
+
+ res->tag = xstrdup (tag);
+ res->type_name = NULL;
+ res->number = NUMBER_UNDEFINED;
+ res->prec = 0;
+ res->assoc = right_assoc;
+ res->user_token_number = USER_NUMBER_UNDEFINED;
+ res->alias = NULL;
+ res->class = unknown_sym;
+
+ nsyms++;
+
+ return res;
+}