extern-inline: avoid compilation error with HP-UX cc
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 19 Feb 2013 01:16:30 +0000 (17:16 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 19 Feb 2013 01:17:08 +0000 (17:17 -0800)
Reported by Richard Lloyd in
<http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
* m4/extern-inline.m4 (_GL_INLINE, _GL_EXTERN_INLINE):
Suppress extern inline with HP-UX cc.  This should be safe,
though it may hurt performance.  Perhaps someone with some HP-UX
experience can come up with a higher-performance fix.

ChangeLog
m4/extern-inline.m4

index 6e202e9..050ad4d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2013-02-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       extern-inline: avoid compilation error with HP-UX cc
+       Reported by Richard Lloyd in
+       <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
+       * m4/extern-inline.m4 (_GL_INLINE, _GL_EXTERN_INLINE):
+       Suppress extern inline with HP-UX cc.  This should be safe,
+       though it may hurt performance.  Perhaps someone with some HP-UX
+       experience can come up with a higher-performance fix.
+
 2013-02-14  Paul Eggert  <eggert@cs.ucla.edu>
 
        putenv: fix heap corruption with mixed putenv/_putenv
index 5880d4f..0152f29 100644 (file)
@@ -18,13 +18,16 @@ AC_DEFUN([gl_EXTERN_INLINE],
    _GL_INLINE_HEADER_END contains useful stuff to put
      in the same include file, after uses of _GL_INLINE.
 
+   Suppress extern inline with HP-UX cc, as it appears to be broken; see
+   <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
+
    Suppress the use of extern inline on Apple's platforms,
    as Libc-825.25 (2012-09-19) is incompatible with it; see
    <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
    Perhaps Apple will fix this some day.  */
 #if ((__GNUC__ \
       ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
-      : 199901L <= __STDC_VERSION__) \
+      : 199901L <= __STDC_VERSION__ && !defined __HP_cc) \
      && !defined __APPLE__)
 # define _GL_INLINE inline
 # define _GL_EXTERN_INLINE extern inline