diff options
Diffstat (limited to 'newlib/libc/stdio/asprintf.c')
-rw-r--r-- | newlib/libc/stdio/asprintf.c | 37 |
1 files changed, 5 insertions, 32 deletions
diff --git a/newlib/libc/stdio/asprintf.c b/newlib/libc/stdio/asprintf.c index 39536800b..c7183f341 100644 --- a/newlib/libc/stdio/asprintf.c +++ b/newlib/libc/stdio/asprintf.c @@ -19,27 +19,15 @@ #include <_ansi.h> #include <reent.h> #include <stdio.h> -#ifdef _HAVE_STDC #include <stdarg.h> -#else -#include <varargs.h> -#endif #include <limits.h> #include "local.h" int -#ifdef _HAVE_STDC _DEFUN(_asprintf_r, (ptr, strp, fmt), struct _reent *ptr _AND char **strp _AND - _CONST char *fmt _DOTS) -#else -_asprintf_r(ptr, strp, fmt, va_alist) - struct _reent *ptr; - char **strp; - _CONST char *fmt; - va_dcl -#endif + const char *fmt _DOTS) { int ret; va_list ap; @@ -50,12 +38,8 @@ _asprintf_r(ptr, strp, fmt, va_alist) f._bf._base = f._p = NULL; f._bf._size = f._w = 0; f._file = -1; /* No file. */ -#ifdef _HAVE_STDC va_start (ap, fmt); -#else - va_start (ap); -#endif - ret = vfprintf (&f, fmt, ap); + ret = _vfprintf_r (ptr, &f, fmt, ap); va_end (ap); if (ret >= 0) { @@ -68,16 +52,9 @@ _asprintf_r(ptr, strp, fmt, va_alist) #ifndef _REENT_ONLY int -#ifdef _HAVE_STDC _DEFUN(asprintf, (strp, fmt), char **strp _AND - _CONST char *fmt _DOTS) -#else -asprintf(strp, fmt, va_alist) - char **strp; - _CONST char *fmt; - va_dcl -#endif + const char *fmt _DOTS) { int ret; va_list ap; @@ -88,12 +65,8 @@ asprintf(strp, fmt, va_alist) f._bf._base = f._p = NULL; f._bf._size = f._w = 0; f._file = -1; /* No file. */ -#ifdef _HAVE_STDC va_start (ap, fmt); -#else - va_start (ap); -#endif - ret = vfprintf (&f, fmt, ap); + ret = _vfprintf_r (_REENT, &f, fmt, ap); va_end (ap); if (ret >= 0) { @@ -103,4 +76,4 @@ asprintf(strp, fmt, va_alist) return (ret); } -#endif +#endif /* ! _REENT_ONLY */ |