This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Integrate mainline.
authorNick Ing-Simmons <nik@tiuk.ti.com>
Wed, 20 Jun 2001 08:56:39 +0000 (08:56 +0000)
committerNick Ing-Simmons <nik@tiuk.ti.com>
Wed, 20 Jun 2001 08:56:39 +0000 (08:56 +0000)
p4raw-id: //depot/perlio@10745

33 files changed:
AUTHORS
Configure
Makefile.micro
Porting/Glossary
Porting/config.sh
Porting/config_H
config_h.SH
configure.com
embed.pl
ext/POSIX/POSIX.t
lib/warnings.t
perlapi.c
perlio.c
pod/perldiag.pod
pod/perlfunc.pod
pod/perltoc.pod
t/TEST
t/lib/1_compile.t
t/lib/warnings/pp
t/op/pat.t
toke.c
uconfig.h
uconfig.sh
util.c
vms/descrip_mms.template
vms/test.com
vos/config.alpha.def
vos/config.alpha.h
vos/config.ga.def
vos/config.ga.h
win32/config_H.bc
win32/config_H.gc
win32/config_H.vc

diff --git a/AUTHORS b/AUTHORS
index 24cf7c9..8934ab3 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -43,6 +43,7 @@ Anthony David                  <adavid@netinfo.com.au>
 Anton Berezin                  <tobez@tobez.org>
 Art Green                      <Art_Green@mercmarine.com>
 Artur                          <artur@vogon-solutions.com>
+Artur Bergman                  <artur@contiller.se>
 Barrie Slaymaker               <barries@slaysys.com>
 Barry Friedman
 Ben Tilly                      <ben_tilly@hotmail.com>
@@ -67,6 +68,7 @@ Brian Grossman
 Brian Harrison                 <brie@corp.home.net>
 Brian Jepson                   <bjepson@home.com>
 Brian Katzung
+Brian McCauley                 <nobull@mail.com>
 Brian Reichert                 <reichert@internet.com>
 Brian S. Cashman               <bsc@umich.edu>
 Bruce Barnett                  <barnett@grymoire.crd.ge.com>
@@ -161,6 +163,7 @@ Ed Mooring                     <mooring@Lynx.COM>
 Ed Peschko                     <epeschko@den-mdev1>
 Edward Avis                    <epa98@doc.ic.ac.uk>
 Edward Peschko                 <edwardp@excitehome.net>
+Edward Moy                     <emoy@apple.com>
 Elaine -HFB- Ashton            <elaine@chaos.wustl.edu>
 Eric Arnold                    <eric.arnold@sun.com>
 Eric Bartley                   <bartley@icd.cc.purdue.edu>
@@ -203,12 +206,14 @@ Greg Ward                      <gward@ase.com>
 Gregory Martin Pfeil           <pfeilgm@technomadic.org>
 Guenter Schmidt                <gsc@bruker.de>
 Guido Flohr                    <gufl0000@stud.uni-sb.de>
+Guruprasad S                   <SGURUPRASAD@novell.com>
 Gurusamy Sarathy               <gsar@activestate.com>
 Gustaf Neumann
 Guy Decoux                     <decoux@moulon.inra.fr>
 Gwyn Judd                      <b.judd@xtra.co.nz>
 H.J. Lu                        <hjl@nynexst.com>
 H.Merijn Brand                 <h.m.brand@hccnet.nl>
+Hal Morris                     <hom00@utsglobal.com>
 Hal Pomeranz                   <pomeranz@netcom.com>
 Hallvard B Furuseth            <h.b.furuseth@usit.uio.no>
 Hannu Napari                   <Hannu.Napari@hut.fi>
@@ -308,6 +313,7 @@ John Salinas                   <jsalinas@cray.com>
 John Stoffel                   <jfs@fluent.com>
 John Tobey                     <jtobey@john-edwin-tobey.org>
 Jon Eveland                    <jweveland@yahoo.com>
+Jon Gunnip                     <jongunnip@hotmail.com>
 Jon Orwant                     <orwant@oreilly.com>
 Jonathan Biggar                <jon@sems.com>
 Jonathan D Johnston            <jdjohnston2@juno.com>
@@ -515,6 +521,7 @@ Samuli K
 Scott Bronson                  <bronson@rinspin.com>
 Scott Gifford                  <sgifford@tir.com>
 Scott Henry                    <scotth@sgi.com>
+Scott L. Miller                <Scott.L.Miller@Compaq.com>
 Sean Robinson                  <robinson_s@sc.maricopa.edu>
 Sean Sheedy                    <seans@ncube.com>
 Sebastien Barre                <Sebastien.Barre@utc.fr>
@@ -556,6 +563,7 @@ Thomas Cont
 Thomas Dorner                  <Thomas.Dorner@start.de>
 Thomas Kofler
 Thomas K├Ânig
+Thomas Wegner                  <wegner_thomas@yahoo.com>
 Tim Adye                       <T.J.Adye@rl.ac.uk>
 Tim Ayers                      <tayers@bridge.com>
 Tim Bunce                      <Tim.Bunce@ig.co.uk>
index e7d4ced..2f76d15 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
 
 # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
 #
-# Generated on Tue Jun 19 02:14:42 EET DST 2001 [metaconfig 3.0 PL70]
+# Generated on Wed Jun 20 08:47:08 EET DST 2001 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -485,7 +485,6 @@ d_seekdir=''
 d_telldir=''
 d_readlink=''
 d_readv=''
-d_realpath=''
 d_recvmsg=''
 d_rename=''
 d_rmdir=''
@@ -8448,6 +8447,13 @@ int main()
        Gconvert((DOUBLETYPE)123.456, 8, 0, buf); 
        checkit("123.456", buf);
 
