__has_attribute
#if __GNUC_PREREQ__(4, 3) || __has_attribute(__alloc_size__)
#if __GNUC_PREREQ__(4, 9) || __has_attribute(__alloc_align__)
#ifndef __has_attribute
#if __GNUC_PREREQ__(4, 3) || __has_attribute(__artificial__)
#if __has_attribute(__argument_with_type_tag__) && \
__has_attribute(__type_tag_for_datatype__) && !defined(lint)
IDENT(__has_attribute);
#ifndef __has_attribute
#if __has_attribute(nothinx)
&& __has_attribute(packed) \
&& __has_attribute(aligned) \
&& __has_attribute(const) \
&& __has_attribute(pure) \
&& __has_attribute(noreturn) \
__has_attribute()??? Quesako?
&& __has_attribute(designated_init) \
&& __has_attribute(transparent_union) \
&& __has_attribute(fastcall) \
&& __has_attribute(nocast) \
&& __has_attribute(noderef) \
&& __has_attribute(safe) \
&& __has_attribute(force) \
&& __has_attribute(bitwise) \
&& __has_attribute(address_space) \
&& __has_attribute(context) \
123 __has_attribute(nothinx) def