Mercurial > hg > octave-lyh > gnulib-hg
changeset 17211:6cbd4d7cb911
argp: better 'inline'
Use extern-inline module to declare extern inline functions.
This avoids some bogus warning diagnostics. Problem discovered
when modifying GNU tar to use the manywarnings module.
* lib/argp.h, lib/argp-xinl.c (ARGP_EI) [!_LIBC]:
* lib/argp-fmtstream.h, lib/argp-fs-xinl.c (ARGP_FS_EI) [!_LIBC]:
Define based on extern-inline.
* modules/argp (Depends-on): Add extern-inline.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Tue, 18 Dec 2012 17:59:33 -0800 |
parents | c09382013ecb |
children | 46900f509454 |
files | ChangeLog lib/argp-fmtstream.h lib/argp-fs-xinl.c lib/argp-xinl.c lib/argp.h modules/argp |
diffstat | 6 files changed, 32 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2012-12-18 Paul Eggert <eggert@cs.ucla.edu> + + argp: better 'inline' + Use extern-inline module to declare extern inline functions. + This avoids some bogus warning diagnostics. Problem discovered + when modifying GNU tar to use the manywarnings module. + * lib/argp.h, lib/argp-xinl.c (ARGP_EI) [!_LIBC]: + * lib/argp-fmtstream.h, lib/argp-fs-xinl.c (ARGP_FS_EI) [!_LIBC]: + Define based on extern-inline. + * modules/argp (Depends-on): Add extern-inline. + 2012-12-17 Paul Eggert <eggert@cs.ucla.edu> filemode, sys_stat: Handle MPX files a la AIX.
--- a/lib/argp-fmtstream.h +++ b/lib/argp-fmtstream.h @@ -197,6 +197,10 @@ #define __argp_fmtstream_point argp_fmtstream_point #define __argp_fmtstream_update _argp_fmtstream_update #define __argp_fmtstream_ensure _argp_fmtstream_ensure +_GL_INLINE_HEADER_BEGIN +#ifndef ARGP_FS_EI +# define ARGP_FS_EI _GL_INLINE +#endif #endif #ifndef ARGP_FS_EI @@ -345,6 +349,7 @@ #undef __argp_fmtstream_point #undef __argp_fmtstream_update #undef __argp_fmtstream_ensure +_GL_INLINE_HEADER_END #endif #endif /* __OPTIMIZE__ */
--- a/lib/argp-fs-xinl.c +++ b/lib/argp-fs-xinl.c @@ -20,7 +20,11 @@ # include <config.h> #endif -#define ARGP_FS_EI +#ifdef _LIBC +# define ARGP_FS_EI +#else +# define ARGP_FS_EI _GL_EXTERN_INLINE +#endif #undef __OPTIMIZE__ #define __OPTIMIZE__ 1 #include "argp-fmtstream.h"
--- a/lib/argp-xinl.c +++ b/lib/argp-xinl.c @@ -27,7 +27,11 @@ #ifndef __USE_EXTERN_INLINES # define __USE_EXTERN_INLINES 1 #endif -#define ARGP_EI +#ifdef _LIBC +# define ARGP_EI +#else +# define ARGP_EI _GL_EXTERN_INLINE +#endif #undef __OPTIMIZE__ #define __OPTIMIZE__ 1 #include "argp.h"
--- a/lib/argp.h +++ b/lib/argp.h @@ -579,6 +579,10 @@ # define __argp_state_help argp_state_help # define __option_is_short _option_is_short # define __option_is_end _option_is_end +_GL_INLINE_HEADER_BEGIN +# ifndef ARGP_EI +# define ARGP_EI _GL_INLINE +# endif # endif # ifndef ARGP_EI @@ -635,6 +639,7 @@ # undef __argp_state_help # undef __option_is_short # undef __option_is_end +_GL_INLINE_HEADER_END # endif #endif /* Use extern inlines. */