This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
bump $lib::VERSION
[perl5.git] / nostdio.h
... / ...
CommitLineData
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
24struct _FILE;
25#define FILE struct _FILE
26#endif
27
28#ifndef EBCDIC
29
30#define _CANNOT "CANNOT"
31
32#undef clearerr
33#undef fclose
34#undef fdopen
35#undef feof
36#undef ferror
37#undef fflush
38#undef fgetc
39#undef fgetpos
40#undef fgets
41#undef fileno
42#undef flockfile
43#undef fopen
44#undef fprintf
45#undef fputc
46#undef fputs
47#undef fread
48#undef freopen
49#undef fscanf
50#undef fseek
51#undef fsetpos
52#undef ftell
53#undef ftrylockfile
54#undef funlockfile
55#undef fwrite
56#undef getc
57#undef getc_unlocked
58#undef getw
59#undef pclose
60#undef popen
61#undef putc
62#undef putc_unlocked
63#undef putw
64#undef rewind
65#undef setbuf
66#undef setvbuf
67#undef stderr
68#undef stdin
69#undef stdout
70#undef tmpfile
71#undef ungetc
72#undef vfprintf
73#undef printf
74
75#define fprintf _CANNOT _fprintf_
76#define printf _CANNOT _printf_
77#define stdin _CANNOT _stdin_
78#define stdout _CANNOT _stdout_
79#define stderr _CANNOT _stderr_
80#ifndef OS2
81#define tmpfile() _CANNOT _tmpfile_
82#endif
83#define fclose(f) _CANNOT _fclose_
84#define fflush(f) _CANNOT _fflush_
85#define fopen(p,m) _CANNOT _fopen_
86#define freopen(p,m,f) _CANNOT _freopen_
87#define setbuf(f,b) _CANNOT _setbuf_
88#define setvbuf(f,b,x,s) _CANNOT _setvbuf_
89#define fscanf _CANNOT _fscanf_
90#define vfprintf(f,fmt,a) _CANNOT _vfprintf_
91#define fgetc(f) _CANNOT _fgetc_
92#define fgets(s,n,f) _CANNOT _fgets_
93#define fputc(c,f) _CANNOT _fputc_
94#define fputs(s,f) _CANNOT _fputs_
95#define getc(f) _CANNOT _getc_
96#define putc(c,f) _CANNOT _putc_
97#ifndef OS2
98#define ungetc(c,f) _CANNOT _ungetc_
99#endif
100#define fread(b,s,c,f) _CANNOT _fread_
101#define fwrite(b,s,c,f) _CANNOT _fwrite_
102#define fgetpos(f,p) _CANNOT _fgetpos_
103#define fseek(f,o,w) _CANNOT _fseek_
104#define fsetpos(f,p) _CANNOT _fsetpos_
105#define ftell(f) _CANNOT _ftell_
106#define rewind(f) _CANNOT _rewind_
107#define clearerr(f) _CANNOT _clearerr_
108#define feof(f) _CANNOT _feof_
109#define ferror(f) _CANNOT _ferror_
110#define __filbuf(f) _CANNOT __filbuf_
111#define __flsbuf(c,f) _CANNOT __flsbuf_
112#define _filbuf(f) _CANNOT _filbuf_
113#define _flsbuf(c,f) _CANNOT _flsbuf_
114#define fdopen(fd,p) _CANNOT _fdopen_
115#define fileno(f) _CANNOT _fileno_
116#if defined(SFIO_VERSION) && SFIO_VERSION < 20000101L
117#define flockfile(f) _CANNOT _flockfile_
118#define ftrylockfile(f) _CANNOT _ftrylockfile_
119#define funlockfile(f) _CANNOT _funlockfile_
120#endif
121#define getc_unlocked(f) _CANNOT _getc_unlocked_
122#define putc_unlocked(c,f) _CANNOT _putc_unlocked_
123#define popen(c,m) _CANNOT _popen_
124#define getw(f) _CANNOT _getw_
125#define putw(v,f) _CANNOT _putw_
126#ifndef OS2
127#define pclose(f) _CANNOT _pclose_
128#endif
129
130#endif /*not define EBCDIC */
131
132/*
133 * ex: set ts=8 sts=4 sw=4 et:
134 */