diff options
author | Perl 5 Porters <perl5-porters@africa.nicoh.com> | 1997-04-17 00:00:00 +0000 |
---|---|---|
committer | Chip Salzenberg <chip@atlantic.net> | 1997-04-17 00:00:00 +0000 |
commit | 96e4d5b14cf2dfb0235faa8bc3f701c15b15bb05 (patch) | |
tree | 573ae82e0e6a92c453a5b5cec1b10dc2f99362fe /pod | |
parent | 6877a1cf6ff3f0f711772ea75e579e2e7219cc46 (diff) | |
download | perl-96e4d5b14cf2dfb0235faa8bc3f701c15b15bb05.tar.gz |
[inseparable changes from match from perl-5.003_97e to perl-5.003_97f]
CORE LANGUAGE CHANGES
Subject: New operator systell()
From: Chip Salzenberg <chip@perl.com>
Files: doio.c ext/Opcode/Opcode.pm keywords.pl opcode.pl pod/perldelta.pod pod/perldiag.pod pod/perlfunc.pod pp_sys.c t/op/sysio.t toke.c
Subject: Allow constant sub to be optimized when called with parens
From: Chip Salzenberg <chip@perl.com>
Files: toke.c
Subject: Make {,un}pack fail on invalid pack types
From: Chip Salzenberg <chip@perl.com>
Files: pod/perldiag.pod pp.c
CORE PORTABILITY
Subject: Fix bitwise ops and {,un}pack() on Cray CPUs
From: Chip Salzenberg <chip@perl.com>
Files: pp.c
Subject: VMS update
From: Charles Bailey <bailey@hmivax.humgen.upenn.edu>
Files: lib/Cwd.pm lib/File/Path.pm lib/FindBin.pm vms/perly_c.vms vms/vms.c vms/writemain.pl
Subject: Win32 update (three patches)
From: Gurusamy Sarathy <gsar@engin.umich.edu>
Files: lib/Cwd.pm lib/ExtUtils/MM_Unix.pm lib/ExtUtils/MM_Win32.pm lib/File/Basename.pm win32/Makefile win32/makedef.pl win32/perllib.c win32/win32.c win32/win32iop.h
DOCUMENTATION
Subject: Document size restrictions for packed integers
From: Jarkko Hietaniemi <Jarkko.Hietaniemi@cc.hut.fi>
Files: pod/perlfunc.pod
LIBRARY AND EXTENSIONS
Subject: Fix bug in Opcode when (maxo & 15) > 8
From: Chip Salzenberg <chip@perl.com>
Files: ext/Opcode/Makefile.PL ext/Opcode/Opcode.pm ext/Opcode/Opcode.xs
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perldelta.pod | 8 | ||||
-rw-r--r-- | pod/perldiag.pod | 20 | ||||
-rw-r--r-- | pod/perlfunc.pod | 74 | ||||
-rw-r--r-- | pod/perltoc.pod | 28 |
4 files changed, 84 insertions, 46 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod index b1e11f414b..5132b49ae2 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -299,10 +299,12 @@ provides seven bits of the total value, with the most significant first. Bit eight of each byte is set, except for the last byte, in which bit eight is clear. -=item sysseek() +=item sysseek() and systell() -This is a variant of seek() that works on the system file pointer. -It is the only reliable way to seek before sysread() or syswrite(). +These are new. The sysseek() operator is a variant of seek() that works +on the system file pointer. It is the only reliable way to seek before +using sysread() or syswrite(). Its companion operator systell() reports +the current position of the system file pointer. =item use VERSION diff --git a/pod/perldiag.pod b/pod/perldiag.pod index 0152662f8c..feee58a219 100644 --- a/pod/perldiag.pod +++ b/pod/perldiag.pod @@ -1229,6 +1229,14 @@ C<./Configure -S> and rebuild Perl. (F) The range specified in a character class had a minimum character greater than the maximum character. See L<perlre>. +=item Invalid type in pack: '%s' + +(F) The given character is not a valid pack type. See L<perlop/pack>. + +=item Invalid type in unpack: '%s' + +(F) The given character is not a valid unpack type. See L<perlop/unpack>. + =item ioctl is not implemented (F) Your machine apparently doesn't implement ioctl(), which is pretty @@ -1987,10 +1995,10 @@ or setgid bit set. This doesn't make much sense. (F) The lexer couldn't find the final delimiter of a // or m{} construct. Remember that bracketing delimiters count nesting level. -=item seek() on unopened file +=item %sseek() on unopened file -(W) You tried to use the seek() function on a filehandle that was either -never opened or has since been closed. +(W) You tried to use the seek() or sysseek() function on a filehandle that +was either never opened or has since been closed. =item select not implemented @@ -2206,10 +2214,10 @@ or "msg". See L<perlfunc/semctl>, for example. (W) The filehandle you're writing to got itself closed sometime before now. Check your logic flow. -=item tell() on unopened file +=item %stell() on unopened file -(W) You tried to use the tell() function on a filehandle that was either -never opened or has since been closed. +(W) You tried to use the tell() or systell() function on a filehandle that +was either never opened or has since been closed. =item Test on unopened file E<lt>%sE<gt> diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index cba3f2a35f..e8dc893efa 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -108,8 +108,8 @@ delete, each, exists, keys, values binmode, close, closedir, dbmclose, dbmopen, die, eof, fileno, flock, format, getc, print, printf, read, readdir, -rewinddir, seek, seekdir, select, syscall, sysread, -syswrite, tell, telldir, truncate, warn, write +rewinddir, seek, seekdir, select, syscall, sysread, sysseek, +systell, syswrite, tell, telldir, truncate, warn, write =item Functions for fixed length data or records @@ -2096,17 +2096,29 @@ follows: c A signed char value. C An unsigned char value. + s A signed short value. S An unsigned short value. + (This 'short' is _exactly_ 16 bits, which may differ from + what a local C compiler calls 'short'.) + i A signed integer value. I An unsigned integer value. + (This 'integer' is _at_least_ 32 bits wide. Its exact size + depends on what a local C compiler calls 'int', and may + even be larger than the 'long' described in the next item.) + l A signed long value. L An unsigned long value. + (This 'long' is _exactly_ 32 bits, which may differ from + what a local C compiler calls 'long'.) - n A short in "network" order. - N A long in "network" order. + n A short in "network" (big-endian) order. + N A long in "network" (big-endian) order. v A short in "VAX" (little-endian) order. V A long in "VAX" (little-endian) order. + (These 'shorts' and 'longs' are _exactly_ 16 bits and + _exactly_ 32 bits, respectively.) f A single-precision float in the native format. d A double-precision float in the native format. @@ -2116,10 +2128,10 @@ follows: u A uuencoded string. - w A BER compressed integer. Bytes give an unsigned integer base - 128, most significant digit first, with as few digits as - possible, and with the bit 8 of each byte except the last set - to "1." + w A BER compressed integer. Its bytes represent an unsigned + integer in base 128, most significant digit first, with as few + digits as possible. Bit eight (the high bit) is set on each + byte except the last. x A null byte. X Back up a byte. @@ -3330,11 +3342,12 @@ into that kind of thing. =item sysread FILEHANDLE,SCALAR,LENGTH Attempts to read LENGTH bytes of data into variable SCALAR from the -specified FILEHANDLE, using the system call read(2). It bypasses -stdio, so mixing this with other kinds of reads or with seek() may -cause confusion. Returns the number of bytes actually read, or undef -if there was an error. SCALAR will be grown or shrunk so that the -last byte actually read is the last byte of the scalar after the read. +specified FILEHANDLE, using the system call read(2). It bypasses stdio, +so mixing this with other kinds of reads, print(), write(), seek(), or +tell() can cause confusion. Returns the number of bytes actually read, +or undef if there was an error. SCALAR will be grown or shrunk so that +the last byte actually read is the last byte of the scalar after the +read. An OFFSET may be specified to place the read data at some place in the string other than the beginning. A negative OFFSET specifies @@ -3346,13 +3359,25 @@ the result of the read is appended. =item sysseek FILEHANDLE,POSITION,WHENCE Randomly positions the system file pointer for FILEHANDLE using the -system call lseek(2). It bypasses stdio, so mixing this with read(), -print(), write(), or seek() may cause confusion. FILEHANDLE may be an -expression whose value gives the name of the filehandle. The values for -WHENCE are 0 to set the file pointer to POSITION, 1 to set the it to -current plus POSITION, and 2 to set it to EOF plus offset. You may use -the values SEEK_SET, SEEK_CUR, and SEEK_END for this from either the -IO::Seekable or the POSIX module. Returns 1 upon success, 0 otherwise. +system call lseek(2). It bypasses stdio, so mixing this with reads +(other than sysread()), print(), write(), seek(), or tell() may cause +confusion. FILEHANDLE may be an expression whose value gives the name +of the filehandle. The values for WHENCE are 0 to set the file pointer +to POSITION, 1 to set the it to current plus POSITION, and 2 to set it +to EOF plus offset. You may use the values SEEK_SET, SEEK_CUR, and +SEEK_END for this from either the IO::Seekable or the POSIX module. +Returns 1 upon success, 0 otherwise. See also L</systell>. + +=item systell FILEHANDLE + +=item systell + +Returns the current position of the system file pointer for FILEHANDLE +as reported by the system call lseek(2). It bypasses stdio, so mixing +this with reads (other than sysread()), print(), write(), seek(), or +tell() may cause confusion. FILEHANDLE may be an expression whose value +gives the name of the actual filehandle. If FILEHANDLE is omitted, +assumes the file last read. See also L</sysseek>. =item system LIST @@ -3404,10 +3429,11 @@ signals and core dumps. Attempts to write LENGTH bytes of data from variable SCALAR to the specified FILEHANDLE, using the system call write(2). It bypasses -stdio, so mixing this with prints or with seek() may cause confusion. -Returns the number of bytes actually written, or undef if there was an -error. If the length is greater than the available data, only as much -data as is available will be written. +stdio, so mixing this with reads (other than sysread()), print(), +write(), seek(), or tell() may cause confusion. Returns the number of +bytes actually written, or undef if there was an error. If the length +is greater than the available data, only as much data as is available +will be written. An OFFSET may be specified to write the data from some part of the string other than the beginning. A negative OFFSET specifies writing diff --git a/pod/perltoc.pod b/pod/perltoc.pod index ef59edbc9b..e7fed663ad 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -860,10 +860,11 @@ $^E, $^H, $^M =item New and changed builtin functions delete on slices, flock, printf and sprintf, keys as an lvalue, my() in -Control Structures, pack() and unpack(), sysseek(), use VERSION, use Module -VERSION LIST, prototype(FUNCTION), srand, $_ as Default, C<m//g> does not -reset search position on failure, C<m//x> ignores whitespace before ?*+{}, -nested C<sub{}> closures work now, formats work right on changing lexicals +Control Structures, pack() and unpack(), sysseek() and systell(), use +VERSION, use Module VERSION LIST, prototype(FUNCTION), srand, $_ as +Default, C<m//g> does not reset search position on failure, C<m//x> ignores +whitespace before ?*+{}, nested C<sub{}> closures work now, formats work +right on changing lexicals =item New builtin methods @@ -1221,15 +1222,16 @@ sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek -FILEHANDLE,POSITION,WHENCE, system LIST, syswrite -FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH, tell -FILEHANDLE, tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied -VARIABLE, time, times, tr///, truncate FILEHANDLE,LENGTH, truncate -EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef -EXPR, undef, unlink LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE, -unshift ARRAY,LIST, use Module LIST, use Module, use Module VERSION LIST, -use VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid -PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y/// +FILEHANDLE,POSITION,WHENCE, systell FILEHANDLE, systell, system LIST, +syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite +FILEHANDLE,SCALAR,LENGTH, tell FILEHANDLE, tell, telldir DIRHANDLE, tie +VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate +FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, +ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack +TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module LIST, use +Module, use Module VERSION LIST, use VERSION, utime LIST, values HASH, vec +EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn LIST, write +FILEHANDLE, write EXPR, write, y/// =back |