only allow a single isl_pw_* object with given domain space in isl_union_pw_*
Currently, an isl_union_pw_multi_aff can contain multiple
isl_pw_multi_aff objects with the same domain space.
In particular, the domains of these objects may intersect,
meaning that the isl_union_pw_multi_aff object is not a function,
even though it is supposed to be one.
It would be possible to add checks to ensure that such domains
do not intersect, but it is more transparent to simply not allow
two or more isl_pw_multi_aff objects with the same domain space
in an isl_union_pw_multi_aff object.
Originally, the space of an isl_pw_* object was that of the domain
of this function. It was therefore impossible for and isl_union_pw_*
object to contain more than one isl_pw_* object defined over the
same domain space.
This was changed in
3280c05 (make isl_pw_* object live in a map space,
Tue Aug 30 16:47:59 2011 +0200) to prepare for the isl_pw_multi_aff
object type introduced in
6f87cea (add isl_pw_multi_aff,
Thu Sep 1 11:58:50 2011 +0200).
Still, even after this change in space, an isl_pw_* object
defined over a given domain space could only live in a single
space since the target space was predefined.
At present, the only isl_union_pw_* object type that allows for multiple
target spaces is the isl_union_pw_multi_aff type, which was
introduced in
f068f30 (add isl_union_pw_multi_aff,
Tue Mar 20 14:24:15 2012 +0100).
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>