1 #define xCAT(A,B) A ## B
2 #define CAT(A,B) xCAT(A,B)
4 #define EL CAT(isl_,BASE)
6 #define PW_BASE CAT(pw_,BASE)
8 #define PW CAT(isl_,PW_BASE)
10 #define UNION_BASE CAT(union_,PW_BASE)
12 #define UNION CAT(isl_,UNION_BASE)
13 #define xFN(TYPE,NAME) TYPE ## _ ## NAME
14 #define FN(TYPE,NAME) xFN(TYPE,NAME)
16 /* Create a union piecewise expression
17 * with the given base expression on a universe domain.
19 __isl_give UNION
*FN(FN(UNION
,from
),BASE
)(__isl_take EL
*el
)
21 return FN(FN(UNION
,from
),PW_BASE
)(FN(FN(PW
,from
),BASE
)(el
));