summaryrefslogtreecommitdiff
path: root/pod/perllocale.pod
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2016-03-11 09:54:51 -0700
committerKarl Williamson <khw@cpan.org>2016-03-11 14:49:26 -0700
commit9accf6dffc4571fbb0c58f02e86d2eba66583d48 (patch)
tree1fed17b8f95c8b0a2c67ad57105105c1d4ed3e7a /pod/perllocale.pod
parent14d32fa99f736009ef63a8b17d164cd8f6e967d9 (diff)
downloadperl-9accf6dffc4571fbb0c58f02e86d2eba66583d48.tar.gz
perllocale: Nits, update for 5.24 changes
Diffstat (limited to 'pod/perllocale.pod')
-rw-r--r--pod/perllocale.pod30
1 files changed, 5 insertions, 25 deletions
diff --git a/pod/perllocale.pod b/pod/perllocale.pod
index 701b4228f5..0ab6452a6a 100644
--- a/pod/perllocale.pod
+++ b/pod/perllocale.pod
@@ -32,10 +32,10 @@ L<perlunitut> for an introduction to that) in part to address these
design deficiencies, and nowadays, there is a series of "UTF-8
locales", based on Unicode. These are locales whose character set is
Unicode, encoded in UTF-8. Starting in v5.20, Perl fully supports
-UTF-8 locales, except for sorting and string comparisons. (Use
-L<Unicode::Collate> for these.) Perl continues to support the old
-non UTF-8 locales as well. There are currently no UTF-8 locales for
-EBCDIC platforms.
+UTF-8 locales, except for sorting and string comparisons like C<lt> and
+C<ge>. (Use L<Unicode::Collate> for these.) Perl continues to support
+the old non UTF-8 locales as well. There are currently no UTF-8 locales
+for EBCDIC platforms.
(Unicode is also creating C<CLDR>, the "Common Locale Data Repository",
L<http://cldr.unicode.org/> which includes more types of information than
@@ -205,8 +205,7 @@ Also Perl gives access to various C library functions through the
L<POSIX> module. Some of those functions are always affected by the
current locale. For example, C<POSIX::strftime()> uses C<LC_TIME>;
C<POSIX::strtod()> uses C<LC_NUMERIC>; C<POSIX::strcoll()> and
-C<POSIX::strxfrm()> use C<LC_COLLATE>; and character classification
-functions like C<POSIX::isalnum()> use C<LC_CTYPE>. All such functions
+C<POSIX::strxfrm()> use C<LC_COLLATE>. All such functions
will behave according to the current underlying locale, even if that
locale isn't exposed to Perl space.
@@ -869,16 +868,6 @@ interpolation with C<\F>, C<\l>, C<\L>, C<\u>, or C<\U> in double-quoted
strings and C<s///> substitutions; and case-independent regular expression
pattern matching using the C<i> modifier.
-Finally, C<LC_CTYPE> affects the (deprecated) POSIX character-class test
-functions--C<POSIX::isalpha()>, C<POSIX::islower()>, and so on. For
-example, if you move from the "C" locale to a 7-bit ISO 646 one,
-you may find--possibly to your surprise--that C<"|"> moves from the
-C<POSIX::ispunct()> class to C<POSIX::isalpha()>.
-Unfortunately, this creates big problems for regular expressions. "|" still
-means alternation even though it matches C<\w>. Starting in v5.22, a
-warning will be raised when such a locale is switched into. More
-details are given several paragraphs further down.
-
Starting in v5.20, Perl supports UTF-8 locales for C<LC_CTYPE>, but
otherwise Perl only supports single-byte locales, such as the ISO 8859
series. This means that wide character locales, for example for Asian
@@ -1137,15 +1126,6 @@ C<strftime()>, C<strxfrm()>):
Results are never tainted.
-=item *
-
-B<POSIX character class tests> (C<POSIX::isalnum()>,
-C<POSIX::isalpha()>, C<POSIX::isdigit()>, C<POSIX::isgraph()>,
-C<POSIX::islower()>, C<POSIX::isprint()>, C<POSIX::ispunct()>,
-C<POSIX::isspace()>, C<POSIX::isupper()>, C<POSIX::isxdigit()>):
-
-True/false results are never tainted.
-
=back
Three examples illustrate locale-dependent tainting.