Mercurial > hg > octave-lojdl > gnulib-hg
changeset 4888:a68e25d3fb46
argp update from libc
author | Karl Berry <karl@freefriends.org> |
---|---|
date | Sat, 29 Nov 2003 13:37:46 +0000 |
parents | e1d2f92c866a |
children | dfc629bda85d |
files | lib/ChangeLog lib/argp-help.c lib/argp-namefrob.h lib/argp-parse.c lib/argp.h |
diffstat | 5 files changed, 44 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,7 @@ +2003-11-29 Karl Berry <karl@gnu.org> + + * argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc. + 2003-11-23 Paul Eggert <eggert@twinsun.com> Bruno Haible <bruno@clisp.org>
--- a/lib/argp-help.c +++ b/lib/argp-help.c @@ -25,20 +25,16 @@ #include <config.h> #endif -#ifndef alloca -# ifdef __GNUC__ -# define alloca __builtin_alloca -# define HAVE_ALLOCA 1 +/* AIX requires this to be the first thing in the file. */ +#ifndef __GNUC__ +# if HAVE_ALLOCA_H || defined _LIBC +# include <alloca.h> # else -# if defined HAVE_ALLOCA_H || defined _LIBC -# include <alloca.h> +# ifdef _AIX +#pragma alloca # else -# ifdef _AIX - #pragma alloca -# else -# ifndef alloca +# ifndef alloca /* predefined by HP cc +Olibcalls */ char *alloca (); -# endif # endif # endif # endif
--- a/lib/argp-namefrob.h +++ b/lib/argp-namefrob.h @@ -76,6 +76,11 @@ #undef __argp_fmtstream_wmargin #define __argp_fmtstream_wmargin argp_fmtstream_wmargin +#include "mempcpy.h" +#include "strcase.h" +#include "strchrnul.h" +#include "strndup.h" + /* normal libc functions we call */ #undef __flockfile #define __flockfile flockfile
--- a/lib/argp-parse.c +++ b/lib/argp-parse.c @@ -1,5 +1,5 @@ /* Hierarchial argument parsing, layered over getopt - Copyright (C) 1995-2000, 2002 Free Software Foundation, Inc. + Copyright (C) 1995-2000, 2002, 2003 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Miles Bader <miles@gnu.ai.mit.edu>. @@ -21,6 +21,21 @@ #include <config.h> #endif +/* AIX requires this to be the first thing in the file. */ +#ifndef __GNUC__ +# if HAVE_ALLOCA_H || defined _LIBC +# include <alloca.h> +# else +# ifdef _AIX +#pragma alloca +# else +# ifndef alloca /* predefined by HP cc +Olibcalls */ +char *alloca (); +# endif +# endif +# endif +#endif + #include <stdlib.h> #include <string.h> #include <unistd.h>
--- a/lib/argp.h +++ b/lib/argp.h @@ -48,6 +48,18 @@ # endif #endif +/* GCC 2.95 and later have "__restrict"; C99 compilers have + "restrict", and "configure" may have defined "restrict". */ +#ifndef __restrict +# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__)) +# if defined restrict || 199901L <= __STDC_VERSION__ +# define __restrict restrict +# else +# define __restrict +# endif +# endif +#endif + #ifndef __error_t_defined typedef int error_t; # define __error_t_defined