- char const name_prefix[] = "percent_define(";
- size_t length = strlen ($2);
- char *name = xmalloc (sizeof name_prefix + length + 1);
- strcpy (name, name_prefix);
- strcpy (name + sizeof name_prefix - 1, $2);
- strcpy (name + sizeof name_prefix - 1 + length, ")");
- if (muscle_find_const (name))
- warn_at (@2, _("%s `%s' redefined"), "%define variable", $2);
- MUSCLE_INSERT_STRING (uniqstr_new (name), $3);
- free (name);
- muscle_grow_user_name_list ("percent_define_user_variables", $2, @2);