In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/4dd9551803b40a514a28062780b164fdfbb4ef59?hp=0edb7bc2fb00ba77e194e13a9f0bb9a0a05cbcb2>
- Log ----------------------------------------------------------------- commit 4dd9551803b40a514a28062780b164fdfbb4ef59 Author: David Golden <dagol...@cpan.org> Date: Thu Jul 5 20:01:26 2012 -0400 perlfunc: clarify docs for 'package' [perl #113974] This one word change clarifies that 'package' applies to 'lexically-scoped' variables rather than 'lexical' variables, which people may misunderstand to mean only my/state declarations and thus be confused by the nearby statements about it applying to 'our' as well. No perldelta note was added as the change was trivial. M pod/perlfunc.pod commit 4d457ce0560741d33b57646b4da5e244cee8f8ef Author: David Golden <dagol...@cpan.org> Date: Thu Jul 5 19:58:28 2012 -0400 vars.pm: remove 'obsolete' description [perl #113974] The phrase 'obsolete' in the abstract is not well defined and may be inappropriate. This commit removes it and clarifies that use of vars.pm is discouraged when 'our' could be used instead. No perldelta note was added, as the change is trivial, despite the version number bump. M lib/vars.pm ----------------------------------------------------------------------- Summary of changes: lib/vars.pm | 11 ++++++----- pod/perlfunc.pod | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/vars.pm b/lib/vars.pm index 8ec107c..6ca6bb4 100644 --- a/lib/vars.pm +++ b/lib/vars.pm @@ -2,7 +2,7 @@ package vars; use 5.006; -our $VERSION = '1.02'; +our $VERSION = '1.03'; use warnings::register; use strict qw(vars subs); @@ -48,7 +48,7 @@ __END__ =head1 NAME -vars - Perl pragma to predeclare global variable names (obsolete) +vars - Perl pragma to predeclare global variable names =head1 SYNOPSIS @@ -56,9 +56,10 @@ vars - Perl pragma to predeclare global variable names (obsolete) =head1 DESCRIPTION -NOTE: For variables in the current package, the functionality provided -by this pragma has been superseded by C<our> declarations, available -in Perl v5.6.0 or later. See L<perlfunc/our>. +NOTE: For use with variables in the current package for a single scope, the +functionality provided by this pragma has been superseded by C<our> +declarations, available in Perl v5.6.0 or later, and use of this pragma is +discouraged. See L<perlfunc/our>. This will predeclare all the variables whose names are in the list, allowing you to use them under "use strict", and diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index 25f8a73..2d73099 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -4979,7 +4979,7 @@ when they're one of the special identifiers that qualify into C<main::>, like C<STDOUT>, C<ARGV>, C<ENV>, and the punctuation variables. A package statement affects dynamic variables only, including those -you've used C<local> on, but I<not> lexical variables, which are created +you've used C<local> on, but I<not> lexically-scoped variables, which are created with C<my>, C<state>, or C<our>. Typically it would be the first declaration in a file included by C<require> or C<use>. You can switch into a package in more than one place, since this only determines which default -- Perl5 Master Repository