diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2012-08-21 07:37:56 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2012-08-21 07:37:56 -0700 |
commit | 01b13eb7fae39e64a3a6e2a0f5ef4ec058d16363 (patch) | |
tree | 8e71418cbda795d66f667f4a2be47716b58cf91b /m4 | |
parent | 086ca913a8495b1d4f0d7eae58aea75f2f5e44ae (diff) | |
download | emacs-01b13eb7fae39e64a3a6e2a0f5ef4ec058d16363.tar.gz |
Merge from gnulib.
Diffstat (limited to 'm4')
-rw-r--r-- | m4/extern-inline.m4 | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/m4/extern-inline.m4 b/m4/extern-inline.m4 index 187a33599a3..12f24fab95f 100644 --- a/m4/extern-inline.m4 +++ b/m4/extern-inline.m4 @@ -21,20 +21,34 @@ AC_DEFUN([gl_EXTERN_INLINE], #if __GNUC__ ? __GNUC_STDC_INLINE__ : 199901L <= __STDC_VERSION__ # define _GL_INLINE inline # define _GL_EXTERN_INLINE extern inline -# if (__GNUC__ == 4 && 6 <= __GNUC_MINOR__) || 4 < __GNUC__ -# define _GL_INLINE_HEADER_BEGIN \ - _Pragma ("GCC diagnostic push") \ - _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \ - _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") -# define _GL_INLINE_HEADER_END \ - _Pragma ("GCC diagnostic pop") +#elif 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# if __GNUC_GNU_INLINE__ + /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ +# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) +# else +# define _GL_INLINE extern inline # endif +# define _GL_EXTERN_INLINE extern #else # define _GL_INLINE static inline # define _GL_EXTERN_INLINE static inline #endif -#ifndef _GL_INLINE_HEADER_BEGIN +#if 4 < __GNUC__ + (6 <= __GNUC_MINOR__) +# if __GNUC_STDC_INLINE__ +# define _GL_INLINE_HEADER_CONST_PRAGMA +# else +# define _GL_INLINE_HEADER_CONST_PRAGMA \ + _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"") +# endif +# define _GL_INLINE_HEADER_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \ + _GL_INLINE_HEADER_CONST_PRAGMA +# define _GL_INLINE_HEADER_END \ + _Pragma ("GCC diagnostic pop") +#else # define _GL_INLINE_HEADER_BEGIN # define _GL_INLINE_HEADER_END #endif]) |