+        /* Testing of 1e+129 in bigintpm.t must not get extra '.' here. */
+        Gconvert((DOUBLETYPE)1e30, 8, 0, buf);
+        if (strlen(buf) > 5)
+            checkit("1e+030", buf); /* for Microsoft */
+        else
+            checkit("1e+30", buf);
+
        exit(0);
 }
 EOP
@@ -11400,10 +11406,6 @@ eval $inlibc
 set readv d_readv
 eval $inlibc
 
-: see if realpath exists
-set realpath d_realpath
-eval $inlibc
-
 : see if recvmsg exists
 set recvmsg d_recvmsg
 eval $inlibc
@@ -13791,10 +13793,11 @@ if $test "X$fflushNULL" = X -o "X$fflushall" = X; then
     output=''
     set try -DTRY_FPUTC
     if eval $compile; then
-           $run ./try 2>/dev/null
            $rm -f try.out
+           $run ./try 2>/dev/null
+           code="$?"
            $from try.out
-           if $test ! -s try.out -a "X$?" = X42; then
+           if $test ! -s try.out -a "X$code" = X42; then
                output=-DTRY_FPUTC
            fi
     fi
@@ -13802,10 +13805,11 @@ if $test "X$fflushNULL" = X -o "X$fflushall" = X; then
     '')
            set try -DTRY_FPRINTF
            if eval $compile; then
-                   $run ./try 2>/dev/null
                    $rm -f try.out
+                   $run ./try 2>/dev/null
+                   code="$?"
                    $from try.out
-                   if $test ! -s try.out -a "X$?" = X42; then
+                   if $test ! -s try.out -a "X$code" = X42; then
                        output=-DTRY_FPRINTF
                    fi
            fi
@@ -13816,9 +13820,9 @@ fi
 case "$fflushNULL" in
 '')    set try -DTRY_FFLUSH_NULL $output
        if eval $compile; then
+               $rm -f try.out
                $run ./try 2>/dev/null
                code="$?"
-               $rm -f try.out
                $from try.out
                if $test -s try.out -a "X$code" = X42; then
                        fflushNULL="`$cat try.out`"
@@ -13943,7 +13947,9 @@ EOM
 EOM
                                $rm -f try.out
                                $run ./try 2>/dev/null
-                               if $test -s try.out -a "X$?" = X42; then
+                               code=$?
+                               $from try.out
+                               if $test -s try.out -a "X$code" = X42; then
                                        fflushall="`$cat try.out`"
                                fi
                        fi
@@ -16706,7 +16712,6 @@ d_quad='$d_quad'
 d_readdir='$d_readdir'
 d_readlink='$d_readlink'
 d_readv='$d_readv'
-d_realpath='$d_realpath'
 d_recvmsg='$d_recvmsg'
 d_rename='$d_rename'
 d_rewinddir='$d_rewinddir'
index 4ed2a1c..78113aa 100644 (file)
@@ -16,7 +16,7 @@ O = uav$(_O) udeb$(_O) udoio$(_O) udoop$(_O) udump$(_O) \
        uregcomp$(_O) uregexec$(_O) urun$(_O) \
        uscope$(_O) usv$(_O) utaint$(_O) utoke$(_O) \
        unumeric$(_O) ulocale$(_O) \
-       uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O) \
+       uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O)
 
 microperl:     $(O)
        $(LD) -o $@ $(O) $(LIBS)
index 26e6e4c..fa87e63 100644 (file)
@@ -1258,10 +1258,6 @@ d_readv (d_readv.U):
        This variable conditionally defines the HAS_READV symbol, which
        indicates to the C program that the readv() routine is available.
 
-d_realpath (d_realpath.U):
-       This variable conditionally defines the HAS_REALPATH symbol, which
-       indicates to the C program that the realpath() routine is available.
-
 d_recvmsg (d_recvmsg.U):
        This variable conditionally defines the HAS_RECVMSG symbol, which
        indicates to the C program that the recvmsg() routine is available.
index b804e95..5dc8a7e 100644 (file)
@@ -8,7 +8,7 @@
 
 # Package name      : perl5
 # Source directory  : .
-# Configuration time: Fri Jun 15 02:15:37 EET DST 2001
+# Configuration time: Wed Jun 20 08:48:18 EET DST 2001
 # Configured by     : jhi
 # Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
 
@@ -63,7 +63,7 @@ ccsymbols='__alpha=1 __LANGUAGE_C__=1 __osf__=1 __unix__=1 _LONGLONG=1 _SYSTYPE_
 ccversion='V5.6-082'
 cf_by='jhi'
 cf_email='yourname@yourhost.yourplace.com'
-cf_time='Fri Jun 15 02:15:37 EET DST 2001'
+cf_time='Wed Jun 20 08:48:18 EET DST 2001'
 charsize='1'
 chgrp=''
 chmod=''
@@ -85,7 +85,7 @@ cppstdin='cppstdin'
 cppsymbols='_AES_SOURCE=1 __alpha=1 __ALPHA=1 _ANSI_C_SOURCE=1 __LANGUAGE_C__=1 _LONGLONG=1 __osf__=1 _OSF_SOURCE=1 _POSIX_C_SOURCE=199506 _POSIX_SOURCE=1 _REENTRANT=1 __STDC__=1 _SYSTYPE_BSD=1 __unix__=1 _XOPEN_SOURCE=1'
 cryptlib=''
 csh='csh'
-d_Gconvert='gcvt((x),(n),(b))'
+d_Gconvert='sprintf((b),"%.*g",(n),(x))'
 d_PRIEUldbl='define'
 d_PRIFUldbl='define'
 d_PRIGUldbl='define'
@@ -287,7 +287,6 @@ d_quad='define'
 d_readdir='define'
 d_readlink='define'
 d_readv='define'
-d_realpath='define'
 d_recvmsg='define'
 d_rename='define'
 d_rewinddir='define'
@@ -438,7 +437,7 @@ eunicefix=':'
 exe_ext=''
 expr='expr'
 extensions='B ByteLoader Cwd DB_File Data/Dumper Devel/DProf Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call IO IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX PerlIO/Scalar PerlIO/Via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Thread Time/HiRes Time/Piece XS/Typemap attrs re Errno'
-fflushNULL='undef'
+fflushNULL='define'
 fflushall='undef'
 find=''
 firstmakefile='makefile'
@@ -670,7 +669,7 @@ patchlevel='7'
 path_sep=':'
 perl5='/u/vieraat/vieraat/jhi/Perl/bin/perl'
 perl=''
-perl_patchlevel='10575'
+perl_patchlevel='10721'
 perladmin='yourname@yourhost.yourplace.com'
 perllibs='-lm -liconv -lutil -lpthread -lexc'
 perlpath='/opt/perl/bin/perl'
@@ -870,7 +869,7 @@ PERL_SUBVERSION=1
 PERL_API_REVISION=5
 PERL_API_VERSION=5
 PERL_API_SUBVERSION=0
-PERL_PATCHLEVEL=10575
+PERL_PATCHLEVEL=10721
 PERL_CONFIG_SH=true
 # Variables propagated from previous config.sh file.
 pp_sys_cflags='ccflags="$ccflags -DNO_EFF_ONLY_OK"'
index 9aea69c..b2c523d 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Package name      : perl5
  * Source directory  : .
- * Configuration time: Fri Jun 15 02:15:37 EET DST 2001
+ * Configuration time: Wed Jun 20 08:48:18 EET DST 2001
  * Configured by     : jhi
  * Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
  */
  *     4 and 8. The default is eight, for safety.
  */
 #if defined(USE_CROSS_COMPILE) || defined(MULTIARCH)
-#define MEM_ALIGNBYTES 8
+#  define MEM_ALIGNBYTES 8
 #else
 #define MEM_ALIGNBYTES 8
 #endif
  *             d_Gconvert='sprintf((b),"%.*g",(n),(x))'
  *     The last two assume trailing zeros should not be kept.
  */
-#define Gconvert(x,n,t,b) gcvt((x),(n),(b))
+#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x))
 
 /* HAS_GETCWD:
  *     This symbol, if defined, indicates that the getcwd routine is
  *     Note that if fflushNULL is defined, fflushall will not
  *     even be probed for and will be left undefined.
  */
-/*#define      FFLUSH_NULL             / **/
+#define        FFLUSH_NULL             /**/
 /*#define      FFLUSH_ALL              / **/
 
 /* Fpos_t:
  */
 /*#define      HAS_FLOCK_PROTO / **/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-#define HAS_REALPATH           /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index 35bfb1b..235369c 100644 (file)
@@ -3392,12 +3392,6 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_flockproto HAS_FLOCK_PROTO /**/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-#$d_realpath HAS_REALPATH              /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index d5de200..a7459b0 100644 (file)
@@ -2149,10 +2149,6 @@ $   ans = F$EDIT(ans,"TRIM,COMPRESS,LOWERCASE")
 $   IF ans.eqs."decc" then Has_Dec_C_Sockets = "T"
 $   IF ans.eqs."socketshr" then Has_socketshr = "T"
 $ ENDIF
-$ IF Has_Dec_C_Sockets .or. Has_socketshr
-$ THEN
-$   static_ext = f$edit(static_ext+" "+"Socket","trim,compress")
-$ ENDIF
 $!
 $!
 $! Ask if they want to build with VMS_DEBUG perl
@@ -2485,7 +2481,10 @@ $ dflt = dflt - "GDBM_File"           ! needs porting/special library
 $ dflt = dflt - "IPC/SysV"            ! needs to be ported
 $ dflt = dflt - "NDBM_File"           ! needs porting/special library
 $ dflt = dflt - "ODBM_File"           ! needs porting/special library
-$ dflt = dflt - "Socket"              ! on VMS is optional static extension
+$ IF .NOT. Has_socketshr .AND. .NOT. Has_Dec_C_Sockets
+$ THEN
+$   dflt = dflt - "Socket"            ! optional on VMS
+$ ENDIF
 $ dflt = F$EDIT(dflt,"TRIM,COMPRESS")
 $!
 $! Ask for their default list of extensions to build
index 5f44ceb..64e0e5b 100755 (executable)
--- a/embed.pl
+++ b/embed.pl
@@ -2058,7 +2058,7 @@ Apd       |void   |sv_pos_b2u     |SV* sv|I32* offsetp
 Aopd   |char*  |sv_pvn_force   |SV* sv|STRLEN* lp
 Apd    |char*  |sv_pvutf8n_force|SV* sv|STRLEN* lp
 Apd    |char*  |sv_pvbyten_force|SV* sv|STRLEN* lp
-Apd    |int    |sv_realpath    |SV* sv|char *path|STRLEN len
+Apd    |int    |sv_realpath    |SV* sv|char *path|STRLEN maxlen
 Apd    |char*  |sv_reftype     |SV* sv|int ob
 Apd    |void   |sv_replace     |SV* sv|SV* nsv
 Apd    |void   |sv_report_used
index 09bd88c..cf08269 100755 (executable)
@@ -135,5 +135,8 @@ try_strftime(27, "Fri Mar 31 00:00:00 2000 091", 0,0,0, 31,2,100);
 
 $| = 0;
 # The following line assumes buffered output, which may be not true with EMX:
-print '@#!*$@(!@#$' unless ($^O eq 'os2' || $^O eq 'uwin' || $^O eq 'os390');
+print '@#!*$@(!@#$' unless ($^O eq 'os2' || $^O eq 'uwin' || $^O eq 'os390' ||
+                           (defined $ENV{PERLIO} &&
+                            $ENV{PERLIO} eq 'unix' &&
+                            $Config::Config{useperlio}));
 _exit(0);
index 09b41fb..addcea2 100644 (file)
@@ -21,9 +21,9 @@ my @prgs = () ;
 my @w_files = () ;
 
 if (@ARGV)
-  { print "ARGV = [@ARGV]\n" ; @w_files = map { s#^#./pragma/warn/#; $_ } @ARGV }
+  { print "ARGV = [@ARGV]\n" ; @w_files = map { s#^#./lib/warnings/#; $_ } @ARGV }
 else
-  { @w_files = sort glob("pragma/warn/*") }
+  { @w_files = sort glob("lib/warnings/*") }
 
 my $files = 0;
 foreach my $file (@w_files) {
index e910818..8c5901c 100644 (file)
--- a/perlapi.c
+++ b/perlapi.c
@@ -3172,9 +3172,9 @@ Perl_sv_pvbyten_force(pTHXo_ SV* sv, STRLEN* lp)
 
 #undef  Perl_sv_realpath
 int
-Perl_sv_realpath(pTHXo_ SV* sv, char *path, STRLEN len)
+Perl_sv_realpath(pTHXo_ SV* sv, char *path, STRLEN maxlen)
 {
-    return ((CPerlObj*)pPerl)->Perl_sv_realpath(sv, path, len);
+    return ((CPerlObj*)pPerl)->Perl_sv_realpath(sv, path, maxlen);
 }
 
 #undef  Perl_sv_reftype
index 590abf6..c7ea8f1 100644 (file)
--- a/perlio.c
+++ b/perlio.c
@@ -2800,17 +2800,24 @@ PerlIOBuf_unread(PerlIO *f, const void *vbuf, Size_t count)
    if (PerlIOBase(f)->flags & PERLIO_F_RDBUF)
     {
      avail = (b->ptr - b->buf);
+     if (avail > (SSize_t) count)
+      avail = count;
     }
    else
     {
      avail = b->bufsiz;
+     /* Adjust this here to keep a subsequent tell() correct.
+      * (b->ptr - b->buf) *MUST* be an accurate reflection of the amount
+      * unread in this buffer. (See previous part of the if for an example,
+      * or try PERLIO=unix on t/io/tell.t.)
+      */
+     if (avail > (SSize_t) count)
+      avail = count;
      b->end = b->buf + avail;
      b->ptr = b->end;
      PerlIOBase(f)->flags |= PERLIO_F_RDBUF;
-     b->posn -= b->bufsiz;
+     b->posn -= avail;
     }
-   if (avail > (SSize_t) count)
-    avail = count;
    if (avail > 0)
     {
      b->ptr -= avail;
index de8956b..75f9ec0 100644 (file)
@@ -3286,6 +3286,12 @@ assignment or as a subroutine argument for example).
 (F) Your Perl was compiled with B<-D>SETUID_SCRIPTS_ARE_SECURE_NOW, but
 a version of the setuid emulator somehow got run anyway.
 
+=item sv_realpath: %s
+
+(S) You probably used some form of getcwd.  The implementation of
+that functionality detected something odd in your filesystem
+environment and gave up (returning undef).
+
 =item Switch (?(condition)... contains too many branches in regex;
 
 marked by <-- HERE in m/%s/
index 8912301..67c305c 100644 (file)
@@ -2812,19 +2812,25 @@ STDERR:
     print STDOUT "stdout 2\n";
     print STDERR "stderr 2\n";
 
-If you specify C<< '<&=N' >>, where C<N> is a number, then Perl will do an
-equivalent of C's C<fdopen> of that file descriptor; this is more
-parsimonious of file descriptors.  For example:
+If you specify C<< '<&=N' >>, where C<N> is a number, then Perl will
+do an equivalent of C's C<fdopen> of that file descriptor; this is
+more parsimonious of file descriptors.  For example:
 
     open(FILEHANDLE, "<&=$fd")
+
 or
+
     open(FILEHANDLE, "<&=", $fd)
 
-Note that if perl is using the standard C libaries fdopen() then on many UNIX systems,
-fdopen() is known to fail when file descriptors
+Note that if Perl is using the standard C libraries' fdopen() then 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<PerlIO>.
 
+You can see whether Perl has been compiled with PerlIO or not by
+running C<perl -V> and looking for C<useperlio=> line.  If C<useperlio>
+is C<define>, you have PerlIO, otherwise you don't.
+
 If you open a pipe on the command C<'-'>, i.e., either C<'|-'> or C<'-|'>
 with 2-arguments (or 1-argument) form of open(), then
 there is an implicit fork done, and the return value of open is the pid
@@ -5510,7 +5516,7 @@ Does the opposite of a C<shift>.  Or the opposite of a C<push>,
 depending on how you look at it.  Prepends list to the front of the
 array, and returns the new number of elements in the array.
 
-    unshift(ARGV, '-e') unless $ARGV[0] =~ /^-/;
+    unshift(@ARGV, '-e') unless $ARGV[0] =~ /^-/;
 
 Note the LIST is prepended whole, not one element at a time, so the
 prepended elements stay in the same order.  Use C<reverse> to do the
index 1094d8c..0912724 100644 (file)
@@ -3908,7 +3908,7 @@ PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, require_pv, RETVAL,
 Safefree, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, strGE, strGT,
 strLE, strLT, strNE, strnEQ, strnNE, StructCopy, SvCUR, SvCUR_set, SvEND,
 SvGETMAGIC, SvGROW, SvIOK, SvIOKp, SvIOK_notUV, SvIOK_off, SvIOK_on,
-SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVx, SvIVX, SvLEN, SvNIOK,
+SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVX, SvIVx, SvLEN, SvNIOK,
 SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, SvNOK_on, SvNOK_only, SvNV,
 SvNVx, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp, SvPOK_off, SvPOK_on, SvPOK_only,
 SvPOK_only_UTF8, SvPV, SvPVbyte, SvPVbytex, SvPVbytex_force,
@@ -4575,22 +4575,26 @@ I<The Road goes ever on and on, down from the door where it began.>
 
 =item Incompatible Changes
 
+=over 4
+
+=item 64-bit platforms and malloc
+
 =item Future Deprecations
 
+=back
+
 =item Core Enhancements
 
 =item Modules and Pragmata
 
 =over 4
 
-=item New Modules
+=item New Modules and Distribution
 
 =item Updated And Improved Modules and Pragmata
 
 =back
 
-=item Performance Enhancements
-
 =item Utility Changes
 
 =item New Documentation
@@ -4651,6 +4655,8 @@ I<The Road goes ever on and on, down from the door where it began.>
 
 =item Self-tying of Arrays and Hashes Is Forbidden
 
+=item Variable Attributes are not Currently Usable for Tieing
+
 =item Building Extensions Can Fail Because Of Largefiles
 
 =item The Compiler Suite Is Still Experimental
diff --git a/t/TEST b/t/TEST
index 5fcc268..0a63f0e 100755 (executable)
--- a/t/TEST
+++ b/t/TEST
@@ -190,7 +190,8 @@ EOT
                or print "can't deparse '$deparse': $!.\n";
        }
        elsif ($type eq 'perl') {
-           my $run = "./perl $testswitch $switch $utf $test |";
+           my $perl = $ENV{PERL} || './perl';
+           my $run = "$perl $testswitch $switch $utf $test |";
            open(RESULTS,$run) or print "can't run '$run': $!.\n";
        }
        else {
@@ -250,9 +251,11 @@ EOT
        }
        if ($ENV{PERL_3LOG}) {
            my $tpp = $test;
+           $tpp =~ s:^../::;
            $tpp =~ s:/:_:g;
            $tpp =~ s:\.t$::;
-           rename("perl.3log", "perl.3log.$tpp");
+           rename("perl.3log", "perl.3log.$tpp") ||
+               die "rename: perl3.log to perl.3log.$tpp: $!\n";
        }
        $next = $next - 1;
        if ($ok && $next == $max) {
index 29db2cc..027ced1 100644 (file)
@@ -251,6 +251,7 @@ UNIVERSAL
 User::grent
 User::pwent
 XS::Typemap
+attributes
 attrs
 autouse
 base
index 62f054a..83786a0 100644 (file)
@@ -63,7 +63,7 @@ my $b = { 1,2,3};
 EXPECT
 Odd number of elements in hash assignment at - line 3.
 ########
-# pp.c
+# pp_pack.c
 use warnings 'pack' ;
 use warnings 'unpack' ;
 my @a = unpack ("A,A", "22") ;
@@ -85,7 +85,7 @@ my $c = $$a;
 EXPECT
 Use of uninitialized value in scalar dereference at - line 4.
 ########
-# pp.c
+# pp_pack.c
 use warnings 'pack' ;
 sub foo { my $a = "a"; return $a . $a++ . $a++ }
 my $a = pack("p", &foo) ;
@@ -108,16 +108,16 @@ $_ = "\x80  \xff" ;
 reverse ;
 EXPECT
 ########
-# pp.c
+# pp_pack.c
 use warnings 'pack' ;
-print unpack("C", pack("C",   -1)), "\n";
-print unpack("C", pack("C",    0)), "\n";
-print unpack("C", pack("C",  255)), "\n";
-print unpack("C", pack("C",  256)), "\n";
-print unpack("c", pack("c", -129)), "\n";
-print unpack("c", pack("c", -128)), "\n";
-print unpack("c", pack("c",  127)), "\n";
-print unpack("c", pack("c",  128)), "\n";
+print unpack("C", pack("C",   -1)), "\n",
+       unpack("C", pack("C",    0)), "\n",
+       unpack("C", pack("C",  255)), "\n",
+       unpack("C", pack("C",  256)), "\n",
+       unpack("c", pack("c", -129)), "\n",
+       unpack("c", pack("c", -128)), "\n",
+       unpack("c", pack("c",  127)), "\n",
+       unpack("c", pack("c",  128)), "\n";
 no warnings 'pack' ;
 print unpack("C", pack("C",   -1)), "\n";
 print unpack("C", pack("C",    0)), "\n";
@@ -129,9 +129,9 @@ print unpack("c", pack("c",  127)), "\n";
 print unpack("c", pack("c",  128)), "\n";
 EXPECT
 Character in "C" format wrapped at - line 3.
-Character in "C" format wrapped at - line 6.
-Character in "c" format wrapped at - line 7.
-Character in "c" format wrapped at - line 10.
+Character in "C" format wrapped at - line 3.
+Character in "c" format wrapped at - line 3.
+Character in "c" format wrapped at - line 3.
 255
 0
 255
index c59e31f..942e6e6 100755 (executable)
@@ -6,7 +6,7 @@
 
 $| = 1;
 
-print "1..630\n";
+print "1..632\n";
 
 BEGIN {
     chdir 't' if -d 't';
@@ -1765,3 +1765,21 @@ EOT
     print "ok 630\n";
 }
 
+$_ = "foo";
+
+eval <<"EOT"; die if $@;
+  /f
+   o\r
+   o
+   \$
+  /x && print "ok 631\n";
+EOT
+
+eval <<"EOT"; die if $@;
+  /f
+   o
+   o
+   \$\r
+  /x && print "ok 632\n";
+EOT
+
diff --git a/toke.c b/toke.c
index fca0f73..34e2fd4 100644 (file)
--- a/toke.c
+++ b/toke.c
@@ -1374,7 +1374,7 @@ S_scan_const(pTHX_ char *start)
        else if (*s == '$') {
            if (!PL_lex_inpat)  /* not a regexp, so $ must be var */
                break;
-           if (s + 1 < send && !strchr("()| \n\t", s[1]))
+           if (s + 1 < send && !strchr("()| \r\n\t", s[1]))
                break;          /* in regexp, $ might be tail anchor */
        }
 
index 67578fa..4d51056 100644 (file)
--- a/uconfig.h
+++ b/uconfig.h
  *     4 and 8. The default is eight, for safety.
  */
 #if defined(USE_CROSS_COMPILE) || defined(MULTIARCH)
-#define MEM_ALIGNBYTES 8
+#  define MEM_ALIGNBYTES 8
 #else
 #define MEM_ALIGNBYTES 4
 #endif
  */
 /*#define      HAS_FLOCK_PROTO / **/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-/*#define HAS_REALPATH         / **/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index 52e34b7..ca35351 100755 (executable)
@@ -218,7 +218,6 @@ d_quad='undef'
 d_readdir='undef'
 d_readlink='undef'
 d_readv='undef'
-d_realpath='undef'
 d_recvmsg='undef'
 d_rename='undef'
 d_rewinddir='undef'
diff --git a/util.c b/util.c
index 7a7d5f1..1d69fe5 100644 (file)
--- a/util.c
+++ b/util.c
@@ -56,14 +56,14 @@ long lastxycount[MAXXCOUNT][MAXYCOUNT];
 #  define FD_CLOEXEC 1                 /* NeXT needs this */
 #endif
 
-/* paranoid version of system's malloc() */
-
 /* NOTE:  Do not call the next three routines directly.  Use the macros
  * in handy.h, so that we can easily redefine everything to do tracking of
  * allocated hunks back to the original New to track down any memory leaks.
  * XXX This advice seems to be widely ignored :-(   --AD  August 1996.
  */
 
+/* paranoid version of system's malloc() */
+
 Malloc_t
 Perl_safesysmalloc(MEM_SIZE size)
 {
@@ -742,7 +742,7 @@ Perl_fbm_instr(pTHX_ unsigned char *big, register unsigned char *bigend, SV *lit
  */
 
 /* If SvTAIL is actually due to \Z or \z, this gives false positives
-   if PL_multiline.  In fact if !PL_multiline the autoritative answer
+   if PL_multiline.  In fact if !PL_multiline the authoritative answer
    is not supported yet. */
 
 char *
@@ -781,8 +781,14 @@ Perl_screaminstr(pTHX_ SV *bigstr, SV *littlestr, I32 start_shift, I32 end_shift
     /* The value of pos we can stop at: */
     stop_pos = SvCUR(bigstr) - end_shift - (SvCUR(littlestr) - 1 - previous);
     if (previous + start_shift > stop_pos) {
+/*
+  stop_pos does not include SvTAIL in the count, so this check is incorrect
+  (I think) - see [ID 20010618.006] and t/op/study.t. HVDS 2001/06/19
+*/
+#if 0
        if (previous + start_shift == stop_pos + 1) /* A fake '\n'? */
            goto check_tail;
+#endif
        return Nullch;
     }
     while (pos < previous + start_shift) {
@@ -3618,6 +3624,9 @@ Perl_sv_getcwd(pTHX_ register SV *sv)
 
     SvGROW(sv, 128);
     while ((getcwd(SvPVX(sv), SvLEN(sv)-1) == NULL) && errno == ERANGE) {
+        if (SvLEN(sv) + 128 >= MAXPATHLEN) {
+            SV_CWD_RETURN_UNDEF;
+       }
         SvGROW(sv, SvLEN(sv) + 128);
     }
     SvCUR_set(sv, strlen(SvPVX(sv)));
@@ -3681,6 +3690,10 @@ Perl_sv_getcwd(pTHX_ register SV *sv)
             SV_CWD_RETURN_UNDEF;
         }
 
+        if (pathlen + namelen + 1 >= MAXPATHLEN) {
+            SV_CWD_RETURN_UNDEF;
+       }
+
         SvGROW(sv, pathlen + namelen + 1);
 
         if (pathlen) {
@@ -3731,62 +3744,44 @@ Perl_sv_getcwd(pTHX_ register SV *sv)
 /*
 =for apidoc sv_realpath
 
-Wrap or emulate realpath(3).
+Emulate realpath(3).
+
+The real realpath() is not used because it's a known can of worms.
+We may have bugs but hey, they are our very own.
 
 =cut
  */
 int
-Perl_sv_realpath(pTHX_ SV *sv, char *path, STRLEN len)
+Perl_sv_realpath(pTHX_ SV *sv, char *path, STRLEN maxlen)
 {
 #ifndef PERL_MICRO
-    char name[MAXPATHLEN] = { 0 }, *s;
+    char name[MAXPATHLEN]    = { 0 };
+    char dotdots[MAXPATHLEN] = { 0 };
+    char *s;
     STRLEN pathlen, namelen;
+    DIR *parent;
+    Direntry_t *dp;
+    struct stat cst, pst, tst;
 
-    /* Don't use strlen() to avoid running off the end. */
-    s = memchr(path, '\0', MAXPATHLEN);
-    pathlen = s ? s - path : MAXPATHLEN;
-
-#ifdef HAS_REALPATH
-
-    /* Be paranoid about the use of realpath(),
-     * it is an infamous source of buffer overruns. */
-
-    /* Is the source buffer too long? */
-    if (pathlen == MAXPATHLEN) {
-        Perl_warn(aTHX_ "sv_realpath: realpath(\"%s\"): %c= (MAXPATHLEN = %d)",
-                  path, s ? '=' : '>', MAXPATHLEN);
-        SV_CWD_RETURN_UNDEF;
-    }
-
-    /* Here goes nothing. */
-    if (realpath(path, name) == NULL) {
-        Perl_warn(aTHX_ "sv_realpath: realpath(\"%s\"): %s",
-                  path, Strerror(errno));
+    if (!sv || !path || !maxlen) {
+        Perl_warn(aTHX_ "sv_realpath: realpath(0x%x, 0x%x, "")",
+                  sv, path, maxlen);
         SV_CWD_RETURN_UNDEF;
     }
 
-    /* Is the destination buffer too long?
+    /* Is the source buffer too long?
      * Don't use strlen() to avoid running off the end. */
-    s = memchr(name, '\0', MAXPATHLEN);
-    namelen = s ? s - name : MAXPATHLEN;
-    if (namelen == MAXPATHLEN) {
-        Perl_warn(aTHX_ "sv_realpath: realpath(\"%s\"): %c= (MAXPATHLEN = %d)",
-                  path, s ? '=' : '>', MAXPATHLEN);
+    if (maxlen >= MAXPATHLEN)
+        pathlen = maxlen;
+    else {
+        s = memchr(path, '\0', MAXPATHLEN);
+       pathlen = s ? s - path : MAXPATHLEN;
+    }
+    if (pathlen >= MAXPATHLEN) {
+        Perl_warn(aTHX_ "sv_realpath: source too large");
         SV_CWD_RETURN_UNDEF;
     }
 
-    /* The coast is clear? */
-    sv_setpvn(sv, name, namelen);
-    SvPOK_only(sv);
-
-    return TRUE;
-#else
-    {
-    DIR *parent;
-    Direntry_t *dp;
-    char dotdots[MAXPATHLEN] = { 0 };
-    struct stat cst, pst, tst;
-
     if (PerlLIO_stat(path, &cst) < 0) {
         Perl_warn(aTHX_ "sv_realpath: stat(\"%s\"): %s",
                   path, Strerror(errno));
@@ -3795,10 +3790,9 @@ Perl_sv_realpath(pTHX_ SV *sv, char *path, STRLEN len)
 
     (void)SvUPGRADE(sv, SVt_PV);
 
-    if (!len) {
-        len = strlen(path);
-    }
-    Copy(path, dotdots, len, char);
+    Copy(path, dotdots, maxlen, char);
+
+    pathlen = 0;
 
     for (;;) {
         strcat(dotdots, "/..");
@@ -3858,6 +3852,11 @@ Perl_sv_realpath(pTHX_ SV *sv, char *path, STRLEN len)
                 SV_CWD_RETURN_UNDEF;
             }
 
+           if (pathlen + namelen + 1 >= MAXPATHLEN) {
+               Perl_warn(aTHX_ "sv_realpath: too long name");
+                SV_CWD_RETURN_UNDEF;
+           }
+
             SvGROW(sv, pathlen + namelen + 1);
             if (pathlen) {
                 /* shift down */
@@ -3884,10 +3883,8 @@ Perl_sv_realpath(pTHX_ SV *sv, char *path, STRLEN len)
     SvPOK_only(sv);
 
     return TRUE;
-    }
-#endif
 #else
-    return FALSE;
+    return FALSE; /* MICROPERL */
 #endif
 }
 
index 022dccc..c4cae56 100644 (file)
@@ -237,16 +237,8 @@ MYEXT = DynaLoader
 # there are any object files specified
 # These must be built separately, or you must add rules below to build them
 myextobj = [.ext.dynaloader]dl_vms$(O),
-#: We include the Socket extension by default if we're building with socket
-#: support, since it's small and not really worth bothering to keep track
-#: of separately.
-.ifdef SOCKET
-EXT = $(MYEXT) Socket
-extobj = $(myextobj) [.ext.socket]socket$(O), 
-.else
 EXT = $(MYEXT)
 extobj = $(myextobj)
-.endif
 
 .ifdef LIBS2
 .else
@@ -616,7 +608,7 @@ dynext : $(LIBPREREQ) $(DBG)perlshr$(E) preplibrary
        $(MINIPERL) $(MMS$SOURCE)
        Copy/Log [.pod]podselect.com $(MMS$TARGET)
 
-preplibrary : $(MINIPERL_EXE) $(LIBPREREQ) $(SOCKPM)
+preplibrary : $(MINIPERL_EXE) $(LIBPREREQ) 
        @ Write Sys$Output "Autosplitting Perl library . . ."
        @ Create/Directory [.lib.auto]
        @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]*.pm [.lib.*]*.pm
@@ -861,15 +853,6 @@ printconfig :
 
 .ifdef SOCKET
 
-.ifdef LINK_ONLY
-.else
-[.ext.Socket]Socket$(O) : [.ext.Socket]Socket.c
-       $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$SOURCE)
-
-[.ext.Socket]Socket.c : [.ext.Socket]Socket.xs [.lib.ExtUtils]XSSymSet.pm $(MINIPERL_EXE)
-       $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
-.endif # !LINK_ONLY
-
 vmsish.h : $(SOCKH)
 
 $(SOCKO) : $(SOCKC) EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h opnames.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h perlio.h
@@ -880,8 +863,6 @@ $(SOCKC) : [.vms]$(SOCKC)
 $(SOCKH) : [.vms]$(SOCKH)
        Copy/Log/NoConfirm [.vms]$(SOCKH) []$(SOCKH)
 
-[.lib]Socket.pm : [.ext.Socket]Socket.pm
-       Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
 .endif
 
 # The following files are generated automatically
@@ -958,8 +939,8 @@ archify : all
 # Should move to VMS installperl when we get one
 .ifdef SOCKET
 $(SOCKARCH) : $(SOCKH)
-       @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
-       Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
+       @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
+       Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
 .endif
 $(ARCHCORE)av.h : av.h
        @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
@@ -1262,7 +1243,6 @@ tidy : cleanlis
        - If F$Search("Perlshr_Gbl*.Mar;-1")   .nes."" Then Purge/NoConfirm/Log Perlshr_Gbl*.Mar
        - If F$Search("[.Ext.DynaLoader]DL_VMS$(O);-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O)
        - If F$Search("[.Ext.DynaLoader]DL_VMS.C;-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C
-       - If F$Search("[.Ext.Socket]Socket.C;-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C
        - If F$Search("[.Ext.Opcode...];-1").nes."" Then Purge/NoConfirm/Log [.Ext.Opcode]
        - If F$Search("[.VMS.Ext...]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*.C
        - If F$Search("[.VMS.Ext...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*$(O)
@@ -1270,7 +1250,6 @@ tidy : cleanlis
        - If F$Search("[.Lib.Auto...]autosplit.ix;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]autosplit.ix
        - If F$Search("[.Lib]DynaLoader.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]DynaLoader.pm
        - If F$Search("[.Lib]XSLoader.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]XSLoader.pm
-       - If F$Search("[.Lib]Socket.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Socket.pm
        - If F$Search("[.Lib]Config.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Config.pm
        - If F$Search("$(ARCHDIR)Config.pm;-1").nes."" Then Purge/NoConfirm/Log $(ARCHDIR)Config.pm
        - If F$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Purge/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm
@@ -1303,8 +1282,6 @@ clean : tidy cleantest
        - If F$Search("[.Ext.DynaLoader]DL_VMS.C").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C;*
        - If F$Search("[.Ext.DynaLoader]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DynaLoader.pm;*
        - If F$Search("[.Ext.DynaLoader]XSLoader.pm").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]XSLoader.pm;*
-       - If F$Search("[.Ext.Socket]Socket$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket$(O);*
-       - If F$Search("[.Ext.Socket]Socket.C").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket.C;*
        - If F$Search("[.VMS.Ext...]*.C").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*.C;*
        - If F$Search("[.VMS.Ext...]*$(O)").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*$(O);*
        - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
@@ -1324,7 +1301,6 @@ realclean : clean
        - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
        - If F$Search("[.Lib]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Lib]DynaLoader.pm;*
        - If F$Search("[.Lib]XSLoader.pm").nes."" Then Delete/NoConfirm/Log [.Lib]XSLoader.pm;*
-       - If F$Search("[.Lib]Socket.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Socket.pm;*
        - If F$Search("[.Lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Config.pm;*
        - If F$Search("[.Lib]*.com").nes."" Then Delete/NoConfirm/Log [.Lib]*.com;*
        - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
index 6fae18d..80f3452 100644 (file)
@@ -112,6 +112,7 @@ $   Deck/Dollar=$$END-OF-TEST$$
 # of Unixisms in the tests.  (The Perl operators being tested may work fine,
 # but the tests may use other operators which don't.)
 use Config;
+use File::Spec;
 
 @compexcl=('cpp.t');
 @ioexcl=('argv.t','dup.t','fs.t','pipe.t');
@@ -143,8 +144,9 @@ if (lc($ARGV[0]) eq '-v') {
 chdir 't' if -f 't/TEST';
 
 if ($ARGV[0] eq '') {
-    foreach (<[.*]*.t>) {
-      s/.*[\[.]t./[./;
+    foreach (<[-.ext...]*.t>, <[-.lib...]*.t>, <[.*]*.t>) {
+      $_ = File::Spec->abs2rel($_);
+      s/\[([a-z]+)/[.$1/;      # hmm, abs2rel doesn't do subdirs of the cwd
       ($fname = $_) =~ s/.*\]//;
       if ($skip{"\L$fname"}) { push(@skipped,$_); }
       else { push(@ARGV,$_); }
@@ -166,7 +168,7 @@ while ($test = shift) {
     }
     $te = $test;
     chop($te);
-    $te .= '.' x (24 - length($te));
+    $te .= '.' x (40 - length($te));
        open(script,"$test") || die "Can't run $test.\n";
        $_ = <script>;
        close(script);
index 2319650..0065516 100644 (file)
@@ -194,7 +194,6 @@ $d_quad='undef'
 $d_readdir='define'
 $d_readlink='define'
 $d_readv='undef'
-$d_realpath='undef'
 $d_recvmsg='undef'
 $d_rename='define'
 $d_rewinddir='define'
index 54dfc0c..3f47acf 100644 (file)
  */
 /*#define      HAS_FLOCK_PROTO /**/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-/*#define HAS_REALPATH         /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index 9a0a02c..4d49cf5 100644 (file)
@@ -194,7 +194,6 @@ $d_quad='undef'
 $d_readdir='define'
 $d_readlink='define'
 $d_readv='undef'
-$d_realpath='undef'
 $d_recvmsg='undef'
 $d_rename='define'
 $d_rewinddir='define'
index 8c4dd35..5b283e3 100644 (file)
  */
 /*#define      HAS_FLOCK_PROTO /**/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-/*#define HAS_REALPATH         /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index 6efd9ca..6f1d3c1 100644 (file)
  */
 /*#define      HAS_FLOCK_PROTO /**/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-/*#define HAS_REALPATH         /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index 0f20bce..ce85240 100644 (file)
  */
 /*#define      HAS_FLOCK_PROTO /**/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-/*#define HAS_REALPATH         /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask
index 476245e..e48c157 100644 (file)
  */
 /*#define      HAS_FLOCK_PROTO /**/
 
-/* HAS_REALPATH:
- *     This symbol, if defined, indicates that the realpath routine is
- *     available to do resolve paths.
- */
-/*#define HAS_REALPATH         /**/
-
 /* HAS_SIGPROCMASK:
  *     This symbol, if defined, indicates that the sigprocmask
  *     system call is available to examine or change the signal mask