changeset 17098:16d02df1b46e

acl, mbchar, priv-set: use extern-inline * lib/set-mode-acl.c, lib/acl-internal.h (ACL_INTERNAL_INLINE): * lib/mbchar.c, lib/mbchar.h (MBCHAR_INLINE): * lib/priv-set.c, lib/priv-set.h (PRIV_SET_INLINE): New macros. * lib/acl-internal.h, lib/mbchar.h, lib/priv-set.h: Replace all uses of 'static inline' with it. Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. * m4/acl.m4 (gl_FUNC_ACL): * m4/mbchar.m4 (gl_MBCHAR): * m4/priv-set.m4 (gl_PRIV_SET): Remove AC_C_INLINE, since 'inline' is no longer used directly. * modules/acl, modules/mbchar, modules/priv-set (Depends-on): Add extern-inline.
author Paul Eggert <eggert@cs.ucla.edu>
date Wed, 29 Aug 2012 20:59:53 -0700
parents 823593211493
children 66fafd5c6640
files ChangeLog lib/acl-internal.h lib/mbchar.c lib/mbchar.h lib/priv-set.c lib/priv-set.h lib/set-mode-acl.c m4/acl.m4 m4/mbchar.m4 m4/priv-set.m4 modules/acl modules/mbchar modules/priv-set
diffstat 13 files changed, 63 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,20 @@
 2012-09-22  Paul Eggert  <eggert@cs.ucla.edu>
 
+	acl, mbchar, priv-set: use extern-inline
+	* lib/set-mode-acl.c, lib/acl-internal.h (ACL_INTERNAL_INLINE):
+	* lib/mbchar.c, lib/mbchar.h (MBCHAR_INLINE):
+	* lib/priv-set.c, lib/priv-set.h (PRIV_SET_INLINE):
+	New macros.
+	* lib/acl-internal.h, lib/mbchar.h, lib/priv-set.h:
+	Replace all uses of 'static inline' with it.
+	Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+	* m4/acl.m4 (gl_FUNC_ACL):
+	* m4/mbchar.m4 (gl_MBCHAR):
+	* m4/priv-set.m4 (gl_PRIV_SET):
+	Remove AC_C_INLINE, since 'inline' is no longer used directly.
+	* modules/acl, modules/mbchar, modules/priv-set (Depends-on):
+	Add extern-inline.
+
 	sockets, sys_stat: remove AC_C_INLINE in MSVC-only cases
 	* m4/sockets.m4 (gl_SOCKETS):
 	* m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H):
--- a/lib/acl-internal.h
+++ b/lib/acl-internal.h
@@ -82,6 +82,11 @@
      ((Err) == ENOTSUP || (Err) == ENOSYS || (Err) == EINVAL || (Err) == EBUSY)
 #endif
 
+_GL_INLINE_HEADER_BEGIN
+#ifndef ACL_INTERNAL_INLINE
+# define ACL_INTERNAL_INLINE _GL_INLINE
+#endif
+
 #if USE_ACL
 
 # if HAVE_ACL_GET_FILE
@@ -97,7 +102,7 @@
 /* Most platforms have a 1-argument acl_get_fd, only OSF/1 has a 2-argument
    macro(!).  */
 #   if HAVE_ACL_FREE_TEXT /* OSF/1 */
