In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/655d344e5798ad372f399b255d0eb6664d306b66?hp=d4e225aa1c5074230edc5791bd95fac33d97f8d4>
- Log ----------------------------------------------------------------- commit 655d344e5798ad372f399b255d0eb6664d306b66 Author: David Golden <[email protected]> Date: Tue Jul 13 12:08:58 2010 -0400 Add more recent commits to perldelta M pod/perl5133delta.pod commit 406871851914a339b834e2e26f758de1e24104bd Author: Karl Williamson <k...@khw-desktop.(none)> Date: Thu Jul 8 10:18:58 2010 -0600 perlop.pod: Document current \000 \x behavior Signed-off-by: David Golden <[email protected]> M pod/perlop.pod ----------------------------------------------------------------------- Summary of changes: pod/perl5133delta.pod | 85 +++++++++++++++++++++++++++++++++++++++++++++---- pod/perlop.pod | 79 +++++++++++++++++++++++++++++++++------------ 2 files changed, 136 insertions(+), 28 deletions(-) diff --git a/pod/perl5133delta.pod b/pod/perl5133delta.pod index d60604f..ddbb95d 100644 --- a/pod/perl5133delta.pod +++ b/pod/perl5133delta.pod @@ -49,6 +49,12 @@ name will C<charnames::viacode()> return your custom one. See L<charnames> for details on all these changes. +=head2 Other enhancements + +=item * + +Uppercase X/B allowed in hexadecimal/binary literals (RT#76296) (a674e8d) + =head1 Security XXX Any security-related notices go here. In particular, any security @@ -85,7 +91,7 @@ may well be none in a stable release. =item * -XXX +There are several small optimizations to improve CPU cache performance =back @@ -121,6 +127,10 @@ autodie updated to CPAN version 2.10 (a009834) =item * +charnames -- viacode() is now significantly faster (f3227b7) + +=item * + warnings updated to 1.10. Calling C<use warnings> without arguments is now significantly more efficient. (8452af9) @@ -151,6 +161,14 @@ Attribute-Handlers updated to CPAN version 0.88 (f2ea78b) =item * +Compress-Raw-Bzip2 updated to CPAN version 2.027 (9e09409) + +=item * + +Compress-Raw-Zlib updated to CPAN version 2.027 (f02c02e) + +=item * + Digest-SHA updated to CPAN version 5.48 (dfe1edc) =item * @@ -163,10 +181,18 @@ ExtUtils-Manifest updated to CPAN version 1.58 (49c6bc4) =item * +IO-Compress upated to CPAN version 2.027 (e8796d6) + +=item * + IPC-SysV updated to CPAN version 2.03 (10613b6) =item * +Locale::Maketext adds external cache support (ace47d6) + +=item * + Module-Load updated to CPAN version 0.18 (93eaa32) =item * @@ -211,9 +237,9 @@ XXX Changes which create B<new> files in F<pod/> go here. =over 4 -=item L<XXX> +=item L<perl5121delta> -XXX +The Perl 5.12.1 perldelta file was added from the Perl maintenance branch =back @@ -223,11 +249,27 @@ XXX Changes which significantly change existing files in F<pod/> go here. However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics> section. +=head3 L<perlop> + =over 4 -=item L<XXX> +=item * -XXX +Improved documentation of unusual character escapes (bf82ca4) + +=back + +=head3 L<perlfunc> + +=over + +=item * + +Added cautionary note about "no VERSION" (e0de7c2) + +=item * + +Add additional notes regarding srand and forking (d460397) =back @@ -313,7 +355,15 @@ that they represent may be covered elsewhere. =item * -XXX +F<t/harness> clears PERL5LIB, PERLLIB, PERL5OPT as t/TEST does (a2d3de1) + +=item * + +Many common testing routines were refactored into t/lib/common.pl + +=item * + +Several test files have been modernized to use Test::More =back @@ -390,6 +440,10 @@ Added prototypes for tie() and untie() to allow overloading (RT#75902) =back +=item * + +XXX Lots of block hook changes (PL_blockhooks) -- needs an overall summary + =head1 Selected Bug Fixes XXX Important bug fixes in the core language are summarised here. @@ -403,13 +457,30 @@ L</Modules and Pragmata>. =item * Fixed a regression of kill() when a match variable is used for the -process ID to kill. (RT #75812) (8af710e) +process ID to kill. (RT#75812) (8af710e) =item * Fixed several subtle bugs in sort() when @_ is accessed within a subroutine used for sorting. (RT#72334) (8f443ca) +=item * + +Catch yyparse() exceptions in C<< (?{...}) >> (RT#2353) (634d691) + +=item * + +Avoid UTF-8 cache panics with offsets beyond a string (RT #75898) (3e2d381) + +=item * + +Fixed POSIX::strftime memory leak (RT#73520) (c4bc4aa) + +=item * + +Doesn't set strict with C<no VERSION> if C<VERSION> is greater than 5.12. +(da8fb5d) + =back diff --git a/pod/perlop.pod b/pod/perlop.pod index 3c6864a..6409f9d 100644 --- a/pod/perlop.pod +++ b/pod/perlop.pod @@ -1019,24 +1019,52 @@ and in transliterations. X<\t> X<\n> X<\r> X<\f> X<\b> X<\a> X<\e> X<\x> X<\0> X<\c> X<\N> X<\N{}> Sequence Note Description - \t tab (HT, TAB) - \n newline (NL) - \r return (CR) - \f form feed (FF) - \b backspace (BS) - \a alarm (bell) (BEL) - \e escape (ESC) - \033 octal char (example: ESC) - \x1b hex char (example: ESC) - \x{263a} wide hex char (example: SMILEY) - \c[ [1] control char (example: chr(27)) - \N{name} [2] named Unicode character - \N{U+263D} [3] Unicode character (example: FIRST QUARTER MOON) + \t tab (HT, TAB) + \n newline (NL) + \r return (CR) + \f form feed (FF) + \b backspace (BS) + \a alarm (bell) (BEL) + \e escape (ESC) + \x{263a} [1] hex char (example: SMILEY) + \x1b [2] narrow hex char (example: ESC) + \N{name} [3] named Unicode character + \N{U+263D} [4] Unicode character (example: FIRST QUARTER MOON) + \c[ [5] control char (example: chr(27)) + \033 [6] octal char (example: ESC) =over 4 =item [1] +The result is the character whose ordinal is the hexadecimal number between the +braces. If something other than a hexadecimal digit is encountered, it and +everything following it up to the closing brace are discarded, and if warnings +are enabled, a warning is raised. The leading digits that are hex then +comprise the entire number. If the first thing after the opening brace is not +a hex digit, the generated character is the NULL character. C<\x{}> is the +NULL character with no warning given. + +=item [2] + +The result is the character whose ordinal is the given two-digit hexadecimal +number. But, if I<H> is a hex digit and I<G> is not, then C<\xI<HG>...> is the +same as C<\x0I<HG>...>, and C<\xI<G>...> is the same thing as C<\x00I<G>...>. +In both cases, the result is two characters, and if warnings are enabled, a +misleading warning message is raised that I<G> is ignored, when in fact it is +used. Note that in the second case, the first character currently is a NULL. + +=item [3] + +For documentation of C<\N{name}>, see L<charnames>. + +=item [4] + +C<\N{U+I<wide hex char>}> means the Unicode character whose Unicode ordinal +number is I<wide hex char>. + +=item [5] + The character following C<\c> is mapped to some other character as shown in the table: @@ -1070,14 +1098,23 @@ the 7th bit (0x40). To get platform independent controls, you can use C<\N{...}>. -=item [2] - -For documentation of C<\N{name}>, see L<charnames>. - -=item [3] - -C<\N{U+I<wide hex char>}> means the Unicode character whose Unicode ordinal -number is I<wide hex char>. +=item [6] + +The result is the character whose ordinal is the given three digit octal +number. Some contexts allow 2 or even 1 digit, but any usage without exactly +three digits, the first being a zero, may give unintended results. (For +example, see L<perlrebackslash/Octal escapes>.) It is best therefore to use +this construct only for ordinals C<\077> and below, remembering to pad to the +left with zeros to make three digits. For larger ordinals, it's best to +convert to some other construct, such as to hex and use C<\x{}> instead. + +A backslash followed by a non-octal digit in a bracketed character class +(C<[\8]> or C<[\9]>) will be interpreted as a NULL character and the digit. +Having fewer than 3 digits may lead to a misleading warning message that says +that what follows is ignored. For example, C<"\128"> in the ASCII character set +is equivalent to the two characters C<"\n8">, but the warning C<Illegal octal +digit '8' ignored> will be thrown. To avoid this warning, make sure to pad +your octal number with C<0>s: C<"\0128">. =back -- Perl5 Master Repository
