On Thu, Jul 19, 2018 at 04:21:26AM -0700, H.J. Lu wrote: > The new indirect_return attribute is intended to mark swapcontext in > <ucontext.h>. This patch defines __HAVE_INDIRECT_RETURN_ATTRIBUTE__ > so that it can be used checked before using indirect_return attribute > in <ucontext.h>. It works when the indirect_return attribute is > backported to GCC 8. > > OK for trunk?
No. Use #ifdef __has_attribute #if __has_attribute (indirect_return) ... #endif #endif instead, like for any other attribute. Predefined macros aren't zero cost. Jakub