Do you use __always_inline just to make the decl shorter? I don't think there is really any need for the macro, at least not for the sake of checking wrappers such as these. Those will never be enabled with a GCC version too old to support __attribute__ ((__always_inline__)).