Fix for [perl #37886] strict 'refs' doesn't apply inside defined
[p5sagit/p5-mst-13.2.git] / pod / perl593delta.pod
1 =head1 NAME
2
3 perldelta - what is new for perl v5.9.3
4
5 =head1 DESCRIPTION
6
7 This document describes differences between the 5.9.2 and the 5.9.3
8 development releases. See L<perl590delta>, L<perl591delta> and
9 L<perl592delta> for the differences between 5.8.0 and 5.9.2.
10
11 =head1 Incompatible Changes
12
13 =head2 Parsing of C<-f _>
14
15 C<_> is now forced to be a bareword after a filetest operator. This solves
16 a number of misparsing issues when a global C<_> subroutine is defined.
17
18 =head1 Core Enhancements
19
20 =head1 Modules and Pragmata
21
22 =head1 Utility Changes
23
24 =head1 Documentation
25
26 =head1 Performance Enhancements
27
28 =head1 Installation and Configuration Improvements
29
30 =head1 Selected Bug Fixes
31
32 =head2 C<defined $$x>
33
34 C<use strict "refs"> was ignoring taking a hard reference in an argument
35 to defined(), as in :
36
37     use strict "refs";
38     my $x = "foo";
39     if (defined $$x) {...}
40
41 This now correctly produces the run-time error C<Can't use string as a
42 SCALAR ref while "strict refs" in use>. (However, C<defined @$foo> and
43 C<defined %$foo> are still allowed. Those constructs are discouraged
44 anyway.)
45
46 =head1 New or Changed Diagnostics
47
48 =head1 Changed Internals
49
50 =head1 Known Problems
51
52 =head2 Platform Specific Problems
53
54 =head1 Reporting Bugs
55
56 If you find what you think is a bug, you might check the articles
57 recently posted to the comp.lang.perl.misc newsgroup and the perl
58 bug database at http://bugs.perl.org/ .  There may also be
59 information at http://www.perl.org/ , the Perl Home Page.
60
61 If you believe you have an unreported bug, please run the B<perlbug>
62 program included with your release.  Be sure to trim your bug down
63 to a tiny but sufficient test case.  Your bug report, along with the
64 output of C<perl -V>, will be sent off to perlbug@perl.org to be
65 analysed by the Perl porting team.
66
67 =head1 SEE ALSO
68
69 The F<Changes> file for exhaustive details on what changed.
70
71 The F<INSTALL> file for how to build Perl.
72
73 The F<README> file for general stuff.
74
75 The F<Artistic> and F<Copying> files for copyright information.
76
77 =cut