2006-09-26 Jeff Johnston <jjohnstn@redhat.com>

* libc/include/stdio.h[_REENT_SMALL]: Do not allow macros
        for clearerr, feof, or fileno.
        * libc/include/sys/reent.h[_REENT_SMALL](struct _reent): Change
        the dummy std stream scheme to use pointers to const external
        fake files, one for each standard stream.
        * libc/stdio/local.h (CHECK_INIT): Change to take a file pointer
        argument.  For _REENT_SMALL, reset the file pointer if it
        matches one of the fake std stream pointers.
        * libc/stdio/clearerr.c: Fix CHECK_INIT macro to add file pointer
        argument.
        * libc/stdio/fclose.c: Ditto.
        * libc/stdio/feof.c: Ditto.
        * libc/stdio/ferror.c: Ditto.
        * libc/stdio/fflush.c: Ditto.
        * libc/stdio/fgetc.c: Ditto.
        * libc/stdio/fgets.c: Ditto.
        * libc/stdio/fileno.c: Ditto.
        * libc/stdio/findfp.c: Ditto.
        * libc/stdio/fputc.c: Ditto.
        * libc/stdio/fputs.c: Ditto.
        * libc/stdio/fread.c: Ditto.
        * libc/stdio/freopen.c: Ditto.
        * libc/stdio/fseek.c: Ditto.
        * libc/stdio/ftell.c: Ditto.
        * libc/stdio/fwrite.c: Ditto.
        * libc/stdio/getc.c: Ditto.
        * libc/stdio/getdelim.c: Ditto.
        * libc/stdio/putc.c: Ditto.
        * libc/stdio/refill.c: Ditto.
        * libc/stdio/setvbuf.c: Ditto.
        * libc/stdio/ungetc.c: Ditto.
        * libc/stdio/vfprintf.c: Ditto.
        * libc/stdio/vfscanf.c: Ditto.
        * libc/stdio/wbuf.c: Ditto.: Ditto.
        * libc/stdio/wsetup.c: Ditto.
        * libc/stdio64/freopen64.c: Ditto.
        * libc/stdio64/fseeko64.c: Ditto.
        * libc/stdio64/ftello64.c: Ditto.
        * libc/machine/powerpc/vfprintf.c: Ditto.
        * libc/machine/powerpc/vfscanf.c: Ditto.
This commit is contained in:
Jeff Johnston 2006-09-26 21:22:19 +00:00
parent 1aeca89244
commit e5e148d15b
35 changed files with 131 additions and 58 deletions

View File

@ -1,3 +1,46 @@
2006-09-26 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/stdio.h[_REENT_SMALL]: Do not allow macros
for clearerr, feof, or fileno.
* libc/include/sys/reent.h[_REENT_SMALL](struct _reent): Change
the dummy std stream scheme to use pointers to const external
fake files, one for each standard stream.
* libc/stdio/local.h (CHECK_INIT): Change to take a file pointer
argument. For _REENT_SMALL, reset the file pointer if it
matches one of the fake std stream pointers.
* libc/stdio/clearerr.c: Fix CHECK_INIT macro to add file pointer
argument.
* libc/stdio/fclose.c: Ditto.
* libc/stdio/feof.c: Ditto.
* libc/stdio/ferror.c: Ditto.
* libc/stdio/fflush.c: Ditto.
* libc/stdio/fgetc.c: Ditto.
* libc/stdio/fgets.c: Ditto.
* libc/stdio/fileno.c: Ditto.
* libc/stdio/findfp.c: Ditto.
* libc/stdio/fputc.c: Ditto.
* libc/stdio/fputs.c: Ditto.
* libc/stdio/fread.c: Ditto.
* libc/stdio/freopen.c: Ditto.
* libc/stdio/fseek.c: Ditto.
* libc/stdio/ftell.c: Ditto.
* libc/stdio/fwrite.c: Ditto.
* libc/stdio/getc.c: Ditto.
* libc/stdio/getdelim.c: Ditto.
* libc/stdio/putc.c: Ditto.
* libc/stdio/refill.c: Ditto.
* libc/stdio/setvbuf.c: Ditto.
* libc/stdio/ungetc.c: Ditto.
* libc/stdio/vfprintf.c: Ditto.
* libc/stdio/vfscanf.c: Ditto.
* libc/stdio/wbuf.c: Ditto.: Ditto.
* libc/stdio/wsetup.c: Ditto.
* libc/stdio64/freopen64.c: Ditto.
* libc/stdio64/fseeko64.c: Ditto.
* libc/stdio64/ftello64.c: Ditto.
* libc/machine/powerpc/vfprintf.c: Ditto.
* libc/machine/powerpc/vfscanf.c: Ditto.
2006-09-22 Paul Brook <paul@codesourcery.com> 2006-09-22 Paul Brook <paul@codesourcery.com>
* libc/include/sys/reent.h: Define and use __reent_assert. * libc/include/sys/reent.h: Define and use __reent_assert.

