version 1.51, 2016/03/14 20:43:03 |
version 1.52, 2016/03/16 04:56:08 |
|
|
* define function versions in the C library. |
* define function versions in the C library. |
*/ |
*/ |
#define __sgetc(p) (--(p)->_r < 0 ? __srget(p) : (int)(*(p)->_p++)) |
#define __sgetc(p) (--(p)->_r < 0 ? __srget(p) : (int)(*(p)->_p++)) |
#if defined(__GNUC__) |
|
static __inline int __sputc(int _c, FILE *_p) { |
static __inline int __sputc(int _c, FILE *_p) { |
if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n')) |
if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n')) |
return (*_p->_p++ = _c); |
return (*_p->_p++ = _c); |
else |
else |
return (__swbuf(_c, _p)); |
return (__swbuf(_c, _p)); |
} |
} |
#else |
|
/* |
|
* This has been tuned to generate reasonable code on the vax using pcc. |
|
*/ |
|
#define __sputc(c, p) \ |
|
(--(p)->_w < 0 ? \ |
|
(p)->_w >= (p)->_lbfsize ? \ |
|
(*(p)->_p = (c)), *(p)->_p != '\n' ? \ |
|
(int)*(p)->_p++ : \ |
|
__swbuf('\n', p) : \ |
|
__swbuf((int)(c), p) : \ |
|
(*(p)->_p = (c), (int)*(p)->_p++)) |
|
#endif |
|
|
|
#define __sfeof(p) (((p)->_flags & __SEOF) != 0) |
#define __sfeof(p) (((p)->_flags & __SEOF) != 0) |
#define __sferror(p) (((p)->_flags & __SERR) != 0) |
#define __sferror(p) (((p)->_flags & __SERR) != 0) |