#include <isl_printer_private.h> #define xCAT(A,B) … #define CAT(A,B) … #undef TYPE #define TYPE … #define xFN(TYPE,NAME) … #define FN(TYPE,NAME) … #ifndef PRINT_DUMP_DEFAULT #define PRINT_DUMP_DEFAULT … #endif void FN(TYPE,dump)(__isl_keep TYPE *obj) { … } #undef PRINT_DUMP_DEFAULT __isl_give char *FN(TYPE,to_str)(__isl_keep TYPE *obj) { … }