several bug fixes; now croak()s when date exceeds integer limits (instead
[p5sagit/p5-mst-13.2.git] / pod / perldelta.pod
index b2e197f..f64a1da 100644 (file)
@@ -107,6 +107,43 @@ behavior of:
 
 remains unchanged.  See L<perlop>.
 
+=head2 Improved C<qw//> operator
+
+The C<qw//> operator is now evaluated at compile time into a true list
+instead of being replaced with a run time call to C<split()>.  This
+removes the confusing behavior of C<qw//> in scalar context stemming from
+the older implementation, which inherited the behavior from split().  
+
+Thus:
+
+    $foo = ($bar) = qw(a b c); print "$foo|$bar\n";
+
+now correctly prints "3|a", instead of "2|a".
+
+=head2 pack() format 'Z' supported
+
+The new format type 'Z' is useful for packing and unpacking null-terminated
+strings.  See L<perlfunc/"pack">.
+
+=head1 Significant bug fixes
+
+=head2 E<lt>HANDLEE<gt> on empty files
+
+With C<$/> set to C<undef>, slurping an empty file returns a string of
+zero length (instead of C<undef>, as it used to) for the first time the
+HANDLE is read.  Subsequent reads yield C<undef>.
+
+This means that the following will append "foo" to an empty file (it used
+to not do anything before):
+
+    perl -0777 -pi -e 's/^/foo/' empty_file
+
+Note that the behavior of:
+
+    perl -pi -e 's/^/foo/' empty_file
+
+is unchanged (it continues to leave the file empty).
+
 =head1 Supported Platforms
 
 =over 4
@@ -192,6 +229,12 @@ The accessors methods Re, Im, arg, abs, rho, theta, methods can
 A little bit of radial trigonometry (cylindrical and spherical) added,
 for example the great circle distance.
 
+=item Time::Local
+
+The timelocal() and timegm() functions used to silently return bogus
+results when the date exceeded the machine's integer range.  They
+consistently croak() if the date falls in an unsupported range.
+
 =back
 
 =head2 Pragmata