This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update CGI.pm to CPAN version 3.50
[perl5.git] / pod / perl5134delta.pod
index 6f94a24..e90fbff 100644 (file)
@@ -2,7 +2,7 @@
 
 =head1 NAME
 
-perldelta - what is new for perl v5.13.4
+perl5134delta - what is new for perl v5.13.4
 
 =head1 DESCRIPTION
 
@@ -25,44 +25,6 @@ each run.  It can test a random subset each time, and should there be a failure,
 log the seed used for that run so that it can later be used to reproduce the
 exact results.
 
-=head2 Creating unary functions with prototypes
-
-Calls to functions created with the following prototypes are now correctly parsed
-
-Functions declared with the following prototypes now behave correctly as unary functions:
-
-=over 4
-
-=item *
-
-*
-
-=item *
-
-\sigil
-
-=item *
-
-\[...]
-
-=item *
-
-;$
-
-=item *
-
-;*
-
-=item *
-
-;\sigil
-
-=item *
-
-;\[...]
-
-=back
-
 =head2 C<\N{I<name>}> and C<charnames> enhancements
 
 C<\N{}>, C<charnames::vianame>, C<charnames::viacode> now know about every
@@ -102,6 +64,63 @@ exception if they don't match.
 Some bit fields have been reordered; therefore, this release will not be binary
 compatible with any previous Perl release.
 
+=head2 Change in the parsing of certain prototypes
+
+Functions declared with the following prototypes now behave correctly as unary
+functions:
+
+=over 4
+
+=item *
+
+C<*>
+
+=item *
+
+C<\sigil>
+
+=item *
+
+C<\[...]>
+
+=item *
+
+C<;$>
+
+=item *
+
+C<;*>
+
+=item *
+
+C<;\sigil>
+
+=item *
+
+C<;\[...]>
+
+=back
+
+Due to this bug fix, functions using the C<(*)>, C<(;$)> and C<(;*)> prototypes
+are parsed with higher precedence than before. So in the following example:
+
+  sub foo($);
+  foo $a < $b;
+
+the second line is now parsed correctly as C<< foo($a) < $b >>, rather than
+C<< foo($a < $b) >>. This happens when one of these operators is used in
+an unparenthesised argument:
+
+  < > <= >= lt gt le ge
+  == != <=> eq ne cmp ~~
+  &
+  | ^
+  &&
+  || //
+  .. ...
+  ?:
+  = += -= *= etc.
+
 =head1 Deprecations
 
 =head2 List assignment to C<$[>
@@ -465,17 +484,28 @@ The changes in L<substr()|perlfunc/"substr EXPR,OFFSET,LENGTH,REPLACEMENT">
 broke C<HTML::Parser> <= 3.66. A fixed C<HTML::Parser> is available as version
 3.67 on CPAN.
 
+=item *
+
+The changes in prototype handling break C<Switch>. A patch has been sent
+upstream and will hopefully appear on CPAN soon.
+
 =back
 
 =head1 Acknowledgements
 
 Perl 5.13.4 represents approximately one month of development since Perl 5.13.3,
-and contains XXX lines of changes across XXX files from XXX authors and
+and contains 91,200 lines of changes across 436 files from 34 authors and
 committers.
 
 Thank you to the following for contributing to this release:
 
-XXX The list of people to thank goes here.
+Abigail, Andy Armstrong, Andy Dougherty, Chas. Owens, Chip Salzenberg, Chris
+'BinGOs' Williams, Craig A. Berry, David Cantrell, David Golden, David Mitchell,
+Eric Brine, Father Chrysostomos, Florian Ragwitz, George Greer, Gerard Goossen,
+H.Merijn Brand, James Mastros, Jan Dubois, Jerry D. Hedden, Joshua ben Jore,
+Karl Williamson, Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯, Leon Brocard, Lubomir Rintel, Nicholas
+Clark, Paul Marquess, Rafael Garcia-Suarez, Reini Urban, Robin Barker, Slaven
+Rezic, Steve Peters, Tony Cook, Wolfram Humann, Zefram
 
 =head1 Reporting Bugs