summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--doc/extern-inline.texi3
-rw-r--r--m4/extern-inline.m45
3 files changed, 14 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 6d9ba2c38f..5e82830a52 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2015-04-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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 <P@draigBrady.com>
eealloc, pagealign_alloc, xalloc: avoid clang warnings
diff --git a/doc/extern-inline.texi b/doc/extern-inline.texi
index 85edfa8736..1c9c0a1188 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 e74339a165..72800650e6 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