could you use goto free_subtype; here instead?