View File

@ -455,9 +455,11 @@ static __inline int __sputc_r(struct _reent *_ptr, int _c, FILE *_p) {
#define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF))) #define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF)))
#define __sfileno(p) ((p)->_file) #define __sfileno(p) ((p)->_file)
#ifndef _REENT_SMALL
#define feof(p) __sfeof(p) #define feof(p) __sfeof(p)
#define ferror(p) __sferror(p) #define ferror(p) __sferror(p)
#define clearerr(p) __sclearerr(p) #define clearerr(p) __sclearerr(p)
#endif
#if 0 /*ndef __STRICT_ANSI__ - FIXME: must initialize stdio first, use fn */ #if 0 /*ndef __STRICT_ANSI__ - FIXME: must initialize stdio first, use fn */
#define fileno(p) __sfileno(p) #define fileno(p) __sfileno(p)

View File

@ -13,6 +13,8 @@ extern "C" {
#include <_ansi.h> #include <_ansi.h>
#include <sys/_types.h> #include <sys/_types.h>
#define _NULL 0
#ifndef __Long #ifndef __Long
#if __LONG_MAX__ == 2147483647L #if __LONG_MAX__ == 2147483647L
#define __Long long #define __Long long
@ -157,8 +159,8 @@ struct __sFILE_fake {
struct _reent *_data; struct _reent *_data;
}; };
/* CHECK_INIT() comes from stdio/local.h; be sure to include that. */ /* CHECK_STD_INIT() comes from stdio/local.h; be sure to include that. */
# define _REENT_SMALL_CHECK_INIT(ptr) CHECK_INIT(ptr) # define _REENT_SMALL_CHECK_INIT(ptr) CHECK_STD_INIT(ptr)
#else #else
# define _REENT_SMALL_CHECK_INIT(ptr) /* nothing */ # define _REENT_SMALL_CHECK_INIT(ptr) /* nothing */
#endif #endif
@ -382,15 +384,18 @@ struct _reent
struct _glue __sglue; /* root of glue chain */ struct _glue __sglue; /* root of glue chain */
__FILE *__sf; /* file descriptors */ __FILE *__sf; /* file descriptors */
struct __sFILE_fake __sf_fake; /* fake initial stdin/out/err */
struct _misc_reent *_misc; /* strtok, multibyte states */ struct _misc_reent *_misc; /* strtok, multibyte states */
char *_signal_buf; /* strsignal */ char *_signal_buf; /* strsignal */
}; };
extern const struct __sFILE_fake __sf_fake_stdin;
extern const struct __sFILE_fake __sf_fake_stdout;
extern const struct __sFILE_fake __sf_fake_stderr;
#define _REENT_INIT(var) \ #define _REENT_INIT(var) \
{ (__FILE *)&var.__sf_fake, \ { (__FILE *)&__sf_fake_stdin, \
(__FILE *)&var.__sf_fake, \ (__FILE *)&__sf_fake_stdout, \
(__FILE *)&var.__sf_fake, \ (__FILE *)&__sf_fake_stderr, \
0, \ 0, \
0, \ 0, \
_NULL, \ _NULL, \
@ -410,15 +415,14 @@ struct _reent
{_NULL, 0, {_NULL}, _NULL}, \ {_NULL, 0, {_NULL}, _NULL}, \
{_NULL, 0, _NULL}, \ {_NULL, 0, _NULL}, \
_NULL, \ _NULL, \
{_NULL, 0, 0, 0, 0, {_NULL, 0}, 0, _NULL}, \
_NULL, \ _NULL, \
_NULL \ _NULL \
} }
#define _REENT_INIT_PTR(var) \ #define _REENT_INIT_PTR(var) \
{ var->_stdin = (__FILE *)&var->__sf_fake; \ { var->_stdin = (__FILE *)&__sf_fake_stdin; \
var->_stdout = (__FILE *)&var->__sf_fake; \ var->_stdout = (__FILE *)&__sf_fake_stdout; \
var->_stderr = (__FILE *)&var->__sf_fake; \ var->_stderr = (__FILE *)&__sf_fake_stderr; \
var->_errno = 0; \ var->_errno = 0; \
var->_inc = 0; \ var->_inc = 0; \
var->_emergency = _NULL; \ var->_emergency = _NULL; \
@ -443,15 +447,6 @@ struct _reent
var->__sglue._niobs = 0; \ var->__sglue._niobs = 0; \
var->__sglue._iobs = _NULL; \ var->__sglue._iobs = _NULL; \
var->__sf = 0; \ var->__sf = 0; \
var->__sf_fake._p = _NULL; \
var->__sf_fake._r = 0; \
var->__sf_fake._w = 0; \
var->__sf_fake._flags = 0; \
var->__sf_fake._file = 0; \
var->__sf_fake._bf._base = _NULL; \
var->__sf_fake._bf._size = 0; \
var->__sf_fake._lbfsize = 0; \
var->__sf_fake._data = _NULL; \
var->_misc = _NULL; \ var->_misc = _NULL; \
var->_signal_buf = _NULL; \ var->_signal_buf = _NULL; \
} }
@ -786,8 +781,6 @@ struct _reent
#endif /* !_REENT_SMALL */ #endif /* !_REENT_SMALL */
#define _NULL 0
/* /*
* All references to struct _reent are via this pointer. * All references to struct _reent are via this pointer.
* Internally, newlib routines that need to reference it should use _REENT. * Internally, newlib routines that need to reference it should use _REENT.

View File

@ -321,7 +321,7 @@ _DEFUN (VFPRINTF, (fp, fmt0, ap),
_CONST char *fmt0 _AND _CONST char *fmt0 _AND
va_list ap) va_list ap)
{ {
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
return _VFPRINTF_R (_REENT, fp, fmt0, ap); return _VFPRINTF_R (_REENT, fp, fmt0, ap);
} }
@ -875,7 +875,9 @@ reswitch: switch (ch) {
if (prec || flags & ALT) if (prec || flags & ALT)
size += prec + 1; size += prec + 1;
} else /* "0.X" */ } else /* "0.X" */
size = prec + 2; size = (prec || flags & ALT)
? prec + 2
: 1;
} else if (expt >= ndig) { /* fixed g fmt */ } else if (expt >= ndig) { /* fixed g fmt */
size = expt; size = expt;
if (flags & ALT) if (flags & ALT)

View File

@ -224,7 +224,7 @@ _DEFUN (vfscanf, (fp, fmt, ap),
_CONST char *fmt _AND _CONST char *fmt _AND
va_list ap) va_list ap)
{ {
CHECK_INIT(_REENT); CHECK_INIT(_REENT, fp);
return __svfscanf_r (_REENT, fp, fmt, ap); return __svfscanf_r (_REENT, fp, fmt, ap);
} }

View File

@ -64,7 +64,7 @@ _VOID
_DEFUN(clearerr, (fp), _DEFUN(clearerr, (fp),
FILE * fp) FILE * fp)
{ {
CHECK_INIT(_REENT); CHECK_INIT(_REENT, fp);
_flockfile (fp); _flockfile (fp);
__sclearerr (fp); __sclearerr (fp);
_funlockfile (fp); _funlockfile (fp);

View File

@ -76,7 +76,7 @@ _DEFUN(_fclose_r, (rptr, fp),
__sfp_lock_acquire (); __sfp_lock_acquire ();
CHECK_INIT (rptr); CHECK_INIT (rptr, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -57,7 +57,7 @@ _DEFUN(feof, (fp),
FILE * fp) FILE * fp)
{ {
int result; int result;
CHECK_INIT(_REENT); CHECK_INIT(_REENT, fp);
_flockfile (fp); _flockfile (fp);
result = __sfeof (fp); result = __sfeof (fp);
_funlockfile (fp); _funlockfile (fp);

View File

@ -66,7 +66,7 @@ _DEFUN(ferror, (fp),
FILE * fp) FILE * fp)
{ {
int result; int result;
CHECK_INIT(_REENT); CHECK_INIT(_REENT, fp);
_flockfile (fp); _flockfile (fp);
result = __sferror (fp); result = __sferror (fp);
_funlockfile (fp); _funlockfile (fp);

View File

@ -67,7 +67,7 @@ _DEFUN(fflush, (fp),
if (fp == NULL) if (fp == NULL)
return _fwalk (_GLOBAL_REENT, fflush); return _fwalk (_GLOBAL_REENT, fflush);
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -77,7 +77,7 @@ _DEFUN(_fgetc_r, (ptr, fp),
FILE * fp) FILE * fp)
{ {
int result; int result;
CHECK_INIT(ptr); CHECK_INIT(ptr, fp);
_flockfile (fp); _flockfile (fp);
result = __sgetc_r (ptr, fp); result = __sgetc_r (ptr, fp);
_funlockfile (fp); _funlockfile (fp);
@ -92,7 +92,7 @@ _DEFUN(fgetc, (fp),
{ {
#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__) #if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
int result; int result;
CHECK_INIT(_REENT); CHECK_INIT(_REENT, fp);
_flockfile (fp); _flockfile (fp);
result = __sgetc_r (_REENT, fp); result = __sgetc_r (_REENT, fp);
_funlockfile (fp); _funlockfile (fp);

View File

@ -96,7 +96,7 @@ _DEFUN(_fgets_r, (ptr, buf, n, fp),
s = buf; s = buf;
CHECK_INIT(ptr); CHECK_INIT(ptr, fp);
_flockfile (fp); _flockfile (fp);
#ifdef __SCLE #ifdef __SCLE

View File

@ -54,7 +54,7 @@ _DEFUN(fileno, (f),
FILE * f) FILE * f)
{ {
int result; int result;
CHECK_INIT (_REENT); CHECK_INIT (_REENT, f);
_flockfile (f); _flockfile (f);
result = __sfileno (f); result = __sfileno (f);
_funlockfile (f); _funlockfile (f);

View File

@ -26,6 +26,15 @@
#include <sys/lock.h> #include <sys/lock.h>
#include "local.h" #include "local.h"
#ifdef _REENT_SMALL
const struct __sFILE_fake __sf_fake_stdin =
{_NULL, 0, 0, 0, 0, {_NULL, 0}, 0, _NULL};
const struct __sFILE_fake __sf_fake_stdout =
{_NULL, 0, 0, 0, 0, {_NULL, 0}, 0, _NULL};
const struct __sFILE_fake __sf_fake_stderr =
{_NULL, 0, 0, 0, 0, {_NULL, 0}, 0, _NULL};
#endif
static _VOID static _VOID
_DEFUN(std, (ptr, flags, file, data), _DEFUN(std, (ptr, flags, file, data),
FILE *ptr _AND FILE *ptr _AND

View File

@ -82,7 +82,7 @@ _DEFUN(_fputc_r, (ptr, ch, file),
FILE * file) FILE * file)
{ {
int result; int result;
CHECK_INIT(ptr); CHECK_INIT(ptr, file);
_flockfile (file); _flockfile (file);
result = _putc_r (ptr, ch, file); result = _putc_r (ptr, ch, file);
_funlockfile (file); _funlockfile (file);
@ -97,7 +97,7 @@ _DEFUN(fputc, (ch, file),
{ {
#if !defined(__OPTIMIZE_SIZE__) && !defined(PREFER_SIZE_OVER_SPEED) #if !defined(__OPTIMIZE_SIZE__) && !defined(PREFER_SIZE_OVER_SPEED)
int result; int result;
CHECK_INIT(_REENT); CHECK_INIT(_REENT, file);
_flockfile (file); _flockfile (file);
result = _putc_r (_REENT, ch, file); result = _putc_r (_REENT, ch, file);
_funlockfile (file); _funlockfile (file);

View File

@ -86,7 +86,7 @@ _DEFUN(_fputs_r, (ptr, s, fp),
uio.uio_iov = &iov; uio.uio_iov = &iov;
uio.uio_iovcnt = 1; uio.uio_iovcnt = 1;
CHECK_INIT(ptr); CHECK_INIT(ptr, fp);
_flockfile (fp); _flockfile (fp);
result = __sfvwrite_r (ptr, fp, &uio); result = __sfvwrite_r (ptr, fp, &uio);

View File

@ -145,7 +145,7 @@ _DEFUN(_fread_r, (ptr, buf, size, count, fp),
if ((resid = count * size) == 0) if ((resid = count * size) == 0)
return 0; return 0;
CHECK_INIT(ptr); CHECK_INIT(ptr, fp);
_flockfile (fp); _flockfile (fp);
if (fp->_r < 0) if (fp->_r < 0)

View File

@ -99,7 +99,7 @@ _DEFUN(_freopen_r, (ptr, file, mode, fp),
__sfp_lock_acquire (); __sfp_lock_acquire ();
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -131,7 +131,7 @@ _DEFUN(_fseek_r, (ptr, fp, offset, whence),
/* Make sure stdio is set up. */ /* Make sure stdio is set up. */
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -107,7 +107,7 @@ _DEFUN(_ftell_r, (ptr, fp),
/* Ensure stdio is set up. */ /* Ensure stdio is set up. */
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -117,7 +117,7 @@ _DEFUN(_fwrite_r, (ptr, buf, size, count, fp),
* generally slow and since this occurs whenever size==0. * generally slow and since this occurs whenever size==0.
*/ */
CHECK_INIT(ptr); CHECK_INIT(ptr, fp);
_flockfile (fp); _flockfile (fp);
if (__sfvwrite_r (ptr, fp, &uio) == 0) if (__sfvwrite_r (ptr, fp, &uio) == 0)

View File

@ -91,7 +91,7 @@ _DEFUN(_getc_r, (ptr, fp),
register FILE *fp) register FILE *fp)
{ {
int result; int result;
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile (fp); _flockfile (fp);
result = __sgetc_r (ptr, fp); result = __sgetc_r (ptr, fp);
_funlockfile (fp); _funlockfile (fp);
@ -105,7 +105,7 @@ _DEFUN(getc, (fp),
register FILE *fp) register FILE *fp)
{ {
int result; int result;
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
_flockfile (fp); _flockfile (fp);
result = __sgetc_r (_REENT, fp); result = __sgetc_r (_REENT, fp);
_funlockfile (fp); _funlockfile (fp);

View File

@ -79,7 +79,7 @@ _DEFUN(__getdelim, (bufptr, n, delim, fp),
*n = DEFAULT_LINE_SIZE; *n = DEFAULT_LINE_SIZE;
} }
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -48,7 +48,31 @@ struct _glue * _EXFUN(__sfmoreglue,(struct _reent *,int n));
/* Called by the main entry point fns to ensure stdio has been initialized. */ /* Called by the main entry point fns to ensure stdio has been initialized. */
#define CHECK_INIT(ptr) \ #ifdef _REENT_SMALL
#define CHECK_INIT(ptr, fp) \
do \
{ \
if ((ptr) && !(ptr)->__sdidinit) \
__sinit (ptr); \
if ((fp) == (FILE *)&__sf_fake_stdin) \
(fp) = stdin; \
else if ((fp) == (FILE *)&__sf_fake_stdout) \
(fp) = stdout; \
else if ((fp) == (FILE *)&__sf_fake_stderr) \
(fp) = stderr; \
} \
while (0)
#else /* !_REENT_SMALL */
#define CHECK_INIT(ptr, fp) \
do \
{ \
if ((ptr) && !(ptr)->__sdidinit) \
__sinit (ptr); \
} \
while (0)
#endif /* !_REENT_SMALL */
#define CHECK_STD_INIT(ptr) \
do \ do \
{ \ { \
if ((ptr) && !(ptr)->__sdidinit) \ if ((ptr) && !(ptr)->__sdidinit) \

View File

@ -96,7 +96,7 @@ _DEFUN(_putc_r, (ptr, c, fp),
register FILE *fp) register FILE *fp)
{ {
int result; int result;
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile (fp); _flockfile (fp);
result = __sputc_r (ptr, c, fp); result = __sputc_r (ptr, c, fp);
_funlockfile (fp); _funlockfile (fp);
@ -111,7 +111,7 @@ _DEFUN(putc, (c, fp),
{ {
#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__) #if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
int result; int result;
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
_flockfile (fp); _flockfile (fp);
result = __sputc_r (_REENT, c, fp); result = __sputc_r (_REENT, c, fp);
_funlockfile (fp); _funlockfile (fp);

View File

@ -43,7 +43,7 @@ _DEFUN(__srefill_r, (ptr, fp),
{ {
/* make sure stdio is set up */ /* make sure stdio is set up */
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
fp->_r = 0; /* largely a convenience for callers */ fp->_r = 0; /* largely a convenience for callers */

View File

@ -104,7 +104,7 @@ _DEFUN(setvbuf, (fp, buf, mode, size),
{ {
int ret = 0; int ret = 0;
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -81,7 +81,7 @@ _DEFUN(_ungetc_r, (rptr, c, fp),
??? Might be able to remove this as some other stdio routine should ??? Might be able to remove this as some other stdio routine should
have already been called to get the char we are un-getting. */ have already been called to get the char we are un-getting. */
CHECK_INIT (rptr); CHECK_INIT (rptr, fp);
_flockfile (fp); _flockfile (fp);

View File

@ -540,7 +540,7 @@ _DEFUN(_VFPRINTF_R, (data, fp, fmt0, ap),
(u_long)GET_ARG (N, ap, u_int)) (u_long)GET_ARG (N, ap, u_int))
#endif #endif
CHECK_INIT (data); CHECK_INIT (data, fp);
_flockfile (fp); _flockfile (fp);
/* sorry, fprintf(read_only_file, "") returns EOF, not 0 */ /* sorry, fprintf(read_only_file, "") returns EOF, not 0 */

View File

@ -231,7 +231,7 @@ _DEFUN(VFSCANF, (fp, fmt, ap),
_CONST char *fmt _AND _CONST char *fmt _AND
va_list ap) va_list ap)
{ {
CHECK_INIT(_REENT); CHECK_INIT(_REENT, fp);
return __SVFSCANF_R (_REENT, fp, fmt, ap); return __SVFSCANF_R (_REENT, fp, fmt, ap);
} }
@ -253,7 +253,7 @@ _DEFUN(_VFSCANF_R, (data, fp, fmt, ap),
_CONST char *fmt _AND _CONST char *fmt _AND
va_list ap) va_list ap)
{ {
CHECK_INIT(data); CHECK_INIT(data, fp);
return __SVFSCANF_R (data, fp, fmt, ap); return __SVFSCANF_R (data, fp, fmt, ap);
} }

View File

@ -42,7 +42,7 @@ _DEFUN(__swbuf_r, (ptr, c, fp),
/* Ensure stdio has been initialized. */ /* Ensure stdio has been initialized. */
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
/* /*
* In case we cannot write, or longjmp takes us out early, * In case we cannot write, or longjmp takes us out early,

View File

@ -34,7 +34,7 @@ _DEFUN(__swsetup, (fp),
{ {
/* Make sure stdio is set up. */ /* Make sure stdio is set up. */
CHECK_INIT (_REENT); CHECK_INIT (_REENT, fp);
/* /*
* If we are not writing, we had better be reading and writing. * If we are not writing, we had better be reading and writing.

View File

@ -99,7 +99,7 @@ _DEFUN (_freopen64_r, (ptr, file, mode, fp),
__sfp_lock_acquire (); __sfp_lock_acquire ();
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile(fp); _flockfile(fp);

View File

@ -113,7 +113,7 @@ _DEFUN (_fseeko64_r, (ptr, fp, offset, whence),
/* Make sure stdio is set up. */ /* Make sure stdio is set up. */
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile(fp); _flockfile(fp);

View File

@ -93,7 +93,7 @@ _DEFUN (_ftello64_r, (ptr, fp),
/* Ensure stdio is set up. */ /* Ensure stdio is set up. */
CHECK_INIT (ptr); CHECK_INIT (ptr, fp);
_flockfile(fp); _flockfile(fp);