summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/feature.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/feature.pm b/lib/feature.pm
index caaa3cd968..e20285d595 100644
--- a/lib/feature.pm
+++ b/lib/feature.pm
@@ -132,18 +132,23 @@ It's possible to load a whole slew of features in one go, using
a I<feature bundle>. The name of a feature bundle is prefixed with
a colon, to distinguish it from an actual feature. At present, the
only feature bundles correspond to Perl releases, e.g. C<use feature
-":5.10"> which is equivalent to C<use feature qw(switch say state)>.
+":5.10"> which is equivalent to
+C<no feature; use feature qw(switch say state)>.
By convention, the feature bundle for any given Perl release includes
the features of previous releases, down to and including 5.10, the
first official release to provide this facility. Since Perl 5.12
only provides one new feature, C<unicode_strings>, and Perl 5.14
-provides none, C<use feature ":5.14"> is equivalent to C<use feature
+provides none, C<use feature ":5.14"> is
+equivalent to C<no feature; use feature
qw(switch say state unicode_strings)>.
Specifying sub-versions such as the C<0> in C<5.14.0> in feature bundles has
no effect: feature bundles are guaranteed to be the same for all sub-versions.
+The implicit C<no feature> was added in Perl 5.16. Previously, saying C<use
+feature ":5.10"> I<after> C<use feature ":5.12"> had no effect.
+
Note that instead of using release-based feature bundles it is usually
better, and shorter, to use implicit loading as described below.