-static inline acl_t
+ACL_INTERNAL_INLINE acl_t
 rpl_acl_get_fd (int fd)
 {
   return acl_get_fd (fd, ACL_TYPE_ACCESS);
@@ -116,7 +121,7 @@
 /* Most platforms have a 2-argument acl_set_fd, only OSF/1 has a 3-argument
    macro(!).  */
 #   if HAVE_ACL_FREE_TEXT /* OSF/1 */
-static inline int
+ACL_INTERNAL_INLINE int
 rpl_acl_set_fd (int fd, acl_t acl)
 {
   return acl_set_fd (fd, ACL_TYPE_ACCESS, acl);
@@ -263,3 +268,5 @@
 # endif
 
 #endif
+
+_GL_INLINE_HEADER_END
--- a/lib/mbchar.c
+++ b/lib/mbchar.c
@@ -16,6 +16,8 @@
 
 #include <config.h>
 
+#define MBCHAR_INLINE _GL_EXTERN_INLINE
+
 #include <limits.h>
 
 #include "mbchar.h"
--- a/lib/mbchar.h
+++ b/lib/mbchar.h
@@ -156,6 +156,11 @@
 #include <wchar.h>
 #include <wctype.h>
 
+_GL_INLINE_HEADER_BEGIN
+#ifndef MBCHAR_INLINE
+# define MBCHAR_INLINE _GL_INLINE
+#endif
+
 #define MBCHAR_BUF_SIZE 24
 
 struct mbchar
@@ -235,7 +240,7 @@
 /* Unprintable characters appear as a small box of width 1.  */
 #define MB_UNPRINTABLE_WIDTH 1
 
-static inline int
+MBCHAR_INLINE int
 mb_width_aux (wint_t wc)
 {
   int w = wcwidth (wc);
@@ -256,7 +261,7 @@
    (mbc)->wc = (mbc)->buf[0] = (sc))
 
 /* Copying a character.  */
-static inline void
+MBCHAR_INLINE void
 mb_copy (mbchar_t *new_mbc, const mbchar_t *old_mbc)
 {
   if (old_mbc->ptr == &old_mbc->buf[0])
@@ -304,7 +309,7 @@
 
 extern const unsigned int is_basic_table[];
 
-static inline bool
+MBCHAR_INLINE bool
 is_basic (char c)
 {
   return (is_basic_table [(unsigned char) c >> 5] >> ((unsigned char) c & 31))
@@ -313,7 +318,7 @@
 
 #else
 
-static inline bool
+MBCHAR_INLINE bool
 is_basic (char c)
 {
   switch (c)
@@ -347,4 +352,6 @@
 
 #endif
 
+_GL_INLINE_HEADER_END
+
 #endif /* _MBCHAR_H */
--- a/lib/priv-set.c
+++ b/lib/priv-set.c
@@ -18,6 +18,9 @@
    Written by David Bartley.  */
 
 #include <config.h>
+
+#define PRIV_SET_INLINE _GL_EXTERN_INLINE
+
 #include "priv-set.h"
 
 #if HAVE_GETPPRIV && HAVE_PRIV_H
--- a/lib/priv-set.h
+++ b/lib/priv-set.h
@@ -17,6 +17,11 @@
 
    Written by David Bartley.  */
 
+_GL_INLINE_HEADER_BEGIN
+#ifndef PRIV_SET_INLINE
+# define PRIV_SET_INLINE _GL_INLINE
+#endif
+
 #if HAVE_GETPPRIV && HAVE_PRIV_H
 
 # include <priv.h>
@@ -25,26 +30,32 @@
 int priv_set_remove (const char *priv);
 int priv_set_restore (const char *priv);
 
-static inline int priv_set_remove_linkdir (void)
+PRIV_SET_INLINE int
+priv_set_remove_linkdir (void)
 {
   return priv_set_remove (PRIV_SYS_LINKDIR);
 }
 
-static inline int priv_set_restore_linkdir (void)
+PRIV_SET_INLINE int
+priv_set_restore_linkdir (void)
 {
   return priv_set_restore (PRIV_SYS_LINKDIR);
 }
 
 #else
 
-static inline int priv_set_remove_linkdir (void)
+PRIV_SET_INLINE int
+priv_set_remove_linkdir (void)
 {
   return -1;
 }
 
-static inline int priv_set_restore_linkdir (void)
+PRIV_SET_INLINE int
+priv_set_restore_linkdir (void)
 {
   return -1;
 }
 
 #endif
+
+_GL_INLINE_HEADER_END
--- a/lib/set-mode-acl.c
+++ b/lib/set-mode-acl.c
@@ -19,6 +19,8 @@
 
 #include <config.h>
 
+#define ACL_INTERNAL_INLINE _GL_EXTERN_INLINE
+
 #include "acl.h"
 
 #include "acl-internal.h"
--- a/m4/acl.m4
+++ b/m4/acl.m4
@@ -1,5 +1,5 @@
 # acl.m4 - check for access control list (ACL) primitives
-# serial 14
+# serial 15
 
 # Copyright (C) 2002, 2004-2012 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
@@ -16,7 +16,6 @@
 
   LIB_ACL=
   use_acl=0
-  AC_REQUIRE([AC_C_INLINE])
   if test "x$enable_acl" != "xno"; then
     dnl On all platforms, the ACL related API is declared in <sys/acl.h>.
     AC_CHECK_HEADERS([sys/acl.h])
--- a/m4/mbchar.m4
+++ b/m4/mbchar.m4
@@ -1,4 +1,4 @@
-# mbchar.m4 serial 8
+# mbchar.m4 serial 9
 dnl Copyright (C) 2005-2007, 2009-2012 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -10,5 +10,4 @@
 AC_DEFUN([gl_MBCHAR],
 [
   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
-  AC_REQUIRE([AC_C_INLINE])
 ])
--- a/m4/priv-set.m4
+++ b/m4/priv-set.m4
@@ -1,4 +1,4 @@
-# serial 7
+# serial 8
 
 # Copyright (C) 2009-2012 Free Software Foundation, Inc.
 #
@@ -10,7 +10,6 @@
 
 AC_DEFUN([gl_PRIV_SET],
 [
-  AC_REQUIRE([AC_C_INLINE])
   AC_CHECK_FUNCS([getppriv])
   AC_CHECK_HEADERS_ONCE([priv.h])
 ])
--- a/modules/acl
+++ b/modules/acl
@@ -12,6 +12,7 @@
 
 Depends-on:
 error
+extern-inline
 fstat
 gettext-h
 quote
--- a/modules/mbchar
+++ b/modules/mbchar
@@ -8,6 +8,7 @@
 
 Depends-on:
 extensions
+extern-inline
 stdbool
 wchar
 wctype-h
--- a/modules/priv-set
+++ b/modules/priv-set
@@ -8,6 +8,7 @@
 
 Depends-on:
 errno
+extern-inline
 stdbool
 
 configure.ac: