This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
In Configure, refactor the test for procselfexe into a loop.
[perl5.git] / nostdio.h
1 /*    nostdio.h
2  *
3  *    Copyright (C) 1996, 2000, 2001, 2005, by Larry Wall and others
4  *
5  *    You may distribute under the terms of either the GNU General Public
6  *    License or the Artistic License, as specified in the README file.
7  *
8  */
9
10 /*
11  * Strong denial of stdio - make all stdio calls (we can think of) errors
12  */
13 /* This is a 1st attempt to stop other include files pulling
14    in real <stdio.h>.
15    A more ambitious set of possible symbols can be found in
16    sfio.h (inside an _cplusplus gard).
17    It is completely pointless as we have already included it ourselves.
18 */
19
20 #if !defined(_STDIO_H) && !defined(FILE) && !defined(_STDIO_INCLUDED) && !defined(__STDIO_LOADED)
21 #define _STDIO_H
22 #define _STDIO_INCLUDED
23 #define __STDIO_LOADED
24 struct _FILE;
25 #define FILE struct _FILE
26 #endif
27
28 #define _CANNOT "CANNOT"
29
30 #undef clearerr
31 #undef fclose
32 #undef fdopen
33 #undef feof
34 #undef ferror
35 #undef fflush
36 #undef fgetc
37 #undef fgetpos
38 #undef fgets
39 #undef fileno
40 #undef flockfile
41 #undef fopen
42 #undef fprintf
43 #undef fputc
44 #undef fputs
45 #undef fread
46 #undef freopen
47 #undef fscanf
48 #undef fseek
49 #undef fsetpos
50 #undef ftell
51 #undef ftrylockfile
52 #undef funlockfile
53 #undef fwrite
54 #undef getc
55 #undef getc_unlocked
56 #undef getw
57 #undef pclose
58 #undef popen
59 #undef putc
60 #undef putc_unlocked
61 #undef putw
62 #undef rewind
63 #undef setbuf
64 #undef setvbuf
65 #undef stderr
66 #undef stdin
67 #undef stdout
68 #undef tmpfile
69 #undef ungetc
70 #undef vfprintf
71 #undef printf
72
73 #define fprintf    _CANNOT _fprintf_
74 #define printf     _CANNOT _printf_
75 #define stdin      _CANNOT _stdin_
76 #define stdout     _CANNOT _stdout_
77 #define stderr     _CANNOT _stderr_
78 #ifndef OS2
79 #define tmpfile()  _CANNOT _tmpfile_
80 #endif
81 #define fclose(f)  _CANNOT _fclose_
82 #define fflush(f)  _CANNOT _fflush_
83 #define fopen(p,m)  _CANNOT _fopen_
84 #define freopen(p,m,f)  _CANNOT _freopen_
85 #define setbuf(f,b)  _CANNOT _setbuf_
86 #define setvbuf(f,b,x,s)  _CANNOT _setvbuf_
87 #define fscanf  _CANNOT _fscanf_
88 #define vfprintf(f,fmt,a)  _CANNOT _vfprintf_
89 #define fgetc(f)  _CANNOT _fgetc_
90 #define fgets(s,n,f)  _CANNOT _fgets_
91 #define fputc(c,f)  _CANNOT _fputc_
92 #define fputs(s,f)  _CANNOT _fputs_
93 #define getc(f)  _CANNOT _getc_
94 #define putc(c,f)  _CANNOT _putc_
95 #ifndef OS2
96 #define ungetc(c,f)  _CANNOT _ungetc_
97 #endif
98 #define fread(b,s,c,f)  _CANNOT _fread_
99 #define fwrite(b,s,c,f)  _CANNOT _fwrite_
100 #define fgetpos(f,p)  _CANNOT _fgetpos_
101 #define fseek(f,o,w)  _CANNOT _fseek_
102 #define fsetpos(f,p)  _CANNOT _fsetpos_
103 #define ftell(f)  _CANNOT _ftell_
104 #define rewind(f)  _CANNOT _rewind_
105 #define clearerr(f)  _CANNOT _clearerr_
106 #define feof(f)  _CANNOT _feof_
107 #define ferror(f)  _CANNOT _ferror_
108 #define __filbuf(f)  _CANNOT __filbuf_
109 #define __flsbuf(c,f)  _CANNOT __flsbuf_
110 #define _filbuf(f)  _CANNOT _filbuf_
111 #define _flsbuf(c,f)  _CANNOT _flsbuf_
112 #define fdopen(fd,p)  _CANNOT _fdopen_
113 #define fileno(f)  _CANNOT _fileno_
114 #if defined(SFIO_VERSION) && SFIO_VERSION < 20000101L
115 #define flockfile(f)  _CANNOT _flockfile_
116 #define ftrylockfile(f)  _CANNOT _ftrylockfile_
117 #define funlockfile(f)  _CANNOT _funlockfile_
118 #endif
119 #define getc_unlocked(f)  _CANNOT _getc_unlocked_
120 #define putc_unlocked(c,f)  _CANNOT _putc_unlocked_
121 #define popen(c,m)  _CANNOT _popen_
122 #define getw(f)  _CANNOT _getw_
123 #define putw(v,f)  _CANNOT _putw_
124 #ifndef OS2
125 #define pclose(f)  _CANNOT _pclose_
126 #endif
127
128 /*
129  * Local variables:
130  * c-indentation-style: bsd
131  * c-basic-offset: 4
132  * indent-tabs-mode: t
133  * End:
134  *
135  * ex: set ts=8 sts=4 sw=4 noet:
136  */