while ((a = TAILQ_FIRST(&attr->others)) != NULL) { TAILQ_REMOVE(&attr->others, a, entry);
while ((a = TAILQ_FIRST(&asp->others)) != NULL) { TAILQ_REMOVE(&asp->others, a, entry);
attr_optfree(struct attr_flags *attr){	struct attr	*a;	while ((a = TAILQ_FIRST(&attr->others)) != NULL) {		TAILQ_REMOVE(&attr->others, a, entry);		free(a->data);		free(a);	}}