source: trunk/src/emx/include/stdio.h@ 369

Last change on this file since 369 was 369, checked in by bird, 22 years ago

#427: Corrected va_list.

  • Property cvs2svn:cvs-rev set to 1.5
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 5.3 KB
Line 
1/* stdio.h (emx+gcc) */
2
3#ifndef _STDIO_H
4#define _STDIO_H
5
6#if defined (__cplusplus)
7extern "C" {
8#endif
9
10#include <sys/cdefs.h>
11#include <sys/_types.h>
12
13#if !defined(_VA_LIST_DECLARED) && !defined(_VA_LIST) /* bird: emx */
14#define _VA_LIST_DECLARED
15#define _VA_LIST /* bird: emx */
16typedef __va_list va_list;
17#endif
18
19#if !defined (_SIZE_T)
20#define _SIZE_T
21typedef unsigned long size_t;
22#endif
23
24#if !defined (NULL)
25#if defined (__cplusplus)
26#define NULL 0
27#else
28#define NULL ((void *)0)
29#endif
30#endif
31
32#if !defined (BUFSIZ)
33#define BUFSIZ 5120
34#endif
35
36#if !defined (_FILE_T)
37#define _FILE_T
38#define _FILE_MEMBERS_HAVE_UNDERSCORE
39struct _file2;
40struct _FILE
41{
42 char * _ptr;
43 char * _buffer;
44 int _rcount;
45 int _wcount;
46 int _handle;
47 int _flags;
48 int _buf_size;
49 int _tmpidx;
50 int _pid;
51 char _char_buf;
52 unsigned char _ungetc_count;
53 short _mbstate;
54 int (*_flush)(struct _FILE *, int);
55 struct _file2 *_more;
56};
57
58typedef struct _FILE FILE;
59
60extern FILE _streamv[];
61
62#define stdin (&_streamv[0])
63#define stdout (&_streamv[1])
64#define stderr (&_streamv[2])
65
66#endif
67
68#if !defined (SEEK_SET)
69#define SEEK_SET 0
70#define SEEK_CUR 1
71#define SEEK_END 2
72#endif
73
74#if !defined (EOF)
75#define EOF (-1)
76#endif
77
78#if !defined (_IOREAD)
79#define _IOREAD 0x01
80#define _IOWRT 0x02
81#define _IORW 0x04
82#define _IOEOF 0x08
83#define _IOERR 0x10
84#define _IOFBF 0x00
85#define _IOLBF 0x20
86#define _IONBF 0x40
87#endif
88
89#if !defined (FOPEN_MAX)
90#define FOPEN_MAX 14
91#endif
92
93#if !defined (FILENAME_MAX)
94#define FILENAME_MAX 260
95#endif
96
97#if !defined (TMP_MAX)
98#define TMP_MAX 1000
99#endif
100
101#if !defined (P_tmpdir)
102#define P_tmpdir "."
103#define L_tmpnam (sizeof (P_tmpdir) + 13)
104#endif
105
106#if !defined (L_cuserid)
107#define L_cuserid 9
108#endif
109
110#if !defined (_FPOS_T)
111#define _FPOS_T
112typedef struct
113{
114 long _pos;
115 long _reserved1;
116 short _mbstate;
117 short _reserved2;
118} fpos_t;
119#endif
120
121
122void clearerr (FILE *);
123int fclose (FILE *);
124int feof (FILE *);
125int ferror (FILE *);
126int fflush (FILE *);
127int fgetc (FILE *);
128int fgetpos (FILE *, fpos_t *);
129char *fgets (char *, int, FILE *);
130FILE *fopen (__const__ char *, __const__ char *);
131int fprintf (FILE *, __const__ char *, ...);
132int fputc (int, FILE *);
133int fputs (__const__ char *, FILE *);
134size_t fread (void *, size_t, size_t, FILE *);
135FILE *freopen (__const__ char *, __const__ char *, FILE *);
136int fscanf (FILE *, __const__ char *, ...);
137int fseek (FILE *, long, int);
138int fsetpos (FILE *, __const__ fpos_t *);
139long ftell (FILE *);
140size_t fwrite (__const__ void *, size_t, size_t, FILE *);
141int getchar (void);
142char *gets (char *);
143void perror (__const__ char *);
144int printf (__const__ char *, ...);
145int putchar (int);
146int puts (__const__ char *);
147int remove (__const__ char *);
148int rename (__const__ char *, __const__ char *);
149void rewind (FILE *);
150int scanf (__const__ char *, ...);
151int setbuf (FILE *, char *);
152int setvbuf (FILE *, char *, int, size_t);
153int sprintf (char *, __const__ char *, ...);
154int sscanf (__const__ char *, __const__ char *, ...);
155FILE *tmpfile (void);
156char *tmpnam (char *);
157int ungetc (int, FILE *);
158int vfprintf (FILE *, __const__ char *, va_list);
159int vprintf (__const__ char *, va_list);
160int vsprintf (char *, __const__ char *, va_list);
161
162int _fill (FILE *);
163int _flush (int, FILE *);
164int _rmtmp (void);
165
166extern __inline__ int feof (FILE *_s)
167{
168 return (_s->_flags & _IOEOF ? 1 : 0);
169}
170
171extern __inline__ int ferror (FILE *_s)
172{
173 return (_s->_flags & _IOERR ? 1 : 0);
174}
175
176#define getc(s) fgetc(s)
177#define putc(c,s) fputc(c,s)
178
179extern __inline__ int getchar (void) { return getc (stdin); }
180extern __inline__ int putchar (int _c) { return putc (_c, stdout); }
181
182
183#if !defined (__STRICT_ANSI__)
184
185/* POSIX.1 */
186
187/* ctermid() */
188FILE *fdopen (int, __const__ char *);
189int fileno (FILE *);
190
191extern __inline__ int fileno (FILE *_s) { return _s->_handle; }
192
193#endif
194
195
196#if !defined (__STRICT_ANSI__) && !defined (_POSIX_SOURCE)
197
198char *cuserid (char *);
199int getw (FILE *);
200int fcloseall (void);
201int fgetchar (void);
202int flushall (void);
203int fputchar (int);
204int pclose (FILE *);
205FILE *popen (__const__ char *, __const__ char *);
206int putw (int, FILE *);
207int setbuffer (FILE *, char *, size_t);
208int snprintf (char *, size_t, __const__ char *, ...);
209char *tempnam (__const__ char *, __const__ char *);
210int vfscanf (FILE *, __const__ char *, va_list);
211int vscanf (__const__ char *, va_list);
212int vsnprintf (char *, size_t, __const__ char *, va_list);
213int vsscanf (__const__ char *, __const__ char *, va_list);
214
215#endif
216
217
218#if (!defined (__STRICT_ANSI__) && !defined (_POSIX_SOURCE)) \
219 || defined (_WITH_UNDERSCORE)
220
221int _fcloseall (void);
222FILE *_fassign (FILE *, FILE *);
223FILE *_fdopen (int, __const__ char *);
224int _fgetchar (void);
225int _flushall (void);
226int _fputchar (int);
227int _fseek_hdr (FILE *);
228int _fsetmode (FILE *, __const__ char *);
229FILE *_fsopen (__const__ char *, __const__ char *, int);
230int _getw (FILE *);
231char *_mfclose (FILE *);
232FILE *_mfopen (char *, __const__ char *, size_t, int);
233int _pclose (FILE *);
234FILE *_popen (__const__ char *, __const__ char *);
235int _putw (int, FILE *);
236int _setbuffer (FILE *, char *, size_t);
237int _snprintf (char *, size_t, __const__ char *, ...);
238char *_tempnam (__const__ char *, __const__ char *);
239int _vsnprintf (char *, size_t, __const__ char *, va_list);
240
241#endif
242
243
244#if defined (__cplusplus)
245}
246#endif
247
248#endif /* not _STDIO_H */
Note: See TracBrowser for help on using the repository browser.