diff options
author | Karl Williamson <public@khwilliamson.com> | 2014-01-01 20:08:02 -0700 |
---|---|---|
committer | Karl Williamson <public@khwilliamson.com> | 2014-01-01 20:29:37 -0700 |
commit | ea5ced44af8b967bfce3763b11ba4714d4fcd154 (patch) | |
tree | f6dbae186171fc57cfb675765a07ca8b2bc2eb9f /pod | |
parent | 23dfa30831199ff0adfa3c42488e59e3df455e2c (diff) | |
download | perl-ea5ced44af8b967bfce3763b11ba4714d4fcd154.tar.gz |
Change some warnings in utf8n_to_uvchr()
This bottom level function decodes the first character of a UTF-8 string
into a code point. It is discouraged from using it directly. This
commit cleans up some of the warnings it can raise. Now, tests for
malformations are done before any tests for other potential issues. One
of those issues involves code points so large that they have never
appeared in any official standard (the current standard has scaled back
the highest acceptable code point from earlier versions). It is
possible (though not done in CPAN) to warn and/or forbid these code
points, while accepting smaller code points that are still above the
legal Unicode maximum. The warning message for this now includes the
code point if representable on the machine. Previously it always
displayed raw bytes, which is what it still does for non-representable
code points.
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perldelta.pod | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod index e36ae85fcc..86f057025c 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -376,9 +376,23 @@ The public API newATTRSUB was previously a macro to the private function Perl_newATTRSUB. Function Perl_newATTRSUB has been removed. newATTRSUB is now macro to a different internal function. -=item XXX - -XXX +=item Changes in warnings raised by C<utf8n_to_uvchr()> + +This bottom level function decodes the first character of a UTF-8 string +into a code point. It is accessible to C<XS> level code, but it's +discouraged from using it directly. There are higher level functions +that call this that should be used instead, such as +L<perlapi/utf8_to_uvchr_buf>. For completeness though, this documents +some changes to it. Now, tests for malformations are done before any +tests for other potential issues. One of those issues involves code +points so large that they have never appeared in any official standard +(the current standard has scaled back the highest acceptable code point +from earlier versions). It is possible (though not done in CPAN) to +warn and/or forbid these code points, while accepting smaller code +points that are still above the legal Unicode maximum. The warning +message for this now includes the code point if representable on the +machine. Previously it always displayed raw bytes, which is what it +still does for non-representable code points. =back |