summaryrefslogtreecommitdiff
path: root/pod/perldeprecation.pod
diff options
context:
space:
mode:
authorAbigail <abigail@abigail.be>2017-01-14 04:01:39 +0100
committerAbigail <abigail@abigail.be>2017-01-16 19:18:15 +0100
commit24ca458667a908883f2aad18ea28ad1a5637534e (patch)
treeeb3a94c5950360db91a95298465435082b3067db /pod/perldeprecation.pod
parentc437f7ac8463f610ccc01a2df0ad2287742d3edd (diff)
downloadperl-24ca458667a908883f2aad18ea28ad1a5637534e.tar.gz
Make it fatal to pass malformed UTF-8.
Due to a bug in either Perl, or in some XS-code, it's possible for a string which is supposed to be in UTF-8 format to not be properly encoded. If you try to find out its type (digit, punctuation) perl will now croak. This behaviour was deprecated in Perl 5.18.
Diffstat (limited to 'pod/perldeprecation.pod')
-rw-r--r--pod/perldeprecation.pod14
1 files changed, 14 insertions, 0 deletions
diff --git a/pod/perldeprecation.pod b/pod/perldeprecation.pod
index 6a827fb2e5..3cbeffcccb 100644
--- a/pod/perldeprecation.pod
+++ b/pod/perldeprecation.pod
@@ -305,6 +305,20 @@ was by documentation policy only. But this deprecation has been
lifted in Perl 5.26.
+=head3 Malformed UTF-8 string in "%s"
+
+This message indicates a bug either in the Perl core or in XS
+code. Such code was trying to find out if a character, allegedly
+stored internally encoded as UTF-8, was of a given type, such as
+being punctuation or a digit. But the character was not encoded
+in legal UTF-8. The C<%s> is replaced by a string that can be used
+by knowledgeable people to determine what the type being checked
+against was.
+
+Passing malformed strings was deprecated in Perl 5.18, and
+became fatal in Perl 5.26.
+
+
=head2 Perl 5.24
=head3 Use of C<< *glob{FILEHANDLE} >>