X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=fakesdio.h;h=d2caa112215f3082631fc82bd405be2ded47c16f;hb=4522225b0b1dd6f5498ad893469cb9b2e20183b7;hp=19aa0c943f191a834378a9fb5ddfead1564e166a;hpb=76ced9add7b621dfc9d4ecb534aeea8e131a418a;p=p5sagit%2Fp5-mst-13.2.git diff --git a/fakesdio.h b/fakesdio.h index 19aa0c9..d2caa11 100644 --- a/fakesdio.h +++ b/fakesdio.h @@ -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. @@ -5,42 +14,59 @@ #define _CANNOT "CANNOT" #undef FILE #define FILE PerlIO -#undef fprintf -#undef tmpfile +#undef clearerr #undef fclose -#undef fopen -#undef vfprintf +#undef fdopen +#undef feof +#undef ferror +#undef fflush #undef fgetc -#undef getc_unlocked +#undef fgetpos +#undef fgets +#undef fileno +#undef flockfile +#undef fopen +#undef fprintf #undef fputc -#undef putc_unlocked #undef fputs -#undef ungetc #undef fread -#undef fwrite -#undef fgetpos +#undef freopen +#undef fscanf #undef fseek #undef fsetpos #undef ftell -#undef rewind -#undef fdopen -#undef popen -#undef pclose +#undef ftrylockfile +#undef funlockfile +#undef fwrite +#undef getc +#undef getc_unlocked #undef getw +#undef pclose +#undef popen +#undef putc +#undef putc_unlocked #undef putw -#undef freopen +#undef rewind #undef setbuf #undef setvbuf -#undef fscanf -#undef fgets +#undef stderr #undef stdin #undef stdout -#undef stderr -#undef getc -#undef putc -#undef clearerr -#undef feof -#undef ferror +#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() @@ -54,14 +80,8 @@ #define fputc(c,f) PerlIO_putc(f,c) #define fputs(s,f) PerlIO_puts(f,s) #define getc(f) PerlIO_getc(f) -#ifdef getc_unlocked -#undef getc_unlocked -#endif #define getc_unlocked(f) PerlIO_getc(f) #define putc(c,f) PerlIO_putc(f,c) -#ifdef putc_unlocked -#undef putc_unlocked -#endif #define putc_unlocked(c,f) PerlIO_putc(c,f) #define ungetc(c,f) PerlIO_ungetc(f,c) #if 0 @@ -72,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) @@ -85,6 +103,9 @@ #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_