* doc/extern-inline.texi (extern inline): * m4/extern-inline.m4 (gl_EXTERN_INLINE): GCC bugs 54113 and 63877 are fixed in GCC 5.1, so don't work around these bugs in GCC 5.1 and later. Maybe in a decade or two we can remove these workarounds. --- ChangeLog | 9 +++++++++ doc/extern-inline.texi | 3 ++- m4/extern-inline.m4 | 5 +++-- 3 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog index 6d9ba2c..5e82830 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2015-04-29 Paul Eggert <[email protected]> + + extern-inline: no need for workaround in GCC 5.1 + * doc/extern-inline.texi (extern inline): + * m4/extern-inline.m4 (gl_EXTERN_INLINE): + GCC bugs 54113 and 63877 are fixed in GCC 5.1, so don't work + around these bugs in GCC 5.1 and later. Maybe in a decade or + two we can remove these workarounds. + 2015-04-28 Pádraig Brady <[email protected]> eealloc, pagealign_alloc, xalloc: avoid clang warnings diff --git a/doc/extern-inline.texi b/doc/extern-inline.texi index 85edfa8..1c9c0a1 100644 --- a/doc/extern-inline.texi +++ b/doc/extern-inline.texi @@ -90,7 +90,8 @@ platforms and will die out eventually. @findex _GL_INLINE_HEADER_BEGIN Invoke @code{_GL_INLINE_HEADER_BEGIN} before all uses of -@code{_GL_INLINE} in an include file. If an include file includes +@code{_GL_INLINE} in an include file. This suppresses some +bogus warnings in GCC versions before 5.1. If an include file includes other files, it is better to invoke this macro after including the other files. diff --git a/m4/extern-inline.m4 b/m4/extern-inline.m4 index e74339a..7280065 100644 --- a/m4/extern-inline.m4 +++ b/m4/extern-inline.m4 @@ -74,12 +74,13 @@ AC_DEFUN([gl_EXTERN_INLINE], # define _GL_EXTERN_INLINE static _GL_UNUSED #endif -/* In GCC, suppress bogus "no previous prototype for 'FOO'" +/* In GCC 4.6 (inclusive) to 5.1 (exclusive), + suppress bogus "no previous prototype for 'FOO'" and "no previous declaration for 'FOO'" diagnostics, when FOO is an inline function in the header; see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113> and <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63877>. */ -#if 4 < __GNUC__ + (6 <= __GNUC_MINOR__) +#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__ # if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ # define _GL_INLINE_HEADER_CONST_PRAGMA # else -- 2.1.0
