diff options
-rw-r--r-- | MANIFEST | 1 | ||||
-rw-r--r-- | NetWare/Makefile | 1 | ||||
-rwxr-xr-x | configpm | 4 | ||||
-rw-r--r-- | doio.c | 7 | ||||
-rw-r--r-- | embed.fnc | 2 | ||||
-rw-r--r-- | embed.h | 2 | ||||
-rw-r--r-- | ext/PerlIO-encoding/encoding.pm | 2 | ||||
-rw-r--r-- | ext/PerlIO-encoding/encoding.xs | 2 | ||||
-rw-r--r-- | makedef.pl | 84 | ||||
-rw-r--r-- | perl.h | 13 | ||||
-rw-r--r-- | perlio.c | 74 | ||||
-rw-r--r-- | perlio.h | 13 | ||||
-rw-r--r-- | perlsfio.h | 83 | ||||
-rw-r--r-- | pod/perlapio.pod | 9 | ||||
-rw-r--r-- | pod/perlfunc.pod | 3 | ||||
-rw-r--r-- | pod/perliol.pod | 3 | ||||
-rw-r--r-- | pp_ctl.c | 2 | ||||
-rw-r--r-- | proto.h | 2 | ||||
-rw-r--r-- | t/io/fflush.t | 3 | ||||
-rw-r--r-- | t/io/pipe.t | 5 | ||||
-rw-r--r-- | t/op/lfs.t | 2 | ||||
-rw-r--r-- | t/op/sprintf.t | 4 | ||||
-rw-r--r-- | universal.c | 4 | ||||
-rw-r--r-- | util.c | 13 | ||||
-rw-r--r-- | win32/Makefile | 1 | ||||
-rw-r--r-- | win32/Makefile.ce | 1 | ||||
-rw-r--r-- | win32/makefile.mk | 1 | ||||
-rw-r--r-- | win32/win32.c | 2 | ||||
-rw-r--r-- | win32/wince.c | 2 |
29 files changed, 30 insertions, 315 deletions
@@ -4460,7 +4460,6 @@ perlio.h PerlIO abstraction perliol.h PerlIO Layer definition perlio.sym Symbols for PerlIO abstraction perlsdio.h Fake stdio using perlio -perlsfio.h Prototype sfio mapping for PerlIO perlvars.h Global variables perly.act parser actions; derived from perly.y perly.c parser code (NOT derived from perly.y) diff --git a/NetWare/Makefile b/NetWare/Makefile index 8691bf462f..a002f3f36d 100644 --- a/NetWare/Makefile +++ b/NetWare/Makefile @@ -764,7 +764,6 @@ CORE_NOCFG_H = \ ..\perl.h \ ..\perlapi.h \ ..\perlsdio.h \ - ..\perlsfio.h \ ..\perly.h \ ..\pp.h \ ..\proto.h \ @@ -72,13 +72,13 @@ my %Extensions = map {($_,$_)} # Could use a map to add ".h", but I suspect that it's easier to use literals, # so that anyone using grep will find them -# This is the list from MM_VMS, plus pad.h, parser.h, perlsfio.h utf8.h +# This is the list from MM_VMS, plus pad.h, parser.h, utf8.h # which it installs. It *doesn't* install perliol.h - FIXME. my @header_files = qw(EXTERN.h INTERN.h XSUB.h av.h config.h cop.h cv.h embed.h embedvar.h form.h gv.h handy.h hv.h hv_func.h intrpvar.h iperlsys.h keywords.h mg.h nostdio.h op.h opcode.h pad.h parser.h patchlevel.h perl.h perlio.h perlsdio.h - perlsfio.h perlvars.h perly.h pp.h pp_proto.h proto.h + perlvars.h perly.h pp.h pp_proto.h proto.h regcomp.h regexp.h regnodes.h scope.h sv.h thread.h utf8.h util.h); @@ -359,13 +359,6 @@ Perl_do_openn(pTHX_ GV *gv, const char *oname, I32 len, int as_raw, * be optimized away on most platforms; * only Solaris and Linux seem to flush * on that. --jhi */ -#ifdef USE_SFIO - /* sfio fails to clear error on next - sfwrite, contrary to documentation. - -- Nicholas Clark */ - if (PerlIO_seek(that_fp, 0, SEEK_CUR) == -1) - PerlIO_clearerr(that_fp); -#endif /* On the other hand, do all platforms * take gracefully to flushing a read-only * filehandle? Perhaps we should do @@ -2382,7 +2382,7 @@ pMXE |SV* |sv_setsv_cow |NULLOK SV* dstr|NN SV* sstr Aop |const char *|PerlIO_context_layers|NULLOK const char *mode -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) Ap |int |PerlIO_close |NULLOK PerlIO *f Ap |int |PerlIO_fill |NULLOK PerlIO *f Ap |int |PerlIO_fileno |NULLOK PerlIO *f @@ -822,7 +822,7 @@ #if defined(USE_LOCALE_COLLATE) #define sv_collxfrm_flags(a,b,c) Perl_sv_collxfrm_flags(aTHX_ a,b,c) #endif -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) #define PerlIO_clearerr(a) Perl_PerlIO_clearerr(aTHX_ a) #define PerlIO_close(a) Perl_PerlIO_close(aTHX_ a) #define PerlIO_eof(a) Perl_PerlIO_eof(aTHX_ a) diff --git a/ext/PerlIO-encoding/encoding.pm b/ext/PerlIO-encoding/encoding.pm index e3291a54b0..8d39ed9a20 100644 --- a/ext/PerlIO-encoding/encoding.pm +++ b/ext/PerlIO-encoding/encoding.pm @@ -1,7 +1,7 @@ package PerlIO::encoding; use strict; -our $VERSION = '0.17'; +our $VERSION = '0.18'; our $DEBUG = 0; $DEBUG and warn __PACKAGE__, " called by ", join(", ", caller), "\n"; diff --git a/ext/PerlIO-encoding/encoding.xs b/ext/PerlIO-encoding/encoding.xs index f522ef101c..fababd1d70 100644 --- a/ext/PerlIO-encoding/encoding.xs +++ b/ext/PerlIO-encoding/encoding.xs @@ -6,7 +6,7 @@ #define OUR_DEFAULT_FB "Encode::PERLQQ" -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) /* Define an encoding "layer" in the perliol.h sense. diff --git a/makedef.pl b/makedef.pl index 5c4985933c..c97fdc46db 100644 --- a/makedef.pl +++ b/makedef.pl @@ -635,88 +635,8 @@ if ($define{'USE_PERLIO'}) { # of its implementation - read from a file push @syms, 'perlio.sym'; - # This part is then dependent on how the abstraction is implemented - if ($define{'USE_SFIO'}) { - # Old legacy non-stdio "PerlIO" - ++$skip{$_} foreach @layer_syms; - ++$skip{perlsio_binmode}; - # SFIO defines most of the PerlIO routines as macros - # So undo most of what $perlio_sym has just done - d'oh ! - # Perhaps it would be better to list the ones which do exist - # And emit them - ++$skip{$_} foreach qw( - PerlIO_canset_cnt - PerlIO_clearerr - PerlIO_close - PerlIO_eof - PerlIO_error - PerlIO_exportFILE - PerlIO_fast_gets - PerlIO_fdopen - PerlIO_fileno - PerlIO_findFILE - PerlIO_flush - PerlIO_get_base - PerlIO_get_bufsiz - PerlIO_get_cnt - PerlIO_get_ptr - PerlIO_getc - PerlIO_getname - PerlIO_has_base - PerlIO_has_cntptr - PerlIO_importFILE - PerlIO_open - PerlIO_printf - PerlIO_putc - PerlIO_puts - PerlIO_read - PerlIO_releaseFILE - PerlIO_reopen - PerlIO_rewind - PerlIO_seek - PerlIO_set_cnt - PerlIO_set_ptrcnt - PerlIO_setlinebuf - PerlIO_stderr - PerlIO_stdin - PerlIO_stdout - PerlIO_stdoutf - PerlIO_tell - PerlIO_ungetc - PerlIO_vprintf - PerlIO_write - PerlIO_perlio - Perl_PerlIO_clearerr - Perl_PerlIO_close - Perl_PerlIO_eof - Perl_PerlIO_error - Perl_PerlIO_fileno - Perl_PerlIO_fill - Perl_PerlIO_flush - Perl_PerlIO_get_base - Perl_PerlIO_get_bufsiz - Perl_PerlIO_get_cnt - Perl_PerlIO_get_ptr - Perl_PerlIO_read - Perl_PerlIO_seek - Perl_PerlIO_set_cnt - Perl_PerlIO_set_ptrcnt - Perl_PerlIO_setlinebuf - Perl_PerlIO_stderr - Perl_PerlIO_stdin - Perl_PerlIO_stdout - Perl_PerlIO_tell - Perl_PerlIO_unread - Perl_PerlIO_write - PL_def_layerlist - PL_known_layers - PL_perlio - ); - } - else { - # PerlIO with layers - export implementation - try_symbols(@layer_syms, 'perlsio_binmode'); - } + # PerlIO with layers - export implementation + try_symbols(@layer_syms, 'perlsio_binmode'); } else { # -Uuseperlio # Skip the PerlIO layer symbols - although @@ -1016,12 +1016,6 @@ EXTERN_C int usleep(unsigned int); # include <arpa/inet.h> #endif -#if defined(SF_APPEND) && defined(USE_SFIO) && defined(I_SFIO) -/* <sfio.h> defines SF_APPEND and <sys/stat.h> might define SF_APPEND - * (the neo-BSD seem to do this). */ -# undef SF_APPEND -#endif - #ifdef I_SYS_STAT # include <sys/stat.h> #endif @@ -2960,7 +2954,7 @@ typedef pthread_key_t perl_key; * out there, Solaris being the most prominent. */ #ifndef PERL_FLUSHALL_FOR_CHILD -# if defined(USE_PERLIO) || defined(FFLUSH_NULL) || defined(USE_SFIO) +# if defined(USE_PERLIO) || defined(FFLUSH_NULL) # define PERL_FLUSHALL_FOR_CHILD PerlIO_flush((PerlIO*)NULL) # else # ifdef FFLUSH_ALL @@ -3976,7 +3970,7 @@ typedef Sighandler_t Sigsave_t; # define RUNOPS_DEFAULT Perl_runops_standard #endif -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) EXTERN_C void PerlIO_teardown(void); # ifdef USE_ITHREADS # define PERLIO_INIT MUTEX_INIT(&PL_perlio_mutex) @@ -4631,9 +4625,6 @@ EXTCONST char PL_bincompat_options[] = # ifdef USE_REENTRANT_API " USE_REENTRANT_API" # endif -# ifdef USE_SFIO - " USE_SFIO" -# endif # ifdef USE_SOCKS " USE_SOCKS" # endif @@ -117,8 +117,6 @@ extern off_t ftello(FILE *); #define NATIVE_0xd CR_NATIVE #define NATIVE_0xa LF_NATIVE -#ifndef USE_SFIO - EXTERN_C int perlsio_binmode(FILE *fp, int iotype, int mode); int @@ -157,7 +155,6 @@ perlsio_binmode(FILE *fp, int iotype, int mode) # endif #endif } -#endif /* sfio */ #ifndef O_ACCMODE #define O_ACCMODE 3 /* Assume traditional implementation */ @@ -234,14 +231,7 @@ PerlIO_destruct(pTHX) int PerlIO_binmode(pTHX_ PerlIO *fp, int iotype, int mode, const char *names) { -#ifdef USE_SFIO - PERL_UNUSED_ARG(iotype); - PERL_UNUSED_ARG(mode); - PERL_UNUSED_ARG(names); - return 1; -#else return perlsio_binmode(fp, iotype, mode); -#endif } PerlIO * @@ -366,67 +356,6 @@ PerlIO_tmpfile(void) #else /* PERLIO_IS_STDIO */ -#ifdef USE_SFIO - -#undef HAS_FSETPOS -#undef HAS_FGETPOS - -/* - * This section is just to make sure these functions get pulled in from - * libsfio.a - */ - -#undef PerlIO_tmpfile -PerlIO * -PerlIO_tmpfile(void) -{ - return sftmp(0); -} - -void -PerlIO_init(pTHX) -{ - PERL_UNUSED_CONTEXT; - /* - * Force this file to be included in perl binary. Which allows this - * file to force inclusion of other functions that may be required by - * loadable extensions e.g. for FileHandle::tmpfile - */ - - /* - * Hack sfio does its own 'autoflush' on stdout in common cases. Flush - * results in a lot of lseek()s to regular files and lot of small - * writes to pipes. - */ - sfset(sfstdout, SF_SHARE, 0); -} - -/* This is not the reverse of PerlIO_exportFILE(), PerlIO_releaseFILE() is. */ -PerlIO * -PerlIO_importFILE(FILE *stdio, const char *mode) -{ - const int fd = fileno(stdio); - if (!mode || !*mode) { - mode = "r+"; - } - return PerlIO_fdopen(fd, mode); -} - -FILE * -PerlIO_findFILE(PerlIO *pio) -{ - const int fd = PerlIO_fileno(pio); - FILE * f = fdopen(fd, "r+"); - PerlIO_flush(pio); - if (!f && errno == EINVAL) - f = fdopen(fd, "w"); - if (!f && errno == EINVAL) - f = fdopen(fd, "r"); - return f; -} - - -#else /* USE_SFIO */ /*======================================================================================*/ /* * Implement all the PerlIO interface ourselves. @@ -5063,7 +4992,6 @@ PerlIO_tmpfile(void) #undef HAS_FSETPOS #undef HAS_FGETPOS -#endif /* USE_SFIO */ #endif /* PERLIO_IS_STDIO */ /*======================================================================================*/ @@ -5166,7 +5094,7 @@ PerlIO_getpos(PerlIO *f, SV *pos) } #endif -#if (defined(PERLIO_IS_STDIO) || !defined(USE_SFIO)) && !defined(HAS_VPRINTF) +#if !defined(HAS_VPRINTF) int vprintf(char *pat, char *args) @@ -21,13 +21,7 @@ USE_PERLIO - The primary Configure variable that enables PerlIO. If USE_PERLIO is _NOT_ set then USE_STDIO above will be set to be conservative. - If USE_PERLIO is set - then there are two modes determined by USE_SFIO: - - USE_SFIO - If set causes PerlIO_xxx() to be #define-d onto sfio functions. - A backward compatibility mode for some specialist applications. - - If USE_SFIO is not set then PerlIO_xxx() are real functions + PerlIO_xxx() are real functions defined in perlio.c which implement extra functionality required for utf8 support. @@ -80,11 +74,6 @@ #ifdef PERLIO_IS_STDIO /* #define PerlIO_xxxx() as equivalent stdio function */ #include "perlsdio.h" -#else /* PERLIO_IS_STDIO */ -#ifdef USE_SFIO -/* #define PerlIO_xxxx() as equivalent sfio function */ -#include "perlsfio.h" -#endif /* USE_SFIO */ #endif /* PERLIO_IS_STDIO */ #ifndef PerlIO diff --git a/perlsfio.h b/perlsfio.h deleted file mode 100644 index 05c81a6fa4..0000000000 --- a/perlsfio.h +++ /dev/null @@ -1,83 +0,0 @@ -/* perlsfio.h - * - * Copyright (C) 1996, 1999, 2000, 2001, 2002, 2003, 2005, 2007, - * 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. - * - */ - -/* The next #ifdef should be redundant if Configure behaves ... */ -#ifndef FILE -#define FILE FILE -#endif -#ifdef I_SFIO -#include <sfio.h> -#endif - -/* sfio 2000 changed _stdopen to _stdfdopen */ -#if SFIO_VERSION >= 20000101L -#define _stdopen _stdfdopen -#endif - -extern Sfio_t* _stdopen _ARG_((int, const char*)); -extern int _stdprintf _ARG_((const char*, ...)); - -#define PerlIO Sfio_t -#define PerlIO_stderr() sfstderr -#define PerlIO_stdout() sfstdout -#define PerlIO_stdin() sfstdin - -#define PerlIO_isutf8(f) 0 - -#define PerlIO_printf sfprintf -#define PerlIO_stdoutf _stdprintf -#define PerlIO_vprintf(f,fmt,a) sfvprintf(f,fmt,a) -#define PerlIO_read(f,buf,count) sfread(f,buf,count) -#define PerlIO_write(f,buf,count) sfwrite(f,buf,count) -#define PerlIO_open(path,mode) sfopen(NULL,path,mode) -#define PerlIO_fdopen(fd,mode) _stdopen(fd,mode) -#define PerlIO_reopen(path,mode,f) sfopen(f,path,mode) -#define PerlIO_close(f) sfclose(f) -#define PerlIO_puts(f,s) sfputr(f,s,-1) -#define PerlIO_putc(f,c) sfputc(f,c) -#define PerlIO_ungetc(f,c) sfungetc(f,c) -#define PerlIO_getc(f) sfgetc(f) -#define PerlIO_eof(f) sfeof(f) -#define PerlIO_error(f) sferror(f) -#define PerlIO_fileno(f) sffileno(f) -#define PerlIO_clearerr(f) sfclrerr(f) -#define PerlIO_flush(f) sfsync(f) -#define PerlIO_tell(f) sftell(f) -#define PerlIO_seek(f,o,w) sfseek(f,o,w) -#define PerlIO_rewind(f) (void) sfseek((f),0L,0) -#define PerlIO_tmpfile() sftmp(0) -#define PerlIO_exportFILE(f,fl) Perl_croak(aTHX_ "Export to FILE * unimplemented") -#define PerlIO_releaseFILE(p,f) Perl_croak(aTHX_ "Release of FILE * unimplemented") - -#define PerlIO_setlinebuf(f) sfset(f,SF_LINE,1) - -/* Now our interface to equivalent of Configure's FILE_xxx macros */ - -#define PerlIO_has_cntptr(f) 1 -#define PerlIO_get_ptr(f) ((f)->next) -#define PerlIO_get_cnt(f) ((f)->endr - (f)->next) -#define PerlIO_canset_cnt(f) 1 -#define PerlIO_fast_gets(f) 1 -#define PerlIO_set_ptrcnt(f,p,c) STMT_START {(f)->next = (unsigned char *)(p); assert(PerlIO_get_cnt(f) == (c));} STMT_END -#define PerlIO_set_cnt(f,c) STMT_START {(f)->next = (f)->endr - (c);} STMT_END - -#define PerlIO_has_base(f) 1 -#define PerlIO_get_base(f) ((f)->data) -#define PerlIO_get_bufsiz(f) ((f)->endr - (f)->data) - -/* - * Local variables: - * c-indentation-style: bsd - * c-basic-offset: 4 - * indent-tabs-mode: nil - * End: - * - * ex: set ts=8 sts=4 sw=4 et: - */ diff --git a/pod/perlapio.pod b/pod/perlapio.pod index e130ed8fa0..a7f3cc879b 100644 --- a/pod/perlapio.pod +++ b/pod/perlapio.pod @@ -90,14 +90,7 @@ functions which call stdio. In this case I<only> PerlIO * is a FILE *. This has been the default implementation since the abstraction was introduced in perl5.003_02. -=item 2. USE_SFIO - -A "legacy" implementation in terms of the "sfio" library. Used for -some specialist applications on Unix machines ("sfio" is not widely -ported away from Unix). Most of above are #define'd to the sfio -functions. PerlIO * is in this case Sfio_t *. - -=item 3. USE_PERLIO +=item 2. USE_PERLIO Introduced just after perl5.7.0, this is a re-implementation of the above abstraction which allows perl more control over how IO is done diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index 72b7c7ddec..69423d0b9d 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -7883,8 +7883,7 @@ on this. Note that C<sysopen> depends on the fdopen() C library function. On many Unix systems, fdopen() is known to fail when file descriptors exceed a certain value, typically 255. If you need more file -descriptors than that, consider rebuilding Perl to use the C<sfio> -library, or perhaps using the POSIX::open() function. +descriptors than that, consider using the POSIX::open() function. See L<perlopentut> for a kinder, gentler explanation of opening files. diff --git a/pod/perliol.pod b/pod/perliol.pod index a1ac2f0f33..b01b10e6d2 100644 --- a/pod/perliol.pod +++ b/pod/perliol.pod @@ -10,8 +10,7 @@ perliol - C API for Perl's implementation of IO in Layers. =head1 DESCRIPTION This document describes the behavior and implementation of the PerlIO -abstraction described in L<perlapio> when C<USE_PERLIO> is defined (and -C<USE_SFIO> is not). +abstraction described in L<perlapio> when C<USE_PERLIO> is defined. =head2 History and Background @@ -3595,7 +3595,7 @@ S_check_type_and_open(pTHX_ SV *name) return NULL; } -#if !defined(PERLIO_IS_STDIO) && !defined(USE_SFIO) +#if !defined(PERLIO_IS_STDIO) return PerlIO_openn(aTHX_ ":", PERL_SCRIPT_MODE, -1, 0, 0, NULL, 1, &name); #else return PerlIO_open(p, PERL_SCRIPT_MODE); @@ -7990,7 +7990,7 @@ PERL_CALLCONV char* Perl_sv_collxfrm_flags(pTHX_ SV *const sv, STRLEN *const nxp assert(sv); assert(nxp) #endif -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) PERL_CALLCONV void Perl_PerlIO_clearerr(pTHX_ PerlIO *f); PERL_CALLCONV int Perl_PerlIO_close(pTHX_ PerlIO *f); PERL_CALLCONV int Perl_PerlIO_eof(pTHX_ PerlIO *f); diff --git a/t/io/fflush.t b/t/io/fflush.t index 4570f891b9..0bbfa545e6 100644 --- a/t/io/fflush.t +++ b/t/io/fflush.t @@ -19,12 +19,11 @@ use strict; # it here too or expect test gratuitous test failures. my $useperlio = defined $Config{useperlio} ? $Config{useperlio} eq 'define' ? 1 : 0 : 0; my $fflushNULL = defined $Config{fflushNULL} ? $Config{fflushNULL} eq 'define' ? 1 : 0 : 0; -my $d_sfio = defined $Config{d_sfio} ? $Config{d_sfio} eq 'define' ? 1 : 0 : 0; my $fflushall = defined $Config{fflushall} ? $Config{fflushall} eq 'define' ? 1 : 0 : 0; my $d_fork = defined $Config{d_fork} ? $Config{d_fork} eq 'define' ? 1 : 0 : 0; skip_all('fflush(NULL) or equivalent not available') - unless $useperlio || $fflushNULL || $d_sfio || $fflushall; + unless $useperlio || $fflushNULL || $fflushall; plan(tests => 7); diff --git a/t/io/pipe.t b/t/io/pipe.t index 50d589dc85..fdd8b992bf 100644 --- a/t/io/pipe.t +++ b/t/io/pipe.t @@ -147,11 +147,10 @@ SKIP: { if $^O eq 'VMS'; SKIP: { - # Sfio doesn't report failure when closing a broken pipe + # POSIX-BC doesn't report failure when closing a broken pipe # that has pending output. Go figure. - # Nor does POSIX-BC. skip "Won't report failure on broken pipe", 1 - if $Config{d_sfio} || $^O eq 'posix-bc'; + if $^O eq 'posix-bc'; local $SIG{PIPE} = 'IGNORE'; open NIL, qq{|$Perl -e "exit 0"} or die "open failed: $!"; diff --git a/t/op/lfs.t b/t/op/lfs.t index f06d19261c..acf9fe801f 100644 --- a/t/op/lfs.t +++ b/t/op/lfs.t @@ -1,4 +1,4 @@ -# NOTE: this file tests how large files (>2GB) work with perlio (stdio/sfio). +# NOTE: this file tests how large files (>2GB) work with perlio (or stdio). # sysopen(), sysseek(), syswrite(), sysread() are tested in t/lib/syslfs.t. # If you modify/add tests here, remember to update also ext/Fcntl/t/syslfs.t. diff --git a/t/op/sprintf.t b/t/op/sprintf.t index 372ca90eb7..f4cbb49da6 100644 --- a/t/op/sprintf.t +++ b/t/op/sprintf.t @@ -389,8 +389,8 @@ __END__ >%.0f< >0< >0< >%.0f< >2**38< >274877906944< >Should have exact int'l rep'n< >%.0f< >0.1< >0< ->%.0f< >0.6< >1< >Known to fail with sfio, (irix|nonstop-ux|powerux); -DHAS_LDBL_SPRINTF_BUG may fix< ->%.0f< >-0.6< >-1< >Known to fail with sfio, (irix|nonstop-ux|powerux); -DHAS_LDBL_SPRINTF_BUG may fix< +>%.0f< >0.6< >1< >Known to fail with (irix|nonstop-ux|powerux); -DHAS_LDBL_SPRINTF_BUG may fix< +>%.0f< >-0.6< >-1< >Known to fail with (irix|nonstop-ux|powerux); -DHAS_LDBL_SPRINTF_BUG may fix< >%.0f< >1.6< >2< >%.0f< >-1.6< >-2< >%.0f< >1< >1< diff --git a/universal.c b/universal.c index 110ab8d9cf..49ef0a43f3 100644 --- a/universal.c +++ b/universal.c @@ -29,7 +29,7 @@ #define PERL_IN_UNIVERSAL_C #include "perl.h" -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) #include "perliol.h" /* For the PERLIO_F_XXX */ #endif @@ -1026,7 +1026,7 @@ XS(XS_PerlIO_get_layers) dXSARGS; if (items < 1 || items % 2 == 0) croak_xs_usage(cv, "filehandle[,args]"); -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) { SV * sv; GV * gv; @@ -26,7 +26,7 @@ #include "perl.h" #include "reentr.h" -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) #include "perliol.h" /* For PerlIOUnix_refcnt */ #endif @@ -1343,17 +1343,10 @@ Perl_write_to_stderr(pTHX_ SV* msv) Perl_magic_methcall(aTHX_ MUTABLE_SV(io), mg, SV_CONST(PRINT), G_SCALAR | G_DISCARD | G_WRITING_TO_STDERR, 1, msv); else { -#ifdef USE_SFIO - /* SFIO can really mess with your errno */ - dSAVE_ERRNO; -#endif PerlIO * const serr = Perl_error_log; do_print(msv, serr); (void)PerlIO_flush(serr); -#ifdef USE_SFIO - RESTORE_ERRNO; -#endif } } @@ -2728,7 +2721,7 @@ Perl_my_pclose(pTHX_ PerlIO *ptr) SvREFCNT_dec(*svp); *svp = NULL; -#if defined(USE_PERLIO) && !defined(USE_SFIO) +#if defined(USE_PERLIO) /* Find out whether the refcount is low enough for us to wait for the child proc without blocking. */ should_wait = PerlIOUnix_refcnt(fd) == 1 && pid > 0; @@ -3317,7 +3310,7 @@ Perl_get_vtbl(pTHX_ int vtbl_id) I32 Perl_my_fflush_all(pTHX) { -#if defined(USE_PERLIO) || defined(FFLUSH_NULL) || defined(USE_SFIO) +#if defined(USE_PERLIO) || defined(FFLUSH_NULL) return PerlIO_flush(NULL); #else # if defined(HAS__FWALK) diff --git a/win32/Makefile b/win32/Makefile index c8aaea2b8c..a4a4e90cb7 100644 --- a/win32/Makefile +++ b/win32/Makefile @@ -748,7 +748,6 @@ CORE_NOCFG_H = \ ..\perl.h \ ..\perlapi.h \ ..\perlsdio.h \ - ..\perlsfio.h \ ..\perly.h \ ..\pp.h \ ..\proto.h \ diff --git a/win32/Makefile.ce b/win32/Makefile.ce index 6a76da93d9..bdaeef5f48 100644 --- a/win32/Makefile.ce +++ b/win32/Makefile.ce @@ -702,7 +702,6 @@ CORE_NOCFG_H = \ ..\perl.h \ ..\perlapi.h \ ..\perlsdio.h \ - ..\perlsfio.h \ ..\perly.h \ ..\pp.h \ ..\proto.h \ diff --git a/win32/makefile.mk b/win32/makefile.mk index c077544695..82599a8345 100644 --- a/win32/makefile.mk +++ b/win32/makefile.mk @@ -856,7 +856,6 @@ CORE_NOCFG_H = \ ..\perl.h \ ..\perlapi.h \ ..\perlsdio.h \ - ..\perlsfio.h \ ..\perly.h \ ..\pp.h \ ..\proto.h \ diff --git a/win32/win32.c b/win32/win32.c index bf91b76226..c708439c7c 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -42,7 +42,7 @@ /* #include "config.h" */ -#if !defined(PERLIO_IS_STDIO) && !defined(USE_SFIO) +#if !defined(PERLIO_IS_STDIO) # define PerlIO FILE #endif diff --git a/win32/wince.c b/win32/wince.c index 15d80f9083..63147cce3f 100644 --- a/win32/wince.c +++ b/win32/wince.c @@ -13,7 +13,7 @@ #define PERLIO_NOT_STDIO 0 -#if !defined(PERLIO_IS_STDIO) && !defined(USE_SFIO) +#if !defined(PERLIO_IS_STDIO) #define PerlIO FILE #endif |