summaryrefslogtreecommitdiff
path: root/lib/feature.pm
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2010-12-01 16:33:54 -0700
committerFather Chrysostomos <sprout@cpan.org>2010-12-01 18:23:45 -0800
commit20db750130061015fab1ffed94ff374c2bd38af3 (patch)
treef5852919978cf5cb1d80e098e92a3eef5972abf1 /lib/feature.pm
parent4ee7c0eabacb52cfaad975a33feeb842bbf347b3 (diff)
downloadperl-20db750130061015fab1ffed94ff374c2bd38af3.tar.gz
Document Unicode doc fix
Diffstat (limited to 'lib/feature.pm')
-rw-r--r--lib/feature.pm21
1 files changed, 16 insertions, 5 deletions
diff --git a/lib/feature.pm b/lib/feature.pm
index f8a9078234..c70010df6e 100644
--- a/lib/feature.pm
+++ b/lib/feature.pm
@@ -105,11 +105,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, but is not fully implemented.
-
-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