- register int i;
- register const char *cp;
- register char *result;
-
- i = 1;
- for (cp = s; *cp; cp++)
- i++;
-
- result = xmalloc((unsigned int)i);
- strcpy(result, s);
- return result;
+ /* Hack, until we have a Bison parser. */
+ extern int lineno;
+
+ bucket *res = XMALLOC (bucket, 1);
+
+ res->link = symtab[hashval];
+ res->next = NULL;
+ res->tag = xstrdup (tag);
+ res->type_name = NULL;
+ res->value = 0;
+ res->prec = 0;
+ res->assoc = right_assoc;
+ res->user_token_number = SUNDEF;
+ res->alias = NULL;
+ res->class = unknown_sym;
+ res->line = lineno;
+
+ nsyms++;
+
+ return res;