-#if defined(__cplusplus)
-#define _lttng_is_integer(type) (std::is_integral<type>::value)
-#else
-#define _lttng_is_integer(type) (__builtin_types_compatible_p(type, _Bool) || \
- __builtin_types_compatible_p(type, char) || \
- __builtin_types_compatible_p(type, unsigned char) || \
- __builtin_types_compatible_p(type, short) || \
- __builtin_types_compatible_p(type, unsigned short) || \
- __builtin_types_compatible_p(type, int) || \
- __builtin_types_compatible_p(type, unsigned int) || \
- __builtin_types_compatible_p(type, long) || \
- __builtin_types_compatible_p(type, unsigned long) || \
- __builtin_types_compatible_p(type, long long) || \
- __builtin_types_compatible_p(type, unsigned long long))
-#endif
-
-#define _lttng_array_element_type_is_supported(_type, _item) \
- lttng_static_assert(_lttng_is_integer(_type), \
- "Non-integer type `" #_item "` not supported as element of CTF_ARRAY or CTF_SEQUENCE", \
- Non_integer_type__##_item##__not_supported_as_element_of_CTF_ARRAY_or_CTF_SEQUENCE);