Change 19701 by [EMAIL PROTECTED] on 2003/06/06 22:50:37

        Complement to change #19698 :
        add also this information (=> and curly braces doesn't
        quote compound identifiers) to the strict manpage.
        As an experiment in documentation, add a "HISTORY" section
        to the strict manpage.

Affected files ...

... //depot/perl/lib/strict.pm#19 edit

Differences ...

==== //depot/perl/lib/strict.pm#19 (text) ====
Index: perl/lib/strict.pm
--- perl/lib/strict.pm#18~19427~        Mon May  5 09:14:09 2003
+++ perl/lib/strict.pm  Fri Jun  6 15:50:37 2003
@@ -85,7 +85,7 @@
 =item C<strict vars>
 
 This generates a compile-time error if you access a variable that wasn't
-declared via "our" or C<use vars>,
+declared via C<our> or C<use vars>,
 localized via C<my()>, or wasn't fully qualified.  Because this is to avoid
 variable suicide problems and subtle dynamic scoping issues, a merely
 local() variable isn't good enough.  See L<perlfunc/my> and
@@ -110,18 +110,22 @@
 
 This disables the poetry optimization, generating a compile-time error if
 you try to use a bareword identifier that's not a subroutine, unless it
-appears in curly braces or on the left hand side of the "=E<gt>" symbol.
-
+is a simple identifier (no colons) and that it appears in curly braces or
+on the left hand side of the C<< => >> symbol.
 
     use strict 'subs';
     $SIG{PIPE} = Plumber;      # blows up
     $SIG{PIPE} = "Plumber";    # just fine: bareword in curlies always ok
     $SIG{PIPE} = \&Plumber;    # preferred form
 
-
-
 =back
 
 See L<perlmodlib/Pragmatic Modules>.
+
+=head1 HISTORY
+
+C<strict 'subs'>, with perl 5.6.1, erroneously permitted to use an unquoted
+compound identifier (e.g. C<Foo::Bar>) as a hash key (before C<< => >> or
+inside curlies), but without forcing it always to a literal string.
 
 =cut
End of Patch.

Reply via email to