ASIdOrRange_range
assert((a->type == ASIdOrRange_id && a->u.id != NULL) || (a->type == ASIdOrRange_range && a->u.range != NULL && a->u.range->min != NULL && a->u.range->max != NULL));
assert((b->type == ASIdOrRange_id && b->u.id != NULL) || (b->type == ASIdOrRange_range && b->u.range != NULL && b->u.range->min != NULL && b->u.range->max != NULL));
if (a->type == ASIdOrRange_range && b->type == ASIdOrRange_range) {
aor->type = ASIdOrRange_range;
case ASIdOrRange_range:
if (a != NULL && a->type == ASIdOrRange_range) {
a->type = ASIdOrRange_range;
case ASIdOrRange_range:
case ASIdOrRange_range:
if (a != NULL && a->type == ASIdOrRange_range) {
case ASIdOrRange_range: