diff options
author | Eric Botcazou <ebotcazou@libertysurf.fr> | 2006-02-09 11:54:15 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@libertysurf.fr> | 2006-02-09 11:54:15 +0000 |
commit | 6d74f28b36e29b8708881b60e2e6505047813b0b (patch) | |
tree | 4db3c41358a8c93a979bafdf6c33662d21f64d40 /gas/as.h | |
parent | db50c8404c624dfe903294d439c54a6db7c6d6c8 (diff) | |
download | binutils-gdb-6d74f28b36e29b8708881b60e2e6505047813b0b.tar.gz |
2006-02-09 Eric Botcazou <ebotcazou@libertysurf.fr>
* configure.in (CHECK_DECLS): Add vsnprintf.
* configure: Regenerate.
* messages.c (errno.h, stdarg.h, varargs.h, va_list):
Do not include/declare here, but...
* as.h: Move code detecting VARARGS idiom to the top.
(errno.h, stdarg.h, varargs.h, va_list): ...here.
(vsnprintf): Declare if not already declared.
Diffstat (limited to 'gas/as.h')
-rw-r--r-- | gas/as.h | 51 |
1 files changed, 38 insertions, 13 deletions
@@ -68,6 +68,19 @@ extern void *alloca (); # endif /* HAVE_ALLOCA_H */ #endif /* __GNUC__ */ +/* Prefer varargs for non-ANSI compiler, since some will barf if the + ellipsis definition is used with a no-arguments declaration. */ +#if defined (HAVE_VARARGS_H) && !defined (__STDC__) +#undef HAVE_STDARG_H +#endif + +#if defined (HAVE_STDARG_H) +#define USE_STDARG +#endif +#if !defined (USE_STDARG) && defined (HAVE_VARARGS_H) +#define USE_VARARGS +#endif + /* Now, tend to the rest of the configuration. */ /* System include files first... */ @@ -90,6 +103,27 @@ extern void *alloca (); #include <sys/types.h> #endif +#ifdef HAVE_ERRNO_H +#include <errno.h> +#endif + +#ifdef USE_STDARG +#include <stdarg.h> +#endif + +#ifdef USE_VARARGS +#include <varargs.h> +#endif + +#if !defined (USE_STDARG) && !defined (USE_VARARGS) +/* Roll our own. */ +#define va_alist REST +#define va_dcl +typedef int * va_list; +#define va_start(ARGS) ARGS = &REST +#define va_end(ARGS) +#endif + #include "getopt.h" /* The first getopt value for machine-independent long options. 150 isn't special; it's just an arbitrary non-ASCII char value. */ @@ -145,6 +179,10 @@ extern PTR realloc (); extern char *strstr (); #endif +#if !HAVE_DECL_VSNPRINTF +extern int vsnprintf(char *, size_t, const char *, va_list); +#endif + /* This is needed for VMS. */ #if ! defined (HAVE_UNLINK) && defined (HAVE_REMOVE) #define unlink remove @@ -442,19 +480,6 @@ struct _pseudo_type typedef struct _pseudo_type pseudo_typeS; -/* Prefer varargs for non-ANSI compiler, since some will barf if the - ellipsis definition is used with a no-arguments declaration. */ -#if defined (HAVE_VARARGS_H) && !defined (__STDC__) -#undef HAVE_STDARG_H -#endif - -#if defined (HAVE_STDARG_H) -#define USE_STDARG -#endif -#if !defined (USE_STDARG) && defined (HAVE_VARARGS_H) -#define USE_VARARGS -#endif - #ifdef USE_STDARG #if (__GNUC__ >= 2) && !defined(VMS) /* for use with -Wformat */ |