version 1.36, 2009/10/21 16:04:23 |
version 1.37, 2009/10/22 01:23:16 |
|
|
#define __SOFF 0x1000 /* set iff _offset is in fact correct */ |
#define __SOFF 0x1000 /* set iff _offset is in fact correct */ |
#define __SMOD 0x2000 /* true => fgetln modified _p text */ |
#define __SMOD 0x2000 /* true => fgetln modified _p text */ |
#define __SALC 0x4000 /* allocate string space dynamically */ |
#define __SALC 0x4000 /* allocate string space dynamically */ |
#define __SIGN 0x8000 /* ignore this file in _fwalk */ |
|
|
|
/* |
/* |
* The following three definitions are for ANSI C, which took them |
* The following three definitions are for ANSI C, which took them |
|
|
#endif |
#endif |
__END_DECLS |
__END_DECLS |
|
|
|
#ifndef _POSIX_THREADS |
|
# define flockfile(fp) /* nothing */ |
|
# define ftrylockfile(fp) (0) |
|
# define funlockfile(fp) /* nothing */ |
|
#endif |
|
|
#endif /* __BSD_VISIBLE || __POSIX_VISIBLE || __XPG_VISIBLE */ |
#endif /* __BSD_VISIBLE || __POSIX_VISIBLE || __XPG_VISIBLE */ |
|
|
/* |
/* |
|
|
#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) |
|
|
extern int __isthreaded; |
#define feof(p) __sfeof(p) |
|
#define ferror(p) __sferror(p) |
|
|
#define feof(p) (!__isthreaded ? __sfeof(p) : (feof)(p)) |
#ifndef _POSIX_THREADS |
#define ferror(p) (!__isthreaded ? __sferror(p) : (ferror)(p)) |
#define clearerr(p) __sclearerr(p) |
#define clearerr(p) (!__isthreaded ? __sclearerr(p) : (clearerr)(p)) |
#endif |
|
|
#if __POSIX_VISIBLE |
#if __POSIX_VISIBLE |
#define fileno(p) (!__isthreaded ? __sfileno(p) : (fileno)(p)) |
#define fileno(p) __sfileno(p) |
#endif |
#endif |
|
|
#define getc(fp) (!__isthreaded ? __sgetc(fp) : (getc)(fp)) |
|
|
|
#if __BSD_VISIBLE |
|
/* |
|
* The macro implementations of putc and putc_unlocked are not |
|
* fully POSIX compliant; they do not set errno on failure |
|
*/ |
|
#define putc(x, fp) (!__isthreaded ? __sputc(x, fp) : (putc)(x, fp)) |
|
#endif /* __BSD_VISIBLE */ |
|
|
|
#ifndef lint |
#ifndef lint |
#if __POSIX_VISIBLE >= 199506 |
#ifndef _POSIX_THREADS |
|
#define getc(fp) __sgetc(fp) |
|
#endif /* _POSIX_THREADS */ |
#define getc_unlocked(fp) __sgetc(fp) |
#define getc_unlocked(fp) __sgetc(fp) |
/* |
/* |
* The macro implementations of putc and putc_unlocked are not |
* The macro implementations of putc and putc_unlocked are not |
* fully POSIX compliant; they do not set errno on failure |
* fully POSIX compliant; they do not set errno on failure |
*/ |
*/ |
#if __BSD_VISIBLE |
#if __BSD_VISIBLE |
|
#ifndef _POSIX_THREADS |
|
#define putc(x, fp) __sputc(x, fp) |
|
#endif /* _POSIX_THREADS */ |
#define putc_unlocked(x, fp) __sputc(x, fp) |
#define putc_unlocked(x, fp) __sputc(x, fp) |
#endif /* __BSD_VISIBLE */ |
#endif /* __BSD_VISIBLE */ |
#endif /* __POSIX_VISIBLE >= 199506 */ |
|
#endif /* lint */ |
#endif /* lint */ |
|
|
#define getchar() getc(stdin) |
#define getchar() getc(stdin) |