This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to ExtUtils::CBuilder 0.14
[perl5.git] / fakesdio.h
index 374087f..d2caa11 100644 (file)
@@ -1,3 +1,12 @@
+/*    fakestdio.h
+ *
+ *    Copyright (C) 2000, by Larry Wall and others
+ *
+ *    You may distribute under the terms of either the GNU General Public
+ *    License or the Artistic License, as specified in the README file.
+ *
+ */
+
 /*
  * This is "source level" stdio compatibility mode.
  * We try and #define stdio functions in terms of PerlIO.
 #undef tmpfile
 #undef ungetc
 #undef vfprintf
+#undef printf
+
+/* printf used to live in perl.h like this - more sophisticated 
+   than the rest 
+ */
+#if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
+#define printf(fmt,args...) PerlIO_stdoutf(fmt,##args)
+#else
+#define printf PerlIO_stdoutf
+#endif
+#endif
+
 #define fprintf                        PerlIO_printf
 #define stdin                  PerlIO_stdin()
 #define stdout                 PerlIO_stdout()
@@ -71,9 +92,7 @@
 #define fread(b,s,c,f)         _CANNOT fread
 #define fwrite(b,s,c,f)                _CANNOT fwrite
 #endif
-#define fgetpos(f,p)           PerlIO_getpos(f,p)
 #define fseek(f,o,w)           PerlIO_seek(f,o,w)
-#define fsetpos(f,p)           PerlIO_setpos(f,p)
 #define ftell(f)               PerlIO_tell(f)
 #define rewind(f)              PerlIO_rewind(f)
 #define clearerr(f)            PerlIO_clearerr(f)
 #define popen(c,m)             my_popen(c,m)
 #define pclose(f)              my_pclose(f)
 
+#define fsetpos(f,p)           _CANNOT _fsetpos_
+#define fgetpos(f,p)           _CANNOT _fgetpos_
+
 #define __filbuf(f)            _CANNOT __filbuf_
 #define _filbuf(f)             _CANNOT _filbuf_
 #define __flsbuf(c,f)          _CANNOT __flsbuf_