diff options
Diffstat (limited to 'pod/perldelta.pod')
-rw-r--r-- | pod/perldelta.pod | 64 |
1 files changed, 47 insertions, 17 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 94b4635e7b..772a464293 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -150,15 +150,17 @@ use "quads" (64-integers) as follows: =over 4 -=item constants in the code +=item constants (decimal, hexadecimal, octal, binary) in the code =item arguments to oct() and hex() -=item arguments to print(), printf() and sprintf() +=item arguments to print(), printf() and sprintf() (flag prefixes ll, L, q) -=item pack() and unpack() "q" format +=item printed as such -=item in basic arithmetics +=item pack() and unpack() "q" and "Q" formats + +=item in basic arithmetics: + - * / % =item vec() (but see the below note about bit arithmetics) @@ -167,7 +169,9 @@ use "quads" (64-integers) as follows: Note that unless you have the case (a) you will have to configure and compile Perl using the -Duse64bits Configure flag. -Unfortunately bit arithmetics (&, |, ^, ~, <<, >>) are not 64-bit clean. +Unfortunately bit arithmetics (&, |, ^, ~, <<, >>) for numbers are not +64-bit clean, they are explictly forced to be 32-bit. Bit arithmetics +for bit vectors (created by vec()) are not limited in their width. Last but not least: note that due to Perl's habit of always using floating point numbers the quads are still not true integers. @@ -181,18 +185,25 @@ start losing precision (their lower digits). If you have filesystems that support "large files" (files larger than 2 gigabytes), you may now also be able to create and access them from Perl. -Note that in addition to requiring a proper file system to do this you -may also need to adjust your per-process (or even your per-system) -maximum filesize limits before running Perl scripts that try to handle -large files, especially if you intend to write such files. - -Adjusting your file system/system limits is outside the scope of Perl. -For process limits, you may try to increase the limits using your -shell's limit/ulimit command before running Perl. The BSD::Resource -extension (not included with the standard Perl distribution) may also -be of use. +Note that in addition to requiring a proper file system to do large +files you may also need to adjust your per-process (or your +per-system, or per-process-group, or per-user-group) maximum filesize +limits before running Perl scripts that try to handle large files, +especially if you intend to write such files. + +Finally, in addition to your process/process group maximum filesize +limits, you may have quota limits on your filesystems that stop you +(your user id or your user group id) from using large files. + +Adjusting your process/user/group/file system/operating system limits +is outside the scope of Perl core language. For process limits, you +may try increasing the limits using your shell's limits/limit/ulimit +command before running Perl. The BSD::Resource extension (not +included with the standard Perl distribution) may also be of use, it +offers the getrlimit/setrlimit interface that can be used to adjust +process resource usage limits, including the maximum filesize limit. -(Large file support is also related to 64-bit support, for obvious reasons) +(Large file support is related to 64-bit support, for obvious reasons.) =head2 Better syntax checks on parenthesized unary operators @@ -527,7 +538,9 @@ runtime error. The timelocal() and timegm() functions used to silently return bogus results when the date exceeded the machine's integer range. They -now consistently croak() if the date falls in an unsupported range. +now consistently croak() if the date falls in an unsupported range-- +but on the other hand they now accept "out-of-limits" day-of-month +to make "Julian date" conversions easier. =item Win32 @@ -704,6 +717,16 @@ elements of a subroutine attribute list. If the previous attribute had a parenthesised parameter list, perhaps that list was terminated too soon. +=item Possible Y2K bug: %s + +(W) You are concatenating the number 19 with another number, which +could be a potential Year 2000 problem. + +=item Possible Y2K bug: %s + +(W) You are concatenating the number 19 with another number, which +could be a potential Year 2000 problem. + =item Unterminated attribute parameter in subroutine attribute list (F) The lexer saw an opening (left) parenthesis character while parsing a @@ -750,6 +773,13 @@ because many scripts assume to find Perl in /usr/bin/perl. You can use "Configure -Dusesocks" which causes Perl to probe for the SOCKS proxy protocol library, http://www.socks.nec.com/ +=head2 -A flag + +You can "post-edit" the Configure variables using the Configure -A +flag. The editing happens immediately after the platform specific +hints files have been processed but before the actual configuration +process starts. Run Configure -h to find out the full -A syntax. + =head1 BUGS If you find what you think is a bug, you might check the headers of |