__has_attribute
# if __has_attribute(model)
#ifndef __has_attribute
#if __has_attribute(__fallthrough__)
#if __has_attribute(__nonstring__)
#if defined(CONFIG_KCOV) && __has_attribute(__no_sanitize_coverage__)
#if __has_attribute(__nonstring__) && defined(__annotated)
#if __has_attribute(__diagnose_as_builtin__)
#if __has_attribute(__designated_init__)
#if __has_attribute(__error__)
#if __has_attribute(__externally_visible__)
#if __has_attribute(__no_caller_saved_registers__)
#if __has_attribute(__noclone__)
#if __has_attribute(__fallthrough__)
#if __has_attribute(__nonstring__)
#if __has_attribute(__no_profile_instrument_function__)
#if __has_attribute(__no_stack_protector__)
#if __has_attribute(__overloadable__)
#if __has_attribute(__pass_dynamic_object_size__)
#if __has_attribute(__pass_object_size__)
#if __has_attribute(__uninitialized__)
#if __has_attribute(__warning__)
#if __has_attribute(disable_sanitizer_instrumentation)
#if __has_attribute(__copy__)
#if __has_attribute(__preserve_most__) && (defined(CONFIG_X86_64) || defined(CONFIG_ARM64))
#if __has_attribute(__retain__) && \
__has_attribute(btf_type_tag) && !defined(__BINDGEN__)
#if !__has_attribute(__no_stack_protector__)
__has_attribute(btf_type_tag)))
# if __has_attribute(no_sanitize)
#ifndef __has_attribute
# if ((defined(__clang__) && __has_attribute(__target__)) \
#if __has_attribute(__fallthrough__)
#if __has_attribute(__error__)
# define __nolibc_has_attribute(attr) __has_attribute(attr)
#if defined(__has_attribute)
#if __has_attribute(__fallthrough__)
#ifdef __has_attribute
#if __has_attribute(disable_tail_calls)
#ifdef __has_attribute
#define HAVE_ATTRIBUTE(x) __has_attribute(x)
#if __has_attribute(btf_type_tag)
#if __has_attribute(btf_decl_tag)