-/* predicates that evaluate to integer constant expressions */
-#ifdef __clang__
-/* TODO: __c_IS_FP(1.0) is a constraint violation */
-#define __c_IS_FP(x) (!(sizeof*(__typeof__(0?(int*)0:(void*)__IS_FP(x)))0-1))
-#else
-#define __c_IS_FP(x) __IS_FP(x)
-#endif
-#define __c_IS_CX(x) (__c_IS_FP(x) && sizeof(x) == sizeof((x)+I))
-#define __c_FLTCX(x) (__c_IS_CX(x) && sizeof(x) == sizeof(float complex))
-#define __c_DBLCX(x) (__c_IS_CX(x) && sizeof(x) == sizeof(double complex))
-#define __c_LDBLCX(x) (__c_IS_CX(x) && sizeof(x) == sizeof(long double complex) && sizeof(long double) != sizeof(double))