X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/505fc81fd7712055ec1cd65a2ad86f54a4dce28e..a53426fff2b78ebc6a82a4869810f44d7d5204c5:/usr/src/include/stdio.h diff --git a/usr/src/include/stdio.h b/usr/src/include/stdio.h index 90dd4a856a..3a9117ae4d 100644 --- a/usr/src/include/stdio.h +++ b/usr/src/include/stdio.h @@ -1,16 +1,21 @@ -/* stdio.h 1.8 84/11/12 */ -#define BUFSIZ 1024 -#define _NFILE 20 +/* + * Copyright (c) 1980 Regents of the University of California. + * All rights reserved. The Berkeley software License Agreement + * specifies the terms and conditions for redistribution. + * + * @(#)stdio.h 5.4 (Berkeley) %G% + */ + # ifndef FILE +#define BUFSIZ 1024 extern struct _iobuf { int _cnt; - char *_ptr; - char *_base; + char *_ptr; /* should be unsigned char */ + char *_base; /* ditto */ int _bufsiz; short _flag; - char _file; -} _iob[_NFILE]; -# endif + char _file; /* should be short */ +} _iob[]; #define _IOREAD 01 #define _IOWRT 02 @@ -28,22 +33,31 @@ extern struct _iobuf { #define stdin (&_iob[0]) #define stdout (&_iob[1]) #define stderr (&_iob[2]) -#define getc(p) (--(p)->_cnt>=0? *(p)->_ptr++&0377:_filbuf(p)) +#ifndef lint +#define getc(p) (--(p)->_cnt>=0? (int)(*(unsigned char *)(p)->_ptr++):_filbuf(p)) +#endif not lint #define getchar() getc(stdin) -#define putc(x, p) (--(p)->_cnt >= 0 || ((p)->_flag & _IOLBF) &&\ - -(p)->_cnt <= (p)->_bufsiz && (x) != '\n' ?\ - (int)(*(p)->_ptr++ = (unsigned)(x)) : _flsbuf((unsigned)(x), p)) +#ifndef lint +#define putc(x, p) (--(p)->_cnt >= 0 ?\ + (int)(*(unsigned char *)(p)->_ptr++ = (x)) :\ + (((p)->_flag & _IOLBF) && -(p)->_cnt < (p)->_bufsiz ?\ + ((*(p)->_ptr = (x)) != '\n' ?\ + (int)(*(unsigned char *)(p)->_ptr++) :\ + _flsbuf(*(unsigned char *)(p)->_ptr, p)) :\ + _flsbuf((unsigned char)(x), p))) +#endif not lint #define putchar(x) putc(x,stdout) #define feof(p) (((p)->_flag&_IOEOF)!=0) #define ferror(p) (((p)->_flag&_IOERR)!=0) #define fileno(p) ((p)->_file) +#define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF)) FILE *fopen(); FILE *fdopen(); FILE *freopen(); +FILE *popen(); long ftell(); char *fgets(); char *gets(); -#ifdef vax -char *sprintf(); /* too painful to do right */ -#endif +int sprintf(); /* here until everyone does it right */ +# endif