From 7e7629faf067b99cf5b2d8e61fef8c0a0a4f47f7 Mon Sep 17 00:00:00 2001 From: Father Chrysostomos Date: Thu, 8 Dec 2011 22:32:51 -0800 Subject: [PATCH] perldelta up to e08f19f5d07 --- pod/perldelta.pod | 37 ++++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/pod/perldelta.pod b/pod/perldelta.pod index f8cefc2..d889437 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -1,8 +1,9 @@ =encoding utf8 =for comment -This has been completed up to a74fb2cdc8f, except for -e032854 khw [perl #32080] is_utf8_string() reads too far +This has been completed up to e08f19f5d07, except for +e032854 khw [perl #32080] is_utf8_string() reads too far +b0f2e9e nwclark Fix two bugs related to pod files outside of pod/ (important enough?) =head1 NAME @@ -44,6 +45,12 @@ The B command in the debugger, which toggles tracing mode, now accepts a numerical argument that determines how many levels of subroutine calls to trace. +=head2 Return value of C + +The value returned by C on a tied variable is now the actual scalar +that holds the object to which the variable is tied. This allows ties to +be weakened with C. + =head1 Security XXX Any security-related notices go here. In particular, any security @@ -117,7 +124,9 @@ C has changed. Passing a substring of a read-only value or a typeglob to a function (potential lvalue context) no longer causes an immediate "Can't coerce" or "Modification of a read-only value" error. That error only occurs if and when the value passed is assigned to. -The same thing happens with the "substr outside of string" error. +The same thing happens with the "substr outside of string" error. If the +lvalue is only read, not written to, it is now just a warning, as with +rvalue C. =item * @@ -172,6 +181,12 @@ Assign to a variable that holds a typeglob or copy-on-write scalar is now much faster. Previously the typeglob would be stringified or the copy-on-write scalar would be copied before being clobbered. +=item * + +Assignment to a substring in void context is now more than twice its +previous speed. Instead of creating and returning a special lvalue scalar +that is then assigned to, C modifies the original string itself. + =back =head1 Modules and Pragmata @@ -278,6 +293,16 @@ replaces ----- with -{}-{}-{}-{}- =item * +L has been upgraded from version 1.26 to 1.27. + +It no longer produces a "Constant subroutine TCSANOW redefined" warning on +Windows. + +XXX When did it start producing that warning? Was it post-5.15.5? Even if +it was not, adding a note will help whoever compiles perl5160delta. + +=item * + L has been upgraded from version 0.85 to version 0.87. Tailored compatibility ideographs as well as unified ideographs for @@ -639,6 +664,12 @@ variable was anything other than a string or typeglob. The C keyword added in 5.15.5 was respecting C declarations from the outer scope, when it should have been ignoring them. +=item * + +C no longers crashes, but produces an error message, when the +unwinding of the current subroutine's scope fires a destructor that +undefines the subroutine being "goneto" [perl #99850]. + =back =head1 Known Problems -- 2.7.4