- if (attr->set)
- fprintf (fd_out, "@attr %s %d=%d ", attr->set, attr->type,
- attr->value);
- else
- fprintf (fd_out, "@attr %d=%d ", attr->type, attr->value);
+ {
+ if (attr->set)
+ fprintf(fd_out, "@attr %s", attr->set);
+ else
+ fprintf(fd_out, "@attr ");
+ switch(attr->kind)
+ {
+ case CCL_RPN_ATTR_NUMERIC:
+ fprintf (fd_out, "%d=%d ", attr->type,
+ attr->value.numeric);
+ break;
+ case CCL_RPN_ATTR_STRING:
+ fprintf (fd_out, "%d=%s ", attr->type,
+ attr->value.str);
+ }
+ }