This is the mail archive of the
mailing list for the GCC project.
Re: How to handle c99 inline changes? [was RE: -fkeep-inline-functions and broken Cygwin bootstrap (was: Building GCC 4.3.0 on Cygwin...)]
"Dave Korn" <email@example.com> writes:
> So, am I correct to believe that we need to use plain 'inline' for c99 after gcc 4.4, and 'extern inline' before that? That is, I think I need to write a test that looks like...
> #if ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4))) \
> && defined (__STRICT_ANSI__) && (__STRICT_ANSI__ != 0) \
> && defined (__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
> #define ELIDABLE_INLINE inline
> #define ELIDABLE_INLINE extern inline
It's simpler than that. I defined new preprocessor macros
specifically to avoid this complexity. Here is one approach that
#define ELIDABLE_INLINE inline
#define ELIDABLE_INLINE extern inline