From: Rafael Garcia-Suarez Date: Mon, 23 Jan 2006 19:24:06 +0000 (+0000) Subject: More work on perldelta X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=ebab5fdda82b63a33ca5426cdae823563f351ee3;p=p5sagit%2Fp5-mst-13.2.git More work on perldelta p4raw-id: //depot/perl@26933 --- diff --git a/pod/perl593delta.pod b/pod/perl593delta.pod index 46cde57..2262c40 100644 --- a/pod/perl593delta.pod +++ b/pod/perl593delta.pod @@ -99,7 +99,7 @@ want to use a version of perl inferior to the specified one. =head2 Recursive sort subs -You can now use recursive subroutines with sort(). +You can now use recursive subroutines with sort(), thanks to Robin Houston. =head2 Effect of pragmas in eval @@ -115,6 +115,12 @@ into eval(""). B<-E> is equivalent to B<-e>, but it implicitly enables all optional features. +=head2 C, C and C on filehandles + +C, C and C can now work on filehandles as well as +filenames, if the system supports respectively C, C and +C, thanks to a patch provided by Gisle Aas. + =head1 Modules and Pragmata =head2 C @@ -154,6 +160,24 @@ transliteration mappings has been reimplemented in XS. XXX +=head2 C + +The new compilation flag C, introduced as an option +in perl 5.8.8, is turned on by default in perl 5.9.3. It prevents perl +from creating an empty scalar with every new typeglob. See L +for details. + +=head2 Weak references are cheaper + +Weak reference creation is now I rather than I, courtesy of +Nicholas Clark. Weak reference deletion remains I, but if deletion only +happens at program exit, it may be skipped completely. + +=head2 sort() enhancements + +Salvador FandiƱo provided improvements to reduce the memory usage of C +and to speed up some cases. + =head1 Installation and Configuration Improvements =head2 New Or Improved Platforms @@ -239,6 +263,17 @@ less memory-intensive. =item * +Trailing spaces are now trimmed from C<$!> and C<$^E>. + +=item * + +Operations that require perl to read a process' list of groups, such as reads +of C<$(> and C<$)>, now dynamically allocate memory rather than using a +fixed sized array. The fixed size array could cause C stack exhaustion on +systems configured to use large numbers of groups. + +=item * + C now works better with non-default C<$/> settings. =item * @@ -258,7 +293,9 @@ opens. =item * -C matches used to loop infinitely on tainted data. +Perl will now use the C library calls C and C if present +to delete keys from C<%ENV> and delete C<%ENV> entirely, thanks to a patch +from Alan Burlison. =back @@ -272,6 +309,18 @@ chr() on a negative value now gives C<\x{FFFD}>, the Unicode replacement character, unless when the C pragma is in effect, where the low eight bytes of the value are used. +=item * + +Some case insensitive matches between UTF-8 encoded data and 8 bit regexps, +and vice versa, could give malformed character warnings. These have been +fixed by Dave Mitchell and Yves Orton. + +=item * + +C and C could corrupt the string for certain cases where +the length UTF-8 encoding of the string in lower case, upper case or title +case differed. This was fixed by Nicholas Clark. + =back =head1 New or Changed Diagnostics @@ -320,6 +369,9 @@ compiled in if you add C<-DNO_MATHOMS> in the compiler flags. The C macro has been removed. +The C functions, used to manipulate arrays, no longer accept null +C parameters. + =head2 B:: modules inheritance changed The inheritance hierarchy of C modules has changed; C now