I believe that the new wording is clearer than the older, which I wrote.
=item *
-XXX Describe change here
+The message,
+"Code point 0x%X is not Unicode, no properties match it; all inverse
+prop erties do" has been changed to "Code point 0x%X is not Unicode, all
+\p{} matches fail; all \P{} matches succeed"
+
=back
=item Code point 0x%X is not Unicode, may not be portable
-=item Code point 0x%X is not Unicode, no properties match it; all inverse properties do
+=item Code point 0x%X is not Unicode, all \p{} matches fail; all \P{} matches succeed
(W utf8, non_unicode) You had a code point above the Unicode maximum of U+10FFFF.
chr(0x10FFFF) =~ /\p{Any}/;
chr(0x110000) =~ /\p{Any}/;
EXPECT
-Code point 0x110000 is not Unicode, no properties match it; all inverse properties do at - line 14.
+Code point 0x110000 is not Unicode, all \p{} matches fail; all \P{} matches succeed at - line 14.
########
use warnings 'utf8';
chr(0x110000) =~ /\p{Any}/;
no warnings 'non_unicode';
chr(0x110000) =~ /\p{Any}/;
EXPECT
-Code point 0x110000 is not Unicode, no properties match it; all inverse properties do at - line 2.
+Code point 0x110000 is not Unicode, all \p{} matches fail; all \P{} matches succeed at - line 2.
########
require "../test.pl";
use warnings 'utf8';
SV** const bitssvp = hv_fetchs(hv, "BITS", FALSE);
if (SvUV(*bitssvp) == 1) {
Perl_warner(aTHX_ packWARN(WARN_NON_UNICODE),
- "Code point 0x%04"UVXf" is not Unicode, no properties match it; all inverse properties do", code_point);
+ "Code point 0x%04"UVXf" is not Unicode, all \\p{} matches fail; all \\P{} matches succeed", code_point);
}
}
}