perldelta up to a65c7ff
authorFather Chrysostomos <sprout@cpan.org>
Sat, 31 Dec 2011 05:49:42 +0000 (21:49 -0800)
committerFather Chrysostomos <sprout@cpan.org>
Sat, 31 Dec 2011 05:51:16 +0000 (21:51 -0800)
pod/perldelta.pod

index 532f100..40ffca3 100644 (file)
@@ -1,7 +1,7 @@
 =encoding utf8
 
 =for comment
-This has been completed up to b861b87ff.
+This has been completed up to a65c7ff.
 
 =head1 NAME
 
@@ -120,6 +120,14 @@ Those same syntaxes used to drop the package name from variables beginning
 with a punctuation mark, as in C<< "foo::]"->{$key} >>.  This, too, has
 been fixed.
 
+B::Deparse no longer hangs when deparsing a program with stash
+circularities, such as C<BEGIN { *Acme::Acme:: = *Acme:: }> [perl #91384].
+
+C</$s[1]/> used to be deparsed as C<$s[1]> if @s were a lexical variable
+[perl #81424].  This has been fixed.
+
+The C</applaud> regular expression flags are no longer omitted.
+
 =item *
 
 L<CGI> has been upgraded from version 3.58 to version 3.59.
@@ -403,6 +411,24 @@ Tying C<%^H> no longer causes perl to crash or ignore
 the contents of C<%^H> when entering a compilation
 scope [perl #106282].
 
+=item * C<~> on vstrings
+
+The bitwise complement operator (and possibly other operators, too) when
+passed a vstring would leave vstring magic attached to the return value,
+even though the string had changed.  This meant that
+C<< version->new(~v1.2.3) >> would create a version looking like "v1.2.3"
+even though the string passed to C<< version->new >> was actually
+"\376\375\374".  This also caused L<B::Deparse> to deparse C<~v1.2.3>
+incorrectly, without the C<~> [perl #29070].
+
+=item * Vstrings blowing away magic
+
+Assigning a vstring to a magic (e.g., tied, C<$!>) variable and then
+assigning something else used to blow away all the magic.  This meant that
+tied variables would come undone, C<$!> would stop getting updated on
+failed system calls, C<$|> would stop setting autoflush, and other
+mischief would take place.  This has been fixed.
+
 =back
 
 =head1 Known Problems