isl_union_templ.c: extract out shared isl_union_*_negate_type