diff options
author | Jim Meyering <jim@meyering.net> | 2004-05-21 07:48:44 +0000 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 2004-05-21 07:48:44 +0000 |
commit | 610a75570142f595ddd8378e17c7e637f8c27f9c (patch) | |
tree | d055260ab1ad57b637cf5f6861c3af4c23967a44 /lib | |
parent | ee2c5f05fdc40303d655429cec0b26c24d9eaf97 (diff) | |
download | coreutils-610a75570142f595ddd8378e17c7e637f8c27f9c.tar.xz |
update from gnulib
Diffstat (limited to 'lib')
-rw-r--r-- | lib/alloca.c | 2 | ||||
-rw-r--r-- | lib/alloca_.h | 50 |
2 files changed, 20 insertions, 32 deletions
diff --git a/lib/alloca.c b/lib/alloca.c index a58007869..d1d54475b 100644 --- a/lib/alloca.c +++ b/lib/alloca.c @@ -25,6 +25,8 @@ # include <config.h> #endif +#include <alloca.h> + #include <string.h> #include <stdlib.h> diff --git a/lib/alloca_.h b/lib/alloca_.h index 8ed34fdc6..8a91698c5 100644 --- a/lib/alloca_.h +++ b/lib/alloca_.h @@ -1,5 +1,7 @@ /* Memory allocation on the stack. - Copyright (C) 1995, 1999, 2001-2003 Free Software Foundation, Inc. + + Copyright (C) 1995, 1999, 2001, 2002, 2003, 2004 Free Software + Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published @@ -23,8 +25,8 @@ #ifndef _ALLOCA_H # define _ALLOCA_H -/* alloca(N) returns a pointer (void* or char*) to N bytes of memory - allocated on the stack, and which will last until the function returns. +/* alloca (N) returns a pointer to N bytes of memory + allocated on the stack, which will last until the function returns. Use of alloca should be avoided: - inside arguments of function calls - undefined behaviour, - in inline functions - the allocation may actually last until the @@ -34,35 +36,19 @@ request, the program just crashes. */ -# ifdef __GNUC__ -# ifndef alloca -# define alloca __builtin_alloca -# endif -# else -# ifdef _MSC_VER -# include <malloc.h> -# define alloca _alloca -# else -# if HAVE_ALLOCA_H -# include <alloca.h> -# else -# ifdef _AIX - # pragma alloca -# else -# ifdef __hpux /* This section must match that of bison generated files. */ -# ifdef __cplusplus -extern "C" void *alloca (unsigned int); -# else /* not __cplusplus */ -extern void *alloca (); -# endif /* not __cplusplus */ -# else /* not __hpux */ -# ifndef alloca -extern char *alloca (); -# endif -# endif /* __hpux */ -# endif -# endif -# endif +#ifdef __GNUC__ +# define alloca __builtin_alloca +#elif defined _AIX +# define alloca __alloca +#elif defined _MSC_VER +# include <malloc.h> +# define alloca _alloca +#else +# include <stddef.h> +# ifdef __cplusplus +extern "C" # endif +void *alloca (size_t); +#endif #endif /* _ALLOCA_H */ |