summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2010-08-31 22:13:06 +0200
committerFlorian Ragwitz <rafl@debian.org>2010-08-31 22:13:06 +0200
commit61ea75ac73aaa903f60ec8d026e6d646f18b7451 (patch)
tree6e821bc6440fb3ee9d76d6ef8f9486f4cedc54e8
parenta8812f5e4144abe77e484a03f0f8f3a838c5f319 (diff)
downloadperl-61ea75ac73aaa903f60ec8d026e6d646f18b7451.tar.gz
[perl #77234] Change 649d02de (unary prototypes) changes precedence
This patch retroactively adds a description of the breakage to perl5134delta so it will be copied eventually into perl5140delta.
-rw-r--r--pod/perl5134delta.pod23
1 files changed, 23 insertions, 0 deletions
diff --git a/pod/perl5134delta.pod b/pod/perl5134delta.pod
index 7dbee18be9..5b22729b10 100644
--- a/pod/perl5134delta.pod
+++ b/pod/perl5134delta.pod
@@ -102,6 +102,29 @@ 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
+
+Due to a 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<$[>