vfscanf in newlib
J. Johnston
jjohnstn@cygnus.com
Tue Apr 24 15:14:00 GMT 2001
"Charles S. Wilson" wrote:
>
> Did the following patch get applied to CVS ? If not, why not? (I don't
> think Robert Collins' message (partially quoted below) was intended as
> an argument against it, especially given his second message (also
> quoted)) It's also not clear whether Robert was commenting on my
> *original* changes which Jeff later modified and accepted, or the newer
> changes against Jeff's update.
>
Sorry Charles. I missed the patch in your previous note. It is now applied.
-- Jeff J.
>
> Charles Wilson wrote:
>
> > ChangeLog
> >
> > Fri Apr 20 23:48:00 2001 Charles Wilson <cwilson@ece.gatech.edu
> >
> > * libc/stdio/vprintf.c (vprintf): fix signature to use _DEFUN
> > * libc/stdio/vprintf.c (_vprintf_r): new function
> > * libc/stdio/vsnprintf.c (vsnprintf): fix signature to use _DEFUN
> > * libc/stdio/vsnprintf.c (_vsnprintf_r): fix signature to use
> > _DEFUN, and call _vfprintf_r, not vfprintf.
> > * libc/stdio/vsprintf.c (vsprintf.c): fix signature to use _DEFUN
> > * libc/stdio/vsnprintf.c (_vsprintf_r): fix signature to use
> > _DEFUN, and call _vfprintf_r, not vfprintf.
> >
>
> > Index: libc/stdio/vprintf.c
> > ===================================================================
> > RCS file: /cvs/src/src/newlib/libc/stdio/vprintf.c,v
> > retrieving revision 1.1.1.1
> > diff -u -r1.1.1.1 old/libc/stdio/vprintf.c new/libc/stdio/vprintf.c
> > --- old/libc/stdio/vprintf.c 2000/02/17 19:39:47 1.1.1.1
> > +++ new/libc/stdio/vprintf.c 2001/04/21 03:43:55
> > @@ -27,9 +27,18 @@
> > #endif
> >
> > int
> > -vprintf (fmt, ap)
> > - char _CONST *fmt;
> > - va_list ap;
> > +_DEFUN (vprintf, (fmt, ap),
> > + _CONST char *fmt _AND
> > + va_list ap)
> > {
> > return vfprintf (stdout, fmt, ap);
> > +}
> > +
> > +int
> > +_DEFUN (_vprintf_r, (ptr, fmt, ap),
> > + struct _reent *ptr _AND
> > + _CONST char *fmt _AND
> > + va_list ap)
> > +{
> > + return _vfprintf_r (ptr, _stdout_r (ptr), fmt, ap);
> > }
> > Index: libc/stdio/vsnprintf.c
> > ===================================================================
> > RCS file: /cvs/src/src/newlib/libc/stdio/vsnprintf.c,v
> > retrieving revision 1.2
> > diff -u -r1.2 old/libc/stdio/vsnprintf.c new/libc/stdio/vsnprintf.c
> > --- old/libc/stdio/vsnprintf.c 2000/08/08 19:01:02 1.2
> > +++ new/libc/stdio/vsnprintf.c 2001/04/21 03:43:55
> > @@ -34,11 +34,11 @@
> > #endif
> >
> > int
> > -vsnprintf (str, size, fmt, ap)
> > - char *str;
> > - size_t size;
> > - char _CONST *fmt;
> > - va_list ap;
> > +_DEFUN (vsnprintf, (str, size, fmt, ap),
> > + char *str _AND
> > + size_t size _AND
> > + _CONST char *fmt _AND
> > + va_list ap)
> > {
> > int ret;
> > FILE f;
> > @@ -54,12 +54,12 @@
> > }
> >
> > int
> > -vsnprintf_r (ptr, str, size, fmt, ap)
> > - struct _reent *ptr;
> > - char *str;
> > - size_t size;
> > - char _CONST *fmt;
> > - va_list ap;
> > +_DEFUN (_vsnprintf_r, (ptr, str, size, fmt, ap),
> > + struct _reent *ptr _AND
> > + char *str _AND
> > + size_t size _AND
> > + _CONST char *fmt _AND
> > + va_list ap)
> > {
> > int ret;
> > FILE f;
> > @@ -68,7 +68,7 @@
> > f._bf._base = f._p = (unsigned char *) str;
> > f._bf._size = f._w = (size > 0 ? size - 1 : 0);
> > f._data = ptr;
> > - ret = vfprintf (&f, fmt, ap);
> > + ret = _vfprintf_r (ptr, &f, fmt, ap);
> > if (size > 0)
> > *f._p = 0;
> > return ret;
> > Index: libc/stdio/vsprintf.c
> > ===================================================================
> > RCS file: /cvs/src/src/newlib/libc/stdio/vsprintf.c,v
> > retrieving revision 1.1.1.1
> > diff -u -r1.1.1.1 old/libc/stdio/vsprintf.c new/libc/stdio/vsprintf.c
> > --- old/libc/stdio/vsprintf.c 2000/02/17 19:39:47 1.1.1.1
> > +++ new/libc/stdio/vsprintf.c 2001/04/21 03:43:57
> > @@ -32,10 +32,10 @@
> > #endif
> >
> > int
> > -vsprintf (str, fmt, ap)
> > - char *str;
> > - char _CONST *fmt;
> > - va_list ap;
> > +_DEFUN (vsprintf, (str, fmt, ap),
> > + char *str _AND
> > + _CONST char *fmt _AND
> > + va_list ap)
> > {
> > int ret;
> > FILE f;
> > @@ -50,11 +50,11 @@
> > }
> >
> > int
> > -vsprintf_r (ptr, str, fmt, ap)
> > - struct _reent *ptr;
> > - char *str;
> > - char _CONST *fmt;
> > - va_list ap;
> > +_DEFUN (_vsprintf_r, (ptr, str, fmt, ap),
> > + struct _reent *ptr _AND
> > + char *str _AND
> > + _CONST char *fmt _AND
> > + va_list ap)
> > {
> > int ret;
> > FILE f;
> > @@ -63,7 +63,7 @@
> > f._bf._base = f._p = (unsigned char *) str;
> > f._bf._size = f._w = INT_MAX;
> > f._data = ptr;
> > - ret = vfprintf (&f, fmt, ap);
> > + ret = _vfprintf_r (ptr, &f, fmt, ap);
> > *f._p = 0;
> > return ret;
> > }
More information about the Newlib
mailing list