isl_basic_map_range_product: preserve rational flag
In particular, if both inputs are rational sets, then the output
should be a rational set as well.
There are several functions that do not properly handle the rational flag.
isl_basic_map_range_product is being singled out here because it is used
internally by isl_map_partial_lexopt. This latter function currently
does not preserve the rational flag in all cases either, but it used
to at least attempt to do so, so it seems appropriate to try and fix that
in a later commit and this fix requires the changes in the current commit.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>