summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/feature.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/feature.pm')
-rw-r--r--Master/tlpkg/tlperl/lib/feature.pm25
1 files changed, 19 insertions, 6 deletions
diff --git a/Master/tlpkg/tlperl/lib/feature.pm b/Master/tlpkg/tlperl/lib/feature.pm
index 1517c1ffe81..9d666adb64a 100644
--- a/Master/tlpkg/tlperl/lib/feature.pm
+++ b/Master/tlpkg/tlperl/lib/feature.pm
@@ -1,6 +1,6 @@
package feature;
-our $VERSION = '1.16';
+our $VERSION = '1.20';
# (feature name) => (internal name, used in %^H)
my %feature = (
@@ -21,6 +21,8 @@ my %feature_bundle = (
"5.10" => [qw(switch say state)],
"5.11" => [qw(switch say state unicode_strings)],
"5.12" => [qw(switch say state unicode_strings)],
+ "5.13" => [qw(switch say state unicode_strings)],
+ "5.14" => [qw(switch say state unicode_strings)],
);
# special case
@@ -104,11 +106,22 @@ See L<perlsub/"Persistent Private Variables"> for details.
=head2 the 'unicode_strings' feature
-C<use feature 'unicode_strings'> tells the compiler to treat
-all strings outside of C<use locale> and C<use bytes> as Unicode. It is
-available starting with Perl 5.11.3.
-
-See L<perlunicode/The "Unicode Bug"> for details.
+C<use feature 'unicode_strings'> tells the compiler to use Unicode semantics
+in all string operations executed within its scope (unless they are also
+within the scope of either C<use locale> or C<use bytes>). The same applies
+to all regular expressions compiled within the scope, even if executed outside
+it.
+
+C<no feature 'unicode_strings'> tells the compiler to use the traditional
+Perl semantics wherein the native character set semantics is used unless it is
+clear to Perl that Unicode is desired. This can lead to some surprises
+when the behavior suddenly changes. (See
+L<perlunicode/The "Unicode Bug"> for details.) For this reason, if you are
+potentially using Unicode in your program, the
+C<use feature 'unicode_strings'> subpragma is B<strongly> recommended.
+
+This subpragma is available starting with Perl 5.11.3, but was not fully
+implemented until 5.13.8.
=head1 FEATURE BUNDLES