summaryrefslogtreecommitdiffstats
path: root/contrib/perl5/iperlsys.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/perl5/iperlsys.h')
-rw-r--r--contrib/perl5/iperlsys.h28
1 files changed, 21 insertions, 7 deletions
diff --git a/contrib/perl5/iperlsys.h b/contrib/perl5/iperlsys.h
index f36dcd5..2f08a24 100644
--- a/contrib/perl5/iperlsys.h
+++ b/contrib/perl5/iperlsys.h
@@ -186,13 +186,19 @@ struct IPerlStdIOInfo
#ifdef USE_STDIO_PTR
# define PerlIO_has_cntptr(f) 1
-# ifdef STDIO_CNT_LVALUE
-# define PerlIO_canset_cnt(f) 1
-# ifdef STDIO_PTR_LVALUE
+# ifdef STDIO_PTR_LVALUE
+# ifdef STDIO_CNT_LVALUE
+# define PerlIO_canset_cnt(f) 1
+# ifdef STDIO_PTR_LVAL_NOCHANGE_CNT
+# define PerlIO_fast_gets(f) 1
+# endif
+# else /* STDIO_CNT_LVALUE */
+# define PerlIO_canset_cnt(f) 0
+# endif
+# else /* STDIO_PTR_LVALUE */
+# ifdef STDIO_PTR_LVAL_SETS_CNT
# define PerlIO_fast_gets(f) 1
# endif
-# else
-# define PerlIO_canset_cnt(f) 0
# endif
#else /* USE_STDIO_PTR */
# define PerlIO_has_cntptr(f) 0
@@ -266,7 +272,7 @@ struct IPerlStdIOInfo
#define PerlIO_setlinebuf(f) \
(*PL_StdIO->pSetlinebuf)(PL_StdIO, (f))
#define PerlIO_printf Perl_fprintf_nocontext
-#define PerlIO_stdoutf *PL_StdIO->pPrintf
+#define PerlIO_stdoutf Perl_printf_nocontext
#define PerlIO_vprintf(f,fmt,a) \
(*PL_StdIO->pVprintf)(PL_StdIO, (f),(fmt),a)
#define PerlIO_tell(f) \
@@ -466,11 +472,19 @@ extern PerlIO * PerlIO_stdout (void);
extern PerlIO * PerlIO_stderr (void);
#endif
#ifndef PerlIO_getpos
+#ifdef USE_SFIO
+extern int PerlIO_getpos (PerlIO *,Off_t *);
+#else
extern int PerlIO_getpos (PerlIO *,Fpos_t *);
#endif
+#endif
#ifndef PerlIO_setpos
+#ifdef USE_SFIO
+extern int PerlIO_setpos (PerlIO *,const Off_t *);
+#else
extern int PerlIO_setpos (PerlIO *,const Fpos_t *);
#endif
+#endif
#ifndef PerlIO_fdupopen
extern PerlIO * PerlIO_fdupopen (PerlIO *);
#endif
@@ -551,7 +565,7 @@ struct IPerlDirInfo
#define PerlDir_mkdir(name, mode) Mkdir((name), (mode))
#ifdef VMS
-# define PerlDir_chdir(n) chdir(((n) && *(n)) ? (n) : "SYS$LOGIN")
+# define PerlDir_chdir(n) Chdir(((n) && *(n)) ? (n) : "SYS$LOGIN")
#else
# define PerlDir_chdir(name) chdir((name))
#endif
OpenPOWER on IntegriCloud