X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perlsdio.h;h=c4a1179a41aa617e6eb6df96f8203f8455e5a33b;hb=50588fdeefaaa7117c6e7bd89a92fc19a3dba2b1;hp=e9dd1f5581cfad0a547af7d39d4fb49776f94b53;hpb=92479810ad7bcca524d84878cb8fc5387a2d262c;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perlsdio.h b/perlsdio.h index e9dd1f5..c4a1179 100644 --- a/perlsdio.h +++ b/perlsdio.h @@ -49,18 +49,24 @@ # define PerlIO_read(f,buf,count) (SSize_t)fread(buf,1,count,f) #endif #define PerlIO_eof(f) feof(f) -#define PerlIO_getname(mTHX_ f,b) fgetname(f,b) +#define PerlIO_getname(f,b) fgetname(f,b) #define PerlIO_error(f) ferror(f) #define PerlIO_fileno(f) fileno(f) #define PerlIO_clearerr(f) clearerr(f) #define PerlIO_flush(f) Fflush(f) #define PerlIO_tell(f) ftell(f) +#if defined(USE_64_BIT_STDIO) && defined(HAS_FTELLO) && !defined(USE_FTELL64) +#define ftell ftello +#endif #if defined(VMS) && !defined(__DECC) /* Old VAXC RTL doesn't reset EOF on seek; Perl folk seem to expect this */ # define PerlIO_seek(f,o,w) (((f) && (*f) && ((*f)->_flag &= ~_IOEOF)),fseek(f,o,w)) #else # define PerlIO_seek(f,o,w) fseek(f,o,w) #endif +#if defined(USE_64_BIT_STDIO) && defined(HAS_FSEEKO) && !defined(USE_FSEEK64) +#define fseek fseeko +#endif #ifdef HAS_FGETPOS #define PerlIO_getpos(f,p) fgetpos(f,p) #endif @@ -79,45 +85,41 @@ #ifdef HAS_SETLINEBUF #define PerlIO_setlinebuf(f) setlinebuf(f); #else -# ifdef CYGWIN -# define PerlIO_setlinebuf(f) -# else -# define PerlIO_setlinebuf(f) setvbuf(f, Nullch, _IOLBF, 0); -# endif +#define PerlIO_setlinebuf(f) setvbuf(f, Nullch, _IOLBF, 0); #endif /* Now our interface to Configure's FILE_xxx macros */ #ifdef USE_STDIO_PTR #define PerlIO_has_cntptr(f) 1 -#define PerlIO_get_ptr(mTHX_ f) FILE_ptr(f) -#define PerlIO_get_cnt(mTHX_ f) FILE_cnt(f) +#define PerlIO_get_ptr(f) FILE_ptr(f) +#define PerlIO_get_cnt(f) FILE_cnt(f) #ifdef STDIO_CNT_LVALUE #define PerlIO_canset_cnt(f) 1 #ifdef STDIO_PTR_LVALUE #define PerlIO_fast_gets(f) 1 #endif -#define PerlIO_set_cnt(mTHX_ f,c) (FILE_cnt(f) = (c)) +#define PerlIO_set_cnt(f,c) (FILE_cnt(f) = (c)) #else #define PerlIO_canset_cnt(f) 0 -#define PerlIO_set_cnt(mTHX_ f,c) abort() +#define PerlIO_set_cnt(f,c) abort() #endif #ifdef STDIO_PTR_LVALUE -#define PerlIO_set_ptrcnt(mTHX_ f,p,c) (FILE_ptr(f) = (p), pTHX_ PerlIO_set_cnt(mTHX_ f,c)) +#define PerlIO_set_ptrcnt(f,p,c) (FILE_ptr(f) = (p), PerlIO_set_cnt(f,c)) #else -#define PerlIO_set_ptrcnt(mTHX_ f,p,c) abort() +#define PerlIO_set_ptrcnt(f,p,c) abort() #endif #else /* USE_STDIO_PTR */ #define PerlIO_has_cntptr(f) 0 #define PerlIO_canset_cnt(f) 0 -#define PerlIO_get_cnt(mTHX_ f) (abort(),0) -#define PerlIO_get_ptr(mTHX_ f) (abort(),(void *)0) -#define PerlIO_set_cnt(mTHX_ f,c) abort() -#define PerlIO_set_ptrcnt(mTHX_ f,p,c) abort() +#define PerlIO_get_cnt(f) (abort(),0) +#define PerlIO_get_ptr(f) (abort(),(void *)0) +#define PerlIO_set_cnt(f,c) abort() +#define PerlIO_set_ptrcnt(f,p,c) abort() #endif /* USE_STDIO_PTR */ @@ -128,12 +130,12 @@ #ifdef FILE_base #define PerlIO_has_base(f) 1 -#define PerlIO_get_base(mTHX_ f) FILE_base(f) -#define PerlIO_get_bufsiz(mTHX_ f) FILE_bufsiz(f) +#define PerlIO_get_base(f) FILE_base(f) +#define PerlIO_get_bufsiz(f) FILE_bufsiz(f) #else #define PerlIO_has_base(f) 0 -#define PerlIO_get_base(mTHX_ f) (abort(),(void *)0) -#define PerlIO_get_bufsiz(mTHX_ f) (abort(),0) +#define PerlIO_get_base(f) (abort(),(void *)0) +#define PerlIO_get_bufsiz(f) (abort(),0) #endif #else /* PERLIO_IS_STDIO */ #ifdef PERL_CORE @@ -211,9 +213,11 @@ #define _flsbuf(c,f) _CANNOT _flsbuf_ #define fdopen(fd,p) _CANNOT _fdopen_ #define fileno(f) _CANNOT _fileno_ +#if SFIO_VERSION < 20000101L #define flockfile(f) _CANNOT _flockfile_ #define ftrylockfile(f) _CANNOT _ftrylockfile_ #define funlockfile(f) _CANNOT _funlockfile_ +#endif #define getc_unlocked(f) _CANNOT _getc_unlocked_ #define putc_unlocked(c,f) _CANNOT _putc_unlocked_ #define popen(c,m) _CANNOT _popen_ @@ -313,9 +317,11 @@ #define _flsbuf(c,f) _CANNOT _flsbuf_ #define getw(f) _CANNOT _getw_ #define putw(v,f) _CANNOT _putw_ +#if SFIO_VERSION < 20000101L #define flockfile(f) _CANNOT _flockfile_ #define ftrylockfile(f) _CANNOT _ftrylockfile_ #define funlockfile(f) _CANNOT _funlockfile_ +#endif #define freopen(p,m,f) _CANNOT _freopen_ #define setbuf(f,b) _CANNOT _setbuf_ #define setvbuf(f,b,x,s) _CANNOT _setvbuf_