1macro-int-constant BUFSIZ >= 256
2macro-int-constant FILENAME_MAX
3macro-int-constant FOPEN_MAX >= 8
4
5macro-int-constant _IOFBF
6macro-int-constant _IOLBF
7macro-int-constant _IONBF
8
9#if !defined ISO && !defined ISO99 && !defined ISO11
10constant L_ctermid
11# if !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008
12#  ifdef POSIX
13optional-constant L_cuserid
14#  else
15constant L_cuserid
16#  endif
17# endif
18#endif
19macro-int-constant L_tmpnam
20
21macro-int-constant SEEK_CUR
22macro-int-constant SEEK_END
23macro-int-constant SEEK_SET
24
25macro-int-constant TMP_MAX >= 10000
26
27macro-int-constant EOF < 0
28
29macro-constant NULL == 0
30
31#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
32constant P_tmpdir
33#endif
34
35macro stdin {FILE *}
36macro stdout {FILE *}
37macro stderr {FILE *}
38
39type FILE
40type fpos_t
41#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
42type va_list
43#else
44#define va_list __gnuc_va_list
45#endif
46type size_t
47#if defined XOPEN2K8 || defined POSIX2008
48type off_t
49type ssize_t
50#endif
51
52function void clearerr (FILE*)
53#if !defined ISO && !defined ISO99 && !defined ISO11
54function {char*} ctermid (char*)
55# if defined XPG4 || defined XPG42 || defined UNIX98
56function {char*} cuserid (char*)
57# endif
58#endif
59#if defined XOPEN2K8 || defined POSIX2008
60function int dprintf (int, const char*, ...)
61#endif
62function int fclose (FILE*)
63#if !defined ISO && !defined ISO99 && !defined ISO11
64function {FILE*} fdopen (int, const char*)
65#endif
66function int feof (FILE*)
67function int ferror (FILE*)
68function int fflush (FILE*)
69function int fgetc (FILE*)
70function int fgetpos (FILE*, fpos_t*)
71function {char*} fgets (char*, int, FILE*)
72#if !defined ISO && !defined ISO99 && !defined ISO11
73function int fileno (FILE*)
74#endif
75#if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
76function void flockfile (FILE*)
77#endif
78#if defined XOPEN2K8 || defined POSIX2008
79function {FILE*} fmemopen (void*, size_t, const char*)
80#endif
81function {FILE*} fopen (const char*, const char*)
82function int fprintf (FILE*, const char*, ...)
83function int fputc (int, FILE*)
84function int fputs (const char*, FILE*)
85function size_t fread (void*, size_t, size_t, FILE*)
86function {FILE*} freopen (const char*, const char*, FILE*)
87function int fscanf (FILE*, const char*, ...)
88function int fseek (FILE*, long int, int)
89#if defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
90function int fseeko (FILE*, off_t, int)
91#endif
92function int fsetpos (FILE*, const fpos_t*)
93function {long int} ftell (FILE*)
94#if defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
95function off_t ftello (FILE*)
96#endif
97#if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
98function int ftrylockfile (FILE*)
99function void funlockfile (FILE*)
100#endif
101function size_t fwrite (const void*, size_t, size_t, FILE*)
102function int getc (FILE*)
103function int getchar (void)
104#if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
105function int getc_unlocked (FILE*)
106function int getchar_unlocked (void)
107#endif
108#if defined XOPEN2K8 || defined POSIX2008
109function ssize_t getdelim (char**, size_t*, int, FILE*)
110function ssize_t getline (char**, size_t*, FILE*)
111#endif
112#if defined XPG4 || defined XPG42 || defined UNIX98
113function int getopt (int, char *const[], const char *)
114#endif
115#if !defined ISO11
116function {char*} gets (char*)
117#endif
118#if defined XPG4 || defined XPG42 || defined UNIX98
119function int getw (FILE*)
120#endif
121#if defined XOPEN2K8 || defined POSIX2008
122function {FILE*} open_memstream (char**, size_t*)
123#endif
124#if !defined ISO && !defined ISO99 && !defined ISO11
125function int pclose (FILE*)
126#endif
127function void perror (const char*)
128#if !defined ISO && !defined ISO99 && !defined ISO11
129function {FILE*} popen (const char*, const char*)
130#endif
131function int printf (const char*, ...)
132function int putc (int, FILE*)
133function int putchar (int)
134#if defined POSIX || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8 || defined POSIX2008
135function int putc_unlocked (int, FILE*)
136function int putchar_unlocked (int)
137#endif
138function int puts (const char*)
139#if defined XPG4 || defined XPG42 || defined UNIX98
140function int putw (int, FILE*)
141#endif
142function int remove (const char*)
143function int rename (const char*, const char*)
144#if defined XOPEN2K8 || defined POSIX2008
145function int renameat (int, const char*, int, const char*)
146#endif
147function void rewind (FILE*)
148function int scanf (const char*, ...)
149function void setbuf (FILE*, char*)
150function int setvbuf (FILE*, char*, int, size_t)
151#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42
152function int snprintf (char*, size_t, const char*, ...)
153#endif
154function int sprintf (char *, const char *, ...)
155function int sscanf (const char*, const char*, ...)
156#if defined XPG4 || defined XPG42 || defined UNIX98 || defined XOPEN2K || defined XOPEN2K8
157function {char*} tempnam (const char*, const char*)
158#endif
159function {FILE*} tmpfile (void)
160function {char*} tmpnam (char*)
161function int ungetc (int, FILE*)
162#if defined XOPEN2K8 || defined POSIX2008
163function int vdprintf (int, const char*, va_list)
164#endif
165function int vfprintf (FILE*, const char*, va_list)
166#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
167function int vfscanf (FILE*, const char*, va_list)
168#endif
169function int vprintf (const char*, va_list)
170#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
171function int vscanf (const char*, va_list)
172#endif
173#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42
174function int vsnprintf (char*, size_t, const char*, va_list)
175#endif
176function int vsprintf (char*, const char*, va_list)
177#if !defined ISO && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
178function int vsscanf (const char*, const char*, va_list)
179#endif
180
181#if !defined ISO && !defined ISO99 && !defined ISO11
182#if !defined POSIX && !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008
183variable {char*} optarg
184variable int opterr
185variable int optind
186variable int optopt
187#endif
188
189#if !defined POSIX
190allow-header stddef.h
191#endif
192
193allow *_t
194#endif
195