Skip processing a file if the file to be opened is '-'
[p5sagit/p5-mst-13.2.git] / iperlsys.h
index 0aa4bd8..9404d18 100644 (file)
 extern void PerlIO_init (void);
 #endif
 
+#ifndef Sighandler_t
+typedef Signal_t (*Sighandler_t) (int);
+#endif
+
 #if defined(PERL_IMPLICIT_SYS)
 
 #ifndef PerlIO
@@ -220,13 +224,13 @@ struct IPerlStdIOInfo
        (*PL_StdIO->pClearerr)(PL_StdIO, (f))
 #define PerlIO_getc(f)                                                 \
        (*PL_StdIO->pGetc)(PL_StdIO, (f))
-#define PerlIO_get_base(mTHX_ f)                                               \
+#define PerlIO_get_base(f)                                             \
        (*PL_StdIO->pGetBase)(PL_StdIO, (f))
-#define PerlIO_get_bufsiz(mTHX_ f)                                             \
+#define PerlIO_get_bufsiz(f)                                           \
        (*PL_StdIO->pGetBufsiz)(PL_StdIO, (f))
-#define PerlIO_get_cnt(mTHX_ f)                                                \
+#define PerlIO_get_cnt(f)                                              \
        (*PL_StdIO->pGetCnt)(PL_StdIO, (f))
-#define PerlIO_get_ptr(mTHX_ f)                                                \
+#define PerlIO_get_ptr(f)                                              \
        (*PL_StdIO->pGetPtr)(PL_StdIO, (f))
 #define PerlIO_putc(f,c)                                               \
        (*PL_StdIO->pPutc)(PL_StdIO, (f),(c))
@@ -252,9 +256,9 @@ struct IPerlStdIOInfo
        (*PL_StdIO->pSetBuf)(PL_StdIO, (f), (b))
 #define PerlIO_setvbuf(f,b,t,s)                                                \
        (*PL_StdIO->pSetVBuf)(PL_StdIO, (f),(b),(t),(s))
-#define PerlIO_set_cnt(mTHX_ f,c)                                              \
+#define PerlIO_set_cnt(f,c)                                            \
        (*PL_StdIO->pSetCnt)(PL_StdIO, (f), (c))
-#define PerlIO_set_ptrcnt(mTHX_ f,p,c)                                 \
+#define PerlIO_set_ptrcnt(f,p,c)                                       \
        (*PL_StdIO->pSetPtrCnt)(PL_StdIO, (f), (p), (c))
 #define PerlIO_setlinebuf(f)                                           \
        (*PL_StdIO->pSetlinebuf)(PL_StdIO, (f))
@@ -283,6 +287,7 @@ struct IPerlStdIOInfo
 #else  /* PERL_IMPLICIT_SYS */
 
 #include "perlsdio.h"
+#include "perl.h"
 
 #endif /* PERL_IMPLICIT_SYS */
 
@@ -425,22 +430,22 @@ extern int        PerlIO_fast_gets        (PerlIO *);
 extern int     PerlIO_canset_cnt       (PerlIO *);
 #endif
 #ifndef PerlIO_get_ptr
-extern STDCHAR * PerlIO_get_ptr                (pTHX_ PerlIO *);
+extern STDCHAR * PerlIO_get_ptr                (PerlIO *);
 #endif
 #ifndef PerlIO_get_cnt
-extern int     PerlIO_get_cnt          (pTHX_ PerlIO *);
+extern int     PerlIO_get_cnt          (PerlIO *);
 #endif
 #ifndef PerlIO_set_cnt
-extern void    PerlIO_set_cnt          (pTHX_ PerlIO *,int);
+extern void    PerlIO_set_cnt          (PerlIO *,int);
 #endif
 #ifndef PerlIO_set_ptrcnt
-extern void    PerlIO_set_ptrcnt       (pTHX_ PerlIO *,STDCHAR *,int);
+extern void    PerlIO_set_ptrcnt       (PerlIO *,STDCHAR *,int);
 #endif
 #ifndef PerlIO_get_base
-extern STDCHAR * PerlIO_get_base       (pTHX_ PerlIO *);
+extern STDCHAR * PerlIO_get_base       (PerlIO *);
 #endif
 #ifndef PerlIO_get_bufsiz
-extern int     PerlIO_get_bufsiz       (pTHX_ PerlIO *);
+extern int     PerlIO_get_bufsiz       (PerlIO *);
 #endif
 #ifndef PerlIO_tmpfile
 extern PerlIO *        PerlIO_tmpfile          (void);
@@ -677,6 +682,8 @@ typedef int         (*LPLIOFileStat)(struct IPerlLIO*, int, struct stat*);
 typedef int            (*LPLIOIOCtl)(struct IPerlLIO*, int, unsigned int,
                            char*);
 typedef int            (*LPLIOIsatty)(struct IPerlLIO*, int);
+typedef int            (*LPLIOLink)(struct IPerlLIO*, const char*,
+                                    const char *);
 typedef long           (*LPLIOLseek)(struct IPerlLIO*, int, long, int);
 typedef int            (*LPLIOLstat)(struct IPerlLIO*, const char*,
                            struct stat*);
@@ -709,6 +716,7 @@ struct IPerlLIO
     LPLIOFileStat      pFileStat;
     LPLIOIOCtl         pIOCtl;
     LPLIOIsatty                pIsatty;
+    LPLIOLink          pLink;
     LPLIOLseek         pLseek;
     LPLIOLstat         pLstat;
     LPLIOMktemp                pMktemp;
@@ -753,6 +761,8 @@ struct IPerlLIOInfo
        (*PL_LIO->pIOCtl)(PL_LIO, (fd), (u), (buf))
 #define PerlLIO_isatty(fd)                                             \
        (*PL_LIO->pIsatty)(PL_LIO, (fd))
+#define PerlLIO_link(oldname, newname)                                 \
+       (*PL_LIO->pLink)(PL_LIO, (oldname), (newname))
 #define PerlLIO_lseek(fd, offset, mode)                                        \
        (*PL_LIO->pLseek)(PL_LIO, (fd), (offset), (mode))
 #define PerlLIO_lstat(name, buf)                                       \
@@ -795,6 +805,7 @@ struct IPerlLIOInfo
 #define PerlLIO_fstat(fd, buf)         Fstat((fd), (buf))
 #define PerlLIO_ioctl(fd, u, buf)      ioctl((fd), (u), (buf))
 #define PerlLIO_isatty(fd)             isatty((fd))
+#define PerlLIO_link(oldname, newname) link((oldname), (newname))
 #define PerlLIO_lseek(fd, offset, mode)        lseek((fd), (offset), (mode))
 #define PerlLIO_stat(name, buf)                Stat((name), (buf))
 #ifdef HAS_LSTAT
@@ -864,9 +875,6 @@ struct IPerlMemInfo
 
 #if defined(PERL_IMPLICIT_SYS)
 
-#ifndef Sighandler_t
-typedef Signal_t (*Sighandler_t) (int);
-#endif
 #ifndef jmp_buf
 #include <setjmp.h>
 #endif
@@ -1344,22 +1352,5 @@ struct IPerlSockInfo
 
 #endif /* PERL_IMPLICIT_SYS */
 
-/* Mention
-
-   HAS_READV
-   HAS_RECVMSG
-   HAS_SENDMSG
-   HAS_WRITEV
-   HAS_STRUCT_MSGHDR
-   HAS_STRUCT_CMSGHDR
-
-   here so that Configure picks them up.  Perl core does not
-   use them but somebody might want to extend Socket:: or IO::
-   someday.
-
-   Jarkko Hietaniemi November 1998
-
-   */
-
 #endif /* __Inc__IPerl___ */