Memory leak fix - use goto free_subtype instead of freeing